I code it

Code and Life

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月 开始本系列的撰写,目标主要是实际开发中容易引起误解的问题

Comments