随着HTML规范和浏览器的发展,基于Web的应用程序开发已经是各种类型软件开发的首先方案。企业软件已是B/S结构的天下,面向互联网用户的应用毫无疑问是采用Web形式的,甚至连iOS,Android软件也可以采用phoneGap这类基于Web的框架来开发。那么作为Web开发中唯一的语言JavaScript就显得越来越重要。
作为一名从从业开始就致力于B/S结构企业软件开发的我来说,对于JavaScript的应用是一个由浅入深的过程。在AJAX这一概念未出现之前,Web中的JavaScript仅仅应用在一些简单的表单校验上,大量的前端逻辑都是通过将参数提交给服务器渲染的,这时候开发的应用都是“刷页面”的。这一切从Jesse James Gaiiett提出了AJAX后开始了改变,大家意识到原来可以通过JavaScript完成数据交换,还能通过JavaScript根据返回的数据操作DOM结构。此时Web开发的方式开始了革命性的变化,JavaScript从配角身份变成了绝对的主角。大量的JS框架,UI组件层出不穷,基于Web的应用的交互体验越做越好。
此时我所开发的企业软件也面临这种改变,需要改进前端Web的结构,降低和服务器之间的数据交互,完善前端UI组件,提升用户体验。此时我的JavaScript知识显然已不满足这些需要,但时间不等人,只能边做边学习,偏偏JavaScript又很灵活,利用开源的JS框架,抱着完成功能的态度,写了不少JS代码。但随着项目的发展,积累的JavaScript越来越多,维护成本越来越大,这时候才开始反思,如何编写JavaScript才是最好的方式。
鉴于JavaScript在现今的Web开发中的重要角色,以及需要对遗留JavaScript代码的重构,我迫切需要对JavaScript进行更深入的了解。此时我发现了《JavaScript语言精粹》这本书。试读了其中的章节,发现作者写这本书的初衷和我的需求非常的匹配。作者首先肯定了JavaScript是一门优秀的语言,很多地方具有非常不错的设计,但由于历史的原因,其中也有不少糟糕的地方。作者将JavaScript中精华的部分提炼了出来,让大家认识其优秀的设计,并且在以后的开发中采用JavaScript优秀的地方,摒弃其糟粕。
作者在第一章中概括了JavaScript精华的地方,如函数式,弱类型,动态对象,对象字面量表示法,基于原型的继承。让读者对JavaScript一窥其美丽的身姿。在第十章中作者尝试将JavaScript进行提炼,将作者认为其最美丽的部分留下来,并且阐述了这么做的意义是为了使精华创造大部分的价值。
《JavaScript语言精粹》是一本对JavaScript进行全面梳理的书,作者在书中对JavaScript的精华做了详细的讲述,对于已经编写大量JavaScript但又没能彻底了解JavaScript的开发者来说这显得十分重要。这本书可以帮助开发者理清思路,洞悉JavaScript本质,促使开发者思考之前编写过的JavaScript代码。