Ember.js也是最近相当热门的一款JavaScript框架。

官方定位:

A JavaScript framework for creating ambitious web applications.

官方网站:http://emberjs.com/

github:https://github.com/emberjs

中文社区:http://emberjs.cn/,其实就是官网的翻译

Tutorial:http://emberjs.com/guides/getting-started/

Ember.js使用的template engine是handlebars:http://handlebarsjs.com/

Conclusion

先来个结论好了,虽然我不想吐槽,不过Ember.js我是肯定不会用的。要问为什么,连tutorial都看不懂的框架要我怎么用。

问题很多:

  • 框架内的内部约定太多,不利于新手学习:
    • tutorial看不懂的最大原因就是这个,介绍步骤没有问题,文本描述也很到位,但是在没有先介绍框架的工作流程以及内部约定的情况下,各种默认规则导致看的时候总是有“为什么要这么写?”的疑问
    • controller、route之类的关键类里使用了大量的默认属性,在新手接触的时候非常不友好,tutorial看的时候一愣一愣的,根本不知道哪些是自己的哪些是默认的
  • 大量使用字符串进行绑定和解析,使用起来非常困难,而且还容易写错
  • 文档多,但是思路不清晰,内容一堆,看完我还是没理清楚Ember里的程序工作流程
  • 官方推荐的资源引入方法都是使用HTML的script标签,貌似没有简便的方法和RequireJs这种模块化工具集成,不利于制作大型项目和代码管理
  • 我很不喜欢Polymer和handlebars这种将HTML模板包含在script标签内的做法

虽然从MVC框架来说,结构很清晰,功能很强大,但我还是不推荐使用。

Core Components