关闭

[置顶] 《Head First C#》将停止翻译和更新

 近日闻悉国内某出版社即将出版《Head First C#》的中文版,为避免版权纠纷,本“山寨”系列将停止翻译和更新。从去年10月开始利用课余时间翻译这本书,到现在翻译完了将近13章,总计12万余字。 剩余的正文内容已不足百页,无法做到有始有终,颇为遗憾。...
阅读(10374) 评论(77)

职业女性确实处于劣势吗?记一次不甚严谨的考据 -- 向胡适之先生的遥远致敬

欢迎关注我的新博客地址:http://cuipengfei.me/ 源起 前两天,在一个武汉本地程序员聚集的技术社区微信群里某位群友发了两张图片: 这是某个IT公司的招聘宣传,为程序员提供的鼓励师。 (由于图片出现在愚人节期间,不确定该公司是真的有这样的人员配备,还是恶作剧的,此处暂且存疑) 马上群里就有一位X君跳出来说这种事情就是混蛋啊,...
阅读(1833) 评论(1)

15篇干货博客 38本书 4门公开课 减掉20斤体重 我的2014总结

15篇干货博客 38本书 4门公开课 减掉20斤体重 我的2014总结...
阅读(1761) 评论(2)

Spark RDD的fold和aggregate为什么是两个API?为什么不是一个foldLeft?

欢迎关注我的新博客地址:http://cuipengfei.me/blog/2014/10/31/spark-fold-aggregate-why-not-foldleft/ 大家都知道Scala标准库的List有一个用来做聚合操作的foldLeft方法。 比如我定义一个公司类: 1 case class Company(name:String, ...
阅读(5068) 评论(2)

Scala中Stream的应用场景及其实现原理

欢迎访问我的独立博客:http://cuipengfei.me/blog/2014/10/23/scala-stream-application-scenario-and-how-its-implemented/ 假设一个场景 需要在50个随机数中找到前两个可以被3整除的数字。 听起来很简单,我们可以这样来写: 1 2 3 4 5 6 7 8...
阅读(4732) 评论(3)

Desugar Scala(17) -- Option和for,以及脑子里发生的事情

欢迎关注我的新博客地址:http://cuipengfei.me/blog/2014/08/30/options-for/   Scala里的for关键字是个很有趣的东西。可以用来把多层嵌套for循环写成一层。比如这样: 1 for(i1 to 10;j1 to 10;k1 to 10) yield(s"$i $j $k") ...
阅读(2053) 评论(0)

Scala + Play + Sbt + Protractor = One Build

欢迎关注我的新博客地址:http://cuipengfei.me/   我所在的项目的技术栈选用的是Play framework做后端API,前端用Angular JS。 因为用了Scala和Play,构建工具很自然用的就是sbt。 而由于前端用了Angular,所以functional test就选用了和Angular结合较好的protractor。 这一切看起来似...
阅读(3772) 评论(0)

Desugar Scala(16) -- Lower Bound

欢迎关注我的新博客地址:http://cuipengfei.me/ Lower bound,不知道这个词的确切中文翻译是怎样的。我们直接看例子吧。 1 2 3 class Pair[T](val first: T, val second: T) { def replaceFirst[R >: T](newFirst: R): Pair[R] ...
阅读(1861) 评论(0)

Desugar Scala(15) -- unapply和unapplySeq方法

欢迎关注我的新博客地址:http://cuipengfei.me/   实在想不到什么动词可以当做脱衣服来讲了,所以从现在开始这系列博文就叫做Desugar Scala了。除非哪天才思泉涌,又想到了新词:) 开始正文。 名字叫做unapply和unapplySeq的方法在Scala里也是有特殊含义的。 我们前面说过case class在做pattern match时很...
阅读(4672) 评论(4)

抹掉Scala的糖衣(14) -- Update Method

欢迎关注我的新博客地址:http://cuipengfei.me/   在Scala中,名字叫做update的方法是有特殊作用的。 比如: 1 2 3 val scores = new scala.collection.mutable.HashMap[String, Int] scores("Bob") = 100 val bobsScore =...
阅读(1602) 评论(0)

除去Scala的糖衣(13) -- Default Parameter Value

欢迎关注我的新博客地址:http://cuipengfei.me/   好久没有写博客了,上一次更新竟然是一月份。 说工作忙都是借口,咋有空看美剧呢。 这半年荒废掉博客说到底就是懒,惯性的懒惰。写博客这事儿,一丢掉就很久捡不起来。 闲话到此为止,下面进入正题。 Default parameter value,默认参数值。 这个很容易理解,给参数一个默认值,如果调...
阅读(1927) 评论(0)

去掉Scala的糖衣(4) -- Type Aliase

我的新博客地址:http://cuipengfei.me/blog/2013/12/23/desugar-scala-4/   Scala中有一个type关键字,用来给类型或者是操作起别名,用起来很是方便。 比如这样: 1 type People = List[Person] 这样就是给List[Person](方括号...
阅读(5420) 评论(0)

Scala中的语言特性是如何实现的(3) -- Trait

我的新博客地址:http://cuipengfei.me/blog/2013/10/13/scala-trait/ 我在Coursera上跟了一门叫做Functional Programming Principles in Scala的课程,是由Scala的作者Martin Odersky讲授的。其中第三周的作业中使用到了Scala的trait这个语言特性。 我以前熟知的语...
阅读(3641) 评论(1)

为什么必须是final的呢?

一个谜团 如果你用过类似guava这种“伪函数式编程”风格的library的话,那下面这种风格的代码对你来说应该不陌生: 1 2 3 4 5 6 7 8 9 public void tryUsingGuava() { final int expectedLength = 4; Iterables.filter(Lists.newArray...
阅读(7900) 评论(3)

Scala中的语言特性是如何实现的(2)

上篇博文的末尾留了三个问题,现在自问自答一下。 在Scala中被声明为val的v4为什么在反编译的Java中不是final的呢? 在方法中声明局部变量时,如果用Scala的val关键字(或者是Java中的final)来修饰变量,则代表着此变量在赋过初始值之后不可以再被重新赋值。这个val或者final只是给编译器用的,编译器如果发现你给此变量重新赋值会抛出错误。 而bytecod...
阅读(2369) 评论(0)

Scala中的语言特性是如何实现的(1)

Scala可以编译为Java bytecode和CIL,从而在JVM和CLI之上运行。Scala有很多在Java和C#的世界中显得陌生的语言特性,本文将分析这些语言特性是如何实现的。 object Scala中可以像这样创建object: 1 2 3 4 5 object HowIsObjectImplementedInScala { def...
阅读(2990) 评论(0)

如何一步一步推导出Y Combinator

本文讲什么? 本文用Scheme(Racket)代码为例,一步一步的推出Y Combinator的实现。 本文不讲什么? Y Combinator是什么,干什么用的,它为什么能够work,它的数学含义以及实际应用场景,这些话题由于篇幅所限(咳咳,楼主的无知)不在本文论述范围之内。 如果有兴趣,请参考维基: http://en.wikipedia.org/wiki/Fixed...
阅读(1994) 评论(3)

用豆瓣读书Chrome插件,简单购买电子书

原文地址:http://cuipengfei.me/blog/2013/04/01/doubanebookprice/ 为什么要做这款插件? 在豆瓣上查看一本书的时候,页面的右侧会显示哪些网站可以购买该书以及各自的价格。 比如这本《乡关何处》,页面右侧显示了亚马逊,京东,当当等网站的购买链接。 但是豆瓣只会提供纸质书的购买链接,不提供电子书的。除非该书豆瓣自己有售。...
阅读(4946) 评论(0)

自己动手重新实现LINQ to Objects: 12 - DefaultIfEmpty

本文翻译自Jon Skeet的系列博文“Edulinq”。 本篇原文地址: http://msmvps.com/blogs/jon_skeet/archive/2010/12/29/reimplementing-linq-to-objects-part-12-defaultifempty.aspx      上次实现First/Last的时候写了大量的代码,相比起...
阅读(2218) 评论(0)

自己动手重新实现LINQ to Objects: 11 - First,Last,Single以及它们带有OrDefault的重载

本文翻译自Jon Skeet的系列博文“Edulinq”。 本篇原文地址: http://msmvps.com/blogs/jon_skeet/archive/2010/12/29/reimplementing-linq-to-objects-part-11-first-single-last-and-the-ordefault-versions.aspx    今天我实现...
阅读(1968) 评论(0)

自己动手重新实现LINQ to Objects: 10 - Any和All

本文翻译自Jon Skeet的系列博文“Edulinq”。 本篇原文地址: http://msmvps.com/blogs/jon_skeet/archive/2010/12/28/reimplementing-linq-to-objects-part-10-any-and-all.aspx    今天我们介绍两个操作符:Any和All。   Any和All做什...
阅读(2434) 评论(2)
728条 共37页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:679291次
    • 积分:16705
    • 等级:
    • 排名:第675名
    • 原创:127篇
    • 转载:1篇
    • 译文:600篇
    • 评论:486条
    share