《JavaScript语言精粹》译者序及样章试读
作者:小马 来源:Taobao.com UED Team 发布时间:2009-04-03 11:38:00
去年5月至10月间,我和雅虎口碑网的前端主管:鄢学鹍(秦歌),一起翻译了这本《JavaScript语言精粹》。原书作者是JavaScript大牛:Douglas Crockford。老道这本书不厚,原书不到160页,我们却用了接近5个月的时间去翻译。一来我们翻译功底较浅,二来此书确是虽“薄”然大,即精亦深。秦歌与我二人翻译的过程也就成了自我深化学习的过程。近日欣闻此书即将上市,我们诚恳的将此书推荐给所有的前端工程师以及关注前端的Web开发者们。
———————————————-译者序的分割线———————————————-
Douglas Crockford 是一位大师。
翻译大师的作品,一边是感到万分的荣幸,一边也是兢兢小心。因为吉尔伯特海特(美国教育家)曾经说过:写了一本很糟糕的书只是犯错而已,而把一本好书翻译得很糟糕则是犯罪。但这样的大师经典之作,即便是冒着犯罪的风险,也值得翻译出来并推荐给大家。一直到现在,依然有很多资深的开发人员对 JavaScript存有偏见。秦歌和我,分别负责雅虎口碑网和淘宝网的前端组,对此的感受更为深刻。但即便是他们也不得不承认,JavaScript正日益成为互联网中最普及和最重要的开发语言。
Crockford 曾写过很著名的一篇文章——《JavaScript:世界上最被误解的语言》。建议看到这里的所有读者都找来这篇文章(http://javascript.crockford.com/javascript.html)并仔细阅读。早期的商业原因和规范缺欠给JavaScript 这门语言蒙上了阴影;Copy+Paste式滥用也让JavaScript显得廉价不堪;更糟糕的是,还有大量不负责任的书籍把蹩脚的用例奉为正统,印成了铅字,让新手们从一开始就走上了歧途。不可否认,JavaScript自身确实存在着不少瑕疵,但瑕不掩瑜。Crockford 为此凭借他广博的学识和丰富的经验提炼出JavaScript的精华子集。开发人员只要在这个子集的范畴中编程,就既能使用JavaScript强大的表现力和卓越的动态性,又能免去许多无端的调试烦恼和安全隐忧。
这本书很薄,但承载的内容却非常丰厚和深入。翻译的过程中我也常感汗颜,原来自诩对JavaScript颇为了解的我深刻感受到自己知识面的浅薄和不完整,于是翻译的过程也成为了自己检讨和学习的过程,收获颇丰。Crockford 在前言中告诫大家,这本书是需要反复阅读的。我们同样推荐所有的读者这样做。
我想每一个热爱技术的开发人员都希望自己有一天成为某个领域的大师。我通过翻译大师的著作也得到了一个启示。“取其精华,去其糟粕”本就是前人告诉我们的学习态度与方法,对日新月异的IT领域来说更是该如此。当我们面对这些层出不穷的新技术新理念时,不要匆忙地照单全收或全盘否定。找到最适合工作或自己最感兴趣的技术,并用科学的方法潜下心来坚持学习和研究,我们同样也可以成为大师!
“大师牛人,宁有种乎?”
最后,我要感谢博文视点的赵士威老师在译书的过程中给我们的莫大帮助。还有周筠老师,她爽朗的笑声让人倍感亲切。我还要感谢我的同事,来自美国NCSU的晓荷,是博采中外的她给我建议,把JavaScript 的“好、中、坏”特性翻译为更贴切的“精华、鸡肋、糟粕”。当然,家中的领导(负责接管稿费)是一定要特别感谢的。相信我,如果你身后没有一位善解人意的女人,还是不要去做翻译的好。
赵泽欣(小马) 鄢学鹍(秦歌)
2008年11月 于 杭州城西
———————————————-译者序的分割线———————————————-


猜你喜欢
- 中间件Django中的中间件是一个轻量级、底层的插件系统,可以介入Django的请求和响应处理过程,修改Django的输入或输出。中间件的设
- 介绍本文将展示如何利用Python爬虫来实现诗歌接龙。该项目的思路如下:利用爬虫爬取诗歌,制作诗歌语料库;将诗歌分句,形成字典:键(key)
- 本文实例讲述了Python简单实现Base64编码和解码的方法。分享给大家供大家参考,具体如下:Base64编码是一种“防君子不防小人”的编
- 一. vue-amap,一个基于 Vue 2.x 和高德地图的地图组件 https://elemefe.github.io/vue-amap
- 用Python发送126邮件,供大家参考,具体内容如下今天想做个自动化邮件提醒的功能,最近刚好在学习python,都说python那么强大,
- 一、问题描述在启动MYSQL时出现问题:“ERROR 2003 (HY000): Can't connect to MySQL se
- 查看当前数据库支持的引擎show engines+--------------------+---------+--------------
- 目标在本章中,将了解:如何生成OpenCV-Python bindings如何将新的OpenCV模块扩展到PythonOpenCV-Pyth
- HP QR Code是一个PHP二维码生成类库,利用它可以轻松生成二维码,官网提供了下载和多个演示demo,查看地址:http://phpq
- python class(object)的含义在python2中有区别,在Python3中已经没有区别:object为默认类,表示继承关系c
- 作为让高中生心脏骤停的四个字,对于高考之后的人来说可谓刻骨铭心,所以定义不再赘述,直接撸图,其标准方程分别为在Python中,绘制动图需要用
- 本章我们来实现一下折线图,有了画柱状图的经验,我们可以快速的分析出柱状图和折线图的区别主要是x轴比例尺和绘制数据图形,其余的画布,坐标轴等,
- 进入root 权限下apt-get install mysql-serverapt-get install mysql-client创建数据
- 总结调试网站获取cookies时请查看,r.header和r.request.header这两个属性,因为cookie说不准出现在他们俩谁里
- 学习目的: 掌握最基本的Label、TextBox、Button控件用法 掌握用StringBuider类连接字符串 理解服务器的环境变量
- 概述前向传播 (Forward propagation) 是将上一层输出作为下一层的输入, 并计算下一层的输出, 一直到运算到输出层为止.会
- 使用了这么就pip命令,但是一直是简单使用,很多命令都是用了查,查了用,今天把常用的命令汇总一下,方便使用。命令:pip由上图可以看到 pi
- 一个客户提供一个股价的信息,要求放在页面上,显示一些数据,需要从远程获取xml,然后解析写在网页上,开始不会觉得很难,其实蛮简单的,先用ja
- 1.首先通过控制面板应用卸载当前环境下的Node.js相关安装,并清理磁盘残存的文件夹等文件2.下载nvm来管理node版本 &
- 前言订单并发这个问题我想大家都是有一定认识的,这里我说一下我的一些浅见,我会尽可能的让大家了解如何解决这类问题。在解释如何解决订单并发问题之