2012-11-11
Robbie (Decheng) Fan
这几天在读凌大侠的《面向对象的JavaScript编程》(又名《JavaScript面向对象编程指南》)。
面向对象编程,我在大一就开始学习了。在分支、循环、函数调用、变量、结构体、指针、函数指针以及malloc这些基石之上,从封装到继承到多态,从组合到接口到设计模式,从map到filter到reduce,处处彰显着程序设计的魅力。
另一方面,JavaScript也是我在大一学习的一门编程语言。之前在高三时候在老师的悉心教导之下学习了HTML(这一定要归功于我的母校上海交通大学附属中学),所以,虽然JavaScript在大学里是没有这门课的,我也通过自学把这门语言学了下来。
但是,JavaScript始终在我看来是面向过程的编程语言。少数情况下,我会用它的this语法来创建一些对象,但即便如此,这些对象还是被当作结构体使用。prototype可以用来为对象添加成员函数,但是,一个挥之不去的问题是,如何实现继承,关键是优雅地实现继承。
如果只是接口,那我想通过在结构体中包含多个函数指针(或者,在JavaScript中是函数引用),就可以实现这一功能。这样能实现多态。继承就算不能直接实现,用组合来代替也未尝不可。但是,程序员不是一个人在说话,也不是一个人在编程。他需要和别的程序员交流,因此同样用JavaScript,他的程序中的面向对象思路也要和别的程序员能有一种较为标准的方式进行沟通,所以,最好有一种业界公认的方式,而在我看了这本书的标题之后,感觉它则恰恰很有可能提供了这种方式。这样,它的价值就体现出来了。
初看这本书的名字,怀疑作者会不会直入主题,假定读者已经熟悉JavaScript而直接讲如何用它作面向对象编程。但是,后来发现并非如此。它在引言中讲述了JavaScript的历史,然后从一些JavaScript的基础内容开始讲起。初看似乎对于用过JavaScript的人来说没有太大必要,但是仔细阅读后发现,它的内容是有针对性的,针对JavaScript的一些与众不同的对象特性作了一些深入挖掘,例如,undefined与null之间的区别,NaN是如何产生的,"" + null + undefined会是什么,null == undefined的计算结果是什么,==与===之间的区别是什么,如何动态删除一个变量,等等。
凌大侠的翻译,准确而生动,读起来很舒服。而且凌大侠在一些作者没有特别留心,但对初学者容易误导的地方,根据他多年来积累的学识作了注解,从而让初学者不容易误入歧途。这也是我将来在写文章时要向凌大侠学习的地方。
还没读完,期待从中收获更多。
后记:读完以后,不仅对于Javascript的面向对象有了理解,能灵活运用JavaScript的各种有用特性,而且还学会了基本的HTML 5 Canvas编程。真可谓一举两得。
面向对象的JavaScript编程读后感
《JavaScript面向对象编程指南》热门书评
-
一直被忽视,从未被超越
2有用 1无用 childchen 2013-03-06
如今,招聘Web开发者的职位要求中,具备JavaScript的知识已经是决定性的因素了。过去,我们只是偶尔在网 页中简单地嵌入几行JavaScript代码,而现在已经拥有了各种程序库及扩展性应用构架,以用于各种“胖客户端” 以及AJAX类型的Web应用程序。 本书着重于介绍JavaScript在面向...
-
面向对象的JavaScript编程读后感
2有用 1无用 范德蛙 2013-07-03
2012-11-11Robbie (Decheng) Fan 这几天在读凌大侠的《面向对象的JavaScript编程》(又名《JavaScript面向对象编程指南》)。 面向对象编程,我在大一就开始学习了。在分支、循环、函数调用、变量、结构体、指针、函数指针以及malloc这些基...
-
适合JS入门
1有用 0无用 seasmiles 2013-03-22
比犀牛书(《权威指南》)更适合作为入门书:不像犀牛书那么学术,读起来比较轻松;闭包、原型、继承这本书讲解地很到位,犀牛书里则关注得不多。附录简明扼要,比犀牛书方便许多。作者的另一本书《javascript patterns》跟这本衔接的很好,比这本更深入一些,可以作为进阶读物。另外有些翻译的问题:h...
-
《Object-Oriented JavaScript》的书名问题
0有用 0无用 Optimus Prime 2014-02-17
本书的原名是《Object-Oriented JavaScript》,中文译名为《JavaScript面向对象编程指南》,我觉得不是很贴切,结合书中的内容,可能《面向对象的JavaScript教程/指南》或《JavaScript基础教程/指南》更合适一些,因为本书的重点其实并不是“面向对象”(虽然有...
-
值得一看,细翻
0有用 0无用 <head> 2015-01-01
【2015-01-01】图书馆借来看了3天,挺不错的,特别是对一些细节、概念的描述,起码对于我这个半吊子算是解惑了,特别是函数那块,挺受用的,不过有些地方的代码块最好是用浏览器来练习,书上的执行效果都是firebug上的,而firebug上的又和浏览器执行起来的不一样(感谢书上贴黄色便签笔记的家伙,...
书名: JavaScript面向对象编程指南
作者: 斯托扬
出版社: 人民邮电出版社
原作名: Object-Oriented JavaScript
副标题: 编写可扩展、可重用、高质量的JavaScript应用程序
译者: 凌杰
出版年: 2013-3
页数: 310
定价: 59.00元
ISBN: 9787115309044