
作为最流行的MVVM(Model-View-View-Model)框架之一,相信大部分前端对AngularJS都不会陌生,我也一样久仰大名。不得不说,AngularJS所带来的改变是巨大的,被称为未来浏览器的模式一点也不为过,尤其是思维上的转变。
作为一个常年挥舞着jQuery去指挥无穷无尽的DOM的前端,初次接触AngularJS是有困难的,许多先贤警告我们不要在AngularJS中使用jQuery,不是没有道理的。即使AngularJS中带有jQlite对象,也仅仅是为了弥补一些地方AngularJS的局限性。AngularJS操作UI的方式与jQuery有着极大区别,在深入学习之后,我渐渐的发现了这点。过去使用jQuery的前端就像一个操纵提线木偶的傀儡师,而手握AngularJS的前端简直是不折不扣的魔法师。前端开发者不再需要根据数据去改变DOM,然后填入数据,我们所要做的仅仅是决定数据的表现形式后等待数据的注入。文档流中的元素就像活过来了一样,根据数据表现出了对应的样子。
这一切的核心除了匪夷所思的DOM监听机制,还有就是AngularJS的模板(template)以及其中多不胜数的内置指令(directive)了。因此,我将在本文中谈谈AngularJS的模板以及其思维模式。
这本书读了许久才读了一遍,不同于之前读到的一些方法性的书籍,该书有更多的细节,但其中又存在许多理论性的东西,要消化它们可不是很容易。读完一遍后又快速回顾了一遍,马上又会发现很多新的东西并有一些新的理解,甚至让我觉得写这篇文章有点太急了,不过我还是应该尝试收集一些有营养的东西,至少记录现在的想法,相信对之后的第二遍阅读会更有益处。

《编程珠玑》这本书读完感觉很诡异,在读的过程中感觉很有收获,但是却说不清从书中获得了什么,好像什么也没读懂。说实话,很难对这本书归类,有时它告诉你的是实际操作的性能问题,有时又在讲算法或者数据结构。不过确切的说,它告诉我们的是一种无招胜有招的境界。无论是实际操作、算法还是数据结构都是在为项目服务的,我们的目的只有一个,那就是完成项目。