JavaScript核心概念及实践
目前,《JavaScript核心概念及实践》已经由人民邮电出版社正式出版,并在各个网上书店出售:
如果你在阅读的过程中发现有任何的错误或者不清楚的地方,可以在此页后边进行回复。
2012年12月
-2013年3月
,经张凯峰推荐,人民邮电的陈冀康编辑认为此书有出版的意义,并和我讨论此书的出版事宜。根据陈编辑的意见,我对书本的结构做了相对较大的调整,并进一步校对文字,给图例编号等。在陈编辑的帮助下,这个版本变的更加的专业。
2012年10月
-2012年12月
,在和同事们去游泳馆的路上,胡凯建议我把这个系列整理成册,并推荐给了有专业编辑背景(前InfoQ编辑)的同事张凯峰。在得到张凯峰的专业的反馈之后,我将原稿的结构做了一些调整,删去了一些“过时”的内容,去掉了JavaScript并无关系的graphviz一章,加入了测试框架的使用,客户端MVC框架的使用等内容,又对该稿的文字做了一些润色。
这个“正式版”,相比之前的V0.0.9b版(即可公开下载的版本),有了一些变化:删除了三个章节(两章删除,一章移为附录),增加了三个新的章节,另外对一些章节做了补充(如服务器端的JavaScript中,加入的mongodb的介绍,以及node.js的测试等)。
另外在整理中,发现有一些章节中的概念是错误的,而有些概念的解释比较模糊,这些问题在编辑通读的时候指出并进行了更新。有部分示例代码也做了更加详细的描述,尽量是的文字更容易被理解,很多貌似“精炼”的文字,也尽量用平实且短句的组合来替换。
这个页面记录JavaScript核心概念及实践(原JavaScript内核系列)的一些日志,这个系列最早在我的iteye博客(javaeye)上以连载的形式发表。
下载地址:下载JavaScript核心概念及实践V0.9.9Beta版本
2013年1月27日
新添加了MongoDB一节,讨论了MongoDB中shell(基于JavaScript)的基本操作和map/reduce的一个示例
2013年1月26日
为第一章添加了一个新的小节(面向对象)并加入了两个小的示例,以便更好的展现javascript的FP特性
更新了第三章的对象字面量部分的示例。为第三章加入新的小节(JSON)
2013年1月25日
将整本书根据编辑的意见,完整的过了一遍,后半部分相对过的较为快(因为后半部分的内容大多经过比较
长时间的实践和总结,而且示例较多,比较客观),而前半部分是在整理之处完成,因此有一些概念的理解
是错误了,做了改动。另,为了为枯燥的整稿带来一些振奋人心的消息,版本号升级为了V1.1.0alpha版。
2013年1月24日
根据人民邮电出版社的陈编辑(Jacky Chen)的意见,重新整理的书本的结构(如去掉了基础部分和高级部分的划分,语句的通俗化,示例的精简/加强等等)。
2013年1月2日
初步完成第十二章《backbone》的实例及原理部分,并与master合并。目前版本为1.0.2。书名更新为
《JavaScript核心概念及实践》。
2012年12月23日
初步完成第十三章《测试》的初稿并与master合并,目前的版本为1.0.1。
2012年12月20日
根据同事的反馈,将附录graphviz一章删除,将附录3的EXTJS一章删除。将jquery一章移动到附录,并
完成backbone.js及javascript测试相关的一些草稿。将书本的后半部分内容做了调整,加入了新的
两章的outline。
2012年2月3日
添加couchdb,替换原计划的ejscript一节,添加couchdb中的实例及map/reduce部分原理等。
此时,这个系列差不多已经接近尾声了,之前的计划已经基本完成,章节也不会做重大的
变动。此为v0.9.9alpha版本。
由于多次有人质疑这个系列的名称,因此决定将名称修改为《JavaScript核心及实践》。并
修改页脚部分的abruzzi为真实姓名。
2012年2月2日
添加第12章jQuery的一个实例:jqtodo。添加node.js的一个实例:字符串转换器。
2012年1月28日
修正了第8章中关于引用概念的一个bug。完成了第12章jQuery的剩余部分(事件处理
及实用函数)。完成了第15章node.js中的实例及node的介绍部分,重构了内容简介部分
整理了部分章节的字句。由于此时已经接近完成,此版本为v0.9alpha.当整体重构完成
之后,将升级为v0.9beta并公开在社区。
检查并修正了整体的排版及字体等,修改了关于类型的bug。整理了自本系列的所有已发布 的文档的用户回复,并整理为一个列表。
2012年1月27日
移动第13章EXTJS至附录三中,完成第12章jQuery内容(选择器,CSS操作等)。
2012年1月26日
为第14章添加SpiderMonkey引擎的使用,及SpiderMonkey引擎
的实现的部分内容。添加附录三:使用graphviz绘图。至此,JavaScript-Core
剩余第12章(jquery),第13章(extjs),第16章(node.js).其他章节均基本完成。
此为v0.4alpha。
2011年5月4日
完成第14章V8引擎中使用C++类的示例;第14章中V8的基本概念完善;完成第11章,客户端
JavaScript中的Ajax示例。
2011年5月3日
通过实验,完成第14章-JavaScript引擎的V8引擎示例部分,重新更改第14章的目录结构。
2011年5月2日
完善第11章-客户端JavaScript中的chrome调试章节,mvc插图。完善第12章中jquery使用函数
的示例部分。截至今日为止,前半部分基本定型,后半部分仍余第12章-jquery,第13章-extjs
第14章引擎剖析,第16章服务端的JavaScript的大部分内容。由于时间原因,一直没有开放bata
版本,因此此版本为V0.3alpha版,仅为内部版本,仍可能有较大的改动。
2011年2月19日
完成V0.2alpha版的第10章“核心概念深入”及第15章“Java应用中的JavaScript”两章的初稿
由于Java应用中的JS之前写过大量的文章和例子,因此进展比较顺利,而第10章编撰期间,参考
了众多资料,且graphviz的使用正在研习,因此花费了较长的时间。但是个人仍然不是很满意,
感觉有些概念仍然没有讨论清晰。
2011年2月18日
将2010年5月整理的后半部分未完成稿与2011年2月16日的规划做了合并,目前共计16章,前半部分
有9章,后半部分7章。用于结构调整较大,并补充了较多的内容,因此称为V0.2的alpha版。
2011年2月16日
对文字进行了部分校正,为第三章加入了原型链示意图和一个示例,对后续的章节做了规划并
加入第10-第14章的提纲,加入了附录2。是为V0.1alpha版。
2011年1月25日
整理之前的文档,去除了部分未完成的内容,加入了版权信息及前言致谢,后记部分的内容。
这个版本为V0整理稿。
2010年5月
依次在javaeye上发表此系列,并根据网友们的回馈完善文档,从当时开始关注js在后台及其他
应用程序中的使用,并初步打算将核心概念讨论清楚之后,加入服务器端js的实践。
2010年1月
开始本系列的撰写,目标主要是实际开发中容易引起误解的问题