Backbone Conf 2012
有幸去美国波士顿参加了2012年的 Backbone.js Conference,见到了coffeescript、underscore.js 还有 backbone.js 的作者 Jeremy Ashkenas。会议内容围绕前端MVWTF和社区进行了很多有趣的讨论,有很多有价值的观点。我希望在这里面与大家分享我从里面学到的东西。
这系列博客其实是我整理的会议笔记的汇总,是我对每个话题中比较有印象或者比较重要的内容的摘抄,这些观点几乎都不是我的,我仅作为一个传声者。我是希望把所有的Credit交给演讲者自己,我最多只是一个翻译者,碰巧幸运的在现场。Backbone.js Conference和O’Reilly的Fluent Conference 碰巧同时进行,#BackboneConf 更加草根,但是也更有观点。
Angular.js – Testability in Mind by Vojta Jina
Links
Notes
Vojta Jina 来自Google,所以这个框架也很有google风格。
Angular.js 是一个很有特点的框架,很不同。
提供双向数据绑定。
最有特点的是“依赖注入”,你没有听错,这个在Java社区几乎尽人皆知的东西。Angular.js使用的是编译期依赖注入来实现它的“黑魔法”。
依赖注入其实是一个不错的东西,因为双向数据绑定的时候代码需要做很多wiring的工作,进行编译期增强可以让源代码看起来可读、简单。它进行了默认的基于名字的wiring,也可以用其它方式wiring(待求证)。
目前双向数据绑定的MVWTF框架都在模板上下功夫,和ember.js类似,你可以在模板里面绑定model的属性和事件,模板本身声明了model和View的动态依赖。而且和ember.js类似,它都使用了dirty check的方法解决事件风暴带来的UI过于频繁的更新,作者说实现的思路几乎都是定时的dirty check然后更新stale的部分。
很有趣的是作者的Demo非常酷,完全的TDD,非常流畅。前面三个Talk让现场的很多人惊叹Live coding是目前好的会议的一个重要组成部分。