上周日(5.12号),和王福强一同去上海参加了上海scala爱好者的聚会。11点坐动车过去,到达时正好中午,本想通过大众点评找到附近的馆子吃点东西,过去一看居然很多人外边排队,没耐心等待,先走到聚点昌平路的”联合创业办公社”附近再说。然后在路上福强看到诺铁在前边背着包也往那个地方走去,他的面相比较好认,我们过去打了个招呼,这哥们儿较早之前也在阿里(支付宝)待过,后来离开现在上海thoughtworks。现在带着一些项目在使用lift框架开发,这也是他这次分享的议题;问他上海的scala开发是否常聚会,他说这是第一次。
我和福强在附近的小饭馆随便吃了点,然后过去时时间正好。第一场是老猪分享的《scala与设计模式》,老猪是个比较细且讲话节奏有点慢的人,内容准备的很充实,虽然大部分模式都是比较熟悉的,但也有些细节从他的分享中了解到,比如说适配器模式时提到java8中也增加了virtual extension method用于在接口中提供默认方法。还有虚拟代理与lazy,以及type classes
(类型类),我之前有知道scala里通过隐式转换来实现这个功能,但未曾把它当作一种模式,通过他这么讲也算是更明确了;简单的说这个模式有两个特点:1)定义类型约束;2)通过隐式参数自动实现类型转换(比如很多的)。同时老猪还提到相关的Magnet
模式,在spray.io
中有用到。
在中间休息时,我代同事聚石问候了一下老猪,他们公司翻译了akka2.0文档,还有一些公益项目,对scala社区很有益。
第二场分享是诺铁的《Lift实战》,诺铁的ppt很简单,主要是通过一个基本功能的demo来说明了一些lift中的使用方法和注意事项,因为对lift框架不了解,细节的东西基本都没有记住,只通过他的ppt大致了解了view first的设计风格与mvc框架的区别,还有一些orm框架的情况。
最后一场分享是汪院长的《Play2的苦与乐》,汪院长是个年轻的创业者,他们正在开发的 看处方 正是用play2实现的,他讲了一些play2的开发情况,一些爽的地方与不爽的地方。同样也因为不太了解这个框架不记得细节了。他们目前大概写了9000多行scala代码,按诺铁的经验有点多了。
这次聚点“联合创业办公社”就是汪院长团队所在的地方,属于创业孵化器这样的环境,同他们一起在那个地方办公的还有另外一些创业公司。
最后因为要赶火车,在结束后没有跟大家交流,这次老高还有其他一些scala-cn邮件列表里的人都去了,约20人的规模。很遗憾没怎么跟大家聊。在回去的火车上跟福强交流,他说想看看《scala for the impatient》这本书,里面讲到了continuations,他想看看能否用来改造目前天猫的一套基于kilim coroutine的框架,我正好带了这边书的中文版,借给他了。他更偏向阅读英文版的,老高翻译这本书比较仓促,有个别细节不到位。scala里delimited continuations理解起来并不复杂,但除了在jetty中看到过有continuations的概念,其他应用和框架中还没有看到过,所以对它的场景不够了解。福强说coroutine的实现也可以基于continuations,我不是太了解这块。
照片是老猪在分享
Pingback引用通告: 华东地区scala爱好者聚会(2014上海) | MultiProcess