一个问题的解决,往往孕育着另一个问题的诞生,所以,只要写作和工作不断,与之相关的开发也就不会断。还好,除了个别情况下有点压力,我始终是享受其中的。但是,作为一个完整的有点规模的项目,明确的开发原则和开发路线图,还是必要的。其中一个重要的原则,就是保证每个功能要尽量独立,尽量做到可以重用。这不仅方便项目管理,也方便代码维护,所以,一次开发,处处可用,应该体现在每个环节。这种思想,促使我非常喜欢选择那种,稳固的、约束性较强的软件产品或开发平台,比如ruby on rails, Ember等开发框架。一旦学会,可以让我“一劳永逸”的按照一种思维逻辑去思考和解决遇到的问题。但也有聪明的小伙伴,更喜欢自己具有强大的自主控制权,这样的框架可能就不太适合他。
Ember的组件(Component)是非常重要的概念,特别是v2.0.0版本之后,全部取代了视图(View),可以理解为Ember的一切都是组件。一切都是组件的概念,大大简化了问题逻辑,也与浏览器保持了最大兼容性,甚至可以兼容未来的浏览器标准。我个人觉得,Ember团队从此终于走出了ruby on rails的桎梏,开始回归理性,真正面向前端了。毕竟把所有功能集中到一个浏览器页面里(单页面应用),还要硬生生的拉上MVC来,着实让开发者纠结不已。
当开发和测试的时候,可以在插件工程的根目录运行`npm link`,这样就可以通过插件名称在本地使用该插件了。然后,在计划使用的应用程序工程根目录,运行`npm link `,就会将插件链接到应用程序的`node_modules`文件夹下,并添加到`package.json`文件。这样,插件中的任何改变都会在链接该插件的任何工程中直接发生作用。