换了个做web的小公司,找回不少工作的激情。不但有心仪的 ruby on rails,还有很火的前端 MVC 框架 emberjs,感觉立马进化到了21世纪。 rails 有10多分钟造一个blog的教程,ember好不逊色,也有10多分钟造一个blog的教程,页面易用程度等甚至更甚一畴。

先写一些体会,好的和相似的地方:

  • 有些理念和rails相似,如命名约定;大量使用各种钩子;也是使用模板再编译成HTML。

  • 绑定很强大。双向绑定,单向绑定,计算属性,观察者模式等,让变量的同步简单。

  • 事件处理很强大。通过捕捉原生事件,转化为ember事件,再逐级处理,强大又简单。

  • 充分使用ember特性,内置组件很强大。举个例子,内置的输入组件, 如果不指定type,是普通的输入框;指定为number,则变成有增减按钮的输入组件;如果是range,则变成一个拖动条。一个type的变动,可以改变视图和行为,省去大量javascript代码。

不好或者不相同的地方:

  • 学习成本有点高,坑也不少。有些约定不直观,不了解你不知道如何下手。如绑定model后要通过content属性访问。。

  • javascript 感觉没有 ruby 优雅,一些实现看上去就没有 rails 简洁。如指定 has_many;

  • javascript 的作用域和上下文不是很明显, 要理解清楚。

  • 不要忘记这里的 M V C 都是在浏览器中运行,都是javascript对象。