Web开发图书撷英(之一)

  本专栏今年的第一篇文章现在才姗姗来迟,实在要对广大读者尤其是那些好心发邮件来催促的读者道声抱歉。请相信,我们会在新的一年更加努力地提高文章的质量。

  新年以来,计算机领域无论是书还是人都发生了不少事,我们先挑几件重要的回顾一下。

  图书方面最值得瞩目的应该算是Dr.Dobb's Journal评选的Jolt大奖了。有关Jolt大奖的话题,请看本期18版相关报道。

  人事方面,最大然而也是最令人悲哀的新闻,是数据库事务处理领域的先驱、1998年图灵奖得主JimGray的失踪。他于晴朗的1月28日独自驾船出海,去一个小岛安放母亲的骨灰,从此与世间失去联系。虽经美国海岸警卫队、好友以及硅谷众多工程师利用各种手段寻找,仍然没有发现任何踪迹。JimGray所著《事务处理:概念与技术》,中文版曾经由机械工业出版社出版,可惜翻译似乎难以匹配原著。

  而在此两天前,Ada语言之父Jean Ichbiah因癌症去世,享年67岁。Ada至今仍然是嵌入式系统领域尤其在美国国防项目中的一种主流语言。Jean Ichbiah有一句名言:“我将Ada视为一座教堂,所有的建筑线都和谐地交织着。如果非要我再来设计一次的话,也不会有什么不同。”非常耐人寻味。

  其他值得提及的,是今年的图灵奖第一次颁发给了一位女性――编译专家Frances Allen。Frances Allen此前已经获得了各种奖励女性的IT奖项,这次折桂终于又创造了历史。而Grady Booch荣获了Dr.Dobb's Journal颁发的另一个重要奖项“DDJ程序设计杰出大奖”,该奖此前的得主包括多位语言、系统和技术之父:Guy L.Steele(Scheme)、Don Chamberlin(SQL)、Adele Goldberg(Small Talk)、Anders Hejlsberg(C#)、Guidovan Rossum(Python)、James Gosling(Java)、Larry Wall(Perl)、Alexander Stepanov(STL)、Linus Torvalds(Linux)、Ronald Rivest(RSA算法)等。Grady Booch本人是UML之父,他的著作《UML用户指南》(第二版)已由人民邮电出版社出版。此外,他的经典著作《Object-Oriented Analysis And Design With Applications》的新版,终于要出版了,值得期待!要知道,RobertMartin的名著《敏捷软件开发》(清华大学出版社,.NET版本即将由人民邮电出版社出版)本来不过是这本书的若干章节而已。

  无论从Jolt大奖的评选,还是从2006全年图书推荐(参见本专栏上一篇文章“2006计算机技术图书之荐”)都可以看出,Web开发技术已经成为目前图书市场上最引人注目的热点之一。2006年已经被毫无争议地公认为“Web开发年”。而被称为Web2.0核心技术的Ajax,更是其中的最亮点。

  2007年会如何呢?前不久,Web2.0概念的始作俑者Tim O'Reilly宣布:Web2.0已经进入主流。其理由是除了典型网络公司之外的各种企业也开始因为运用Web2.0的理念而受益。在我看来,Web2.0与其说是又一次网络泡沫,不如看成是以网络为基础的围绕人而开展的各种创新实验的大杂烩。编程2.0、企业2.0乃至社会2.0都在如雨后春笋般不断出现。盒子已经打开,一切皆有可能。

  在这种大背景下,Web热在2007年预计仍会持续。Site Point和Ektron所作的“2006/2007 Web开发现状调查”表明,被人称为过渡技术的Ajax及其基础技术HTML、CSS、Java Script等不仅没有过气,反而仍是程序员心目中最炙手可热的技能。

  因此,我们本期的专栏将开始向大家推荐Web开发方面的好书。仅仅在一两年前,这还是一个会使作者难于下笔的题目。因为那时Web方面的好书极少,而且往往书名中含有Web的就不好卖。而今已经沧海桑田了。

  Web开发有客户端和服务器端之分。而前后端又有各种平台和技术。我们先从通用性的技术谈起。首先当然就是Web标准了。所谓Web标准,简单地说,就是在Web开发和设计中采用W3C所指定的标准,包括用于结构的HTML/XHTML/XML,用于表现的CSS/SVG/Math ML,用于对象模型的DOM和用于脚本编程的ECMA Script(Java Script和Action Script均遵循此标准)。我们下面就依此顺序行文。

Web标准

  网站重构:应用Web标准进行设计  Designing With Web Standards Jeffrey Zeldman  傅捷、王宗义、祝军  电子工业出版社  7-5053-9836-9  38.00

  应该说,Web标准一词引起国内的广泛注意,本书的出版功莫大焉。当时大概因为Web标准并不为国人所熟知,书的原名到了中文版上,只好屈尊成了副书名。时至今日,如果你对Web标准知之甚少,本书依然是一个很好的起点,涵盖比较全面。但因为它的内容更多偏重理念,技术细节较浅较少,所以实用价值已经大打折扣。原版出了第二版,但总体框架未变,只是为Blog、聚合、长尾、Ajax、Expression等新情况调整了少量内容。

  需要指出的是,本书有些部分翻译很差。比如将working with browsers翻译为“使用浏览器”(work with此处是处理之义),而一章标题里居然将workaround(权宜之计)译为工作 区,更显然是没过脑子,跟着金山词霸的典型错误人云亦云了。

  Web标准实战手册  Web Standards Solutions: The Markup and Style Handbook  Dan Cederholm  人民邮电出版社(即出)

  对上一本书实战信息不够失望的读者,可以从本书中得到很大满足。作者是一位著名的Web设计师,经验丰富,曾经为Google等大公司效力。书中在提出一个设计问题之后,总是给出几个解决方案,并讲述各方案的优劣,既适合初学者学习,又适合使用参考。Amazon上45位评论者给出了平均5星评价,可见本书的几乎臻于完美。

  无懈可击的Web设计  Dan Cederholm  Bulletproof Web Design: Improving flexibility and protecting against worst-case scenarios with XHTM Land CSS  常可译  清华大学出版社  7302130302  49.80

  Dan Cederholm的另一力作,秉承上书实战风格,讲述了如何应用Web标准安全、灵活地实现设计目标。虽然属于中级读物,但是读来非常轻松。全彩印刷,翻译质量也非常不错。请注意,本书更加偏重CSS,天下聊天室也可以视为CSS的中级读物。

  Web 标准艺术  Web Standards Creativity: Innovations in Web Design with XHTML, CSS, and DOM Scripting  Andy Budd等  人民邮电出版社(尚未出版)

  本书是10位世界顶尖Web设计师联合完成的,展示了应用Web标准所能达到的化境。全彩印刷,值得期待。

可用性

  Web 可用性设计  Jakob Nielsen  潇湘工作室  人民邮电出版社  ISBN:7-115-08726-1  68.00

  Web2.0的核心是人,因此可用性就成了开发中要考虑的核心因素。Google和其他2.0公司(我非常乐于将创造了iPod iTunes模式的Apple也归于此列)之所以卓尔不群,对可用性的重视和领先实力是重要原因。所以,某种意义上,可用性是Web开发人员的必备技能,其重要性甚至优于具体的技术。遗憾的是,国内这方面的图书非常之少。草草搜索之下,这本多年前的老书居然仍是唯一的一本,好在堪称经典。1999年的书目前在Amazon上还位列10000以内,可见一斑。正如某专业设计网站中所说,如果你是设计出来一个网页,自我感觉良好,但用户或访问者的反映却不怎么样,那么本书将使你茅塞顿开。

  Jakob Nielsen是此道中的世界级权威。他的网站useit.com是Web可用性方面不可不看的资源,内容非常丰富。他的新书《Prioritizing Web Usability》和即出的《Eye-tracking Web Usability》也是本领域的必读。事实上,我就认为《Prioritizing Web Usability》没有进入Jolt大奖评委视野,是一大失误。

  可用性是一个大课题,其中真味深不可测,读者如有兴趣,还可以阅读许多相关著作,如《面向使用的软件设计》、《点石成金》、《Web设计禁忌》(机械工业出版社),Jakob Nielsen的另一本书《专业主页设计技术》(人民邮电出版社),还有AlanCooper的著作等。

HTML/XHTML

  HTML,XHTML与CSS基础教程(第6版)  HTML,XHTML,and CSS Visual Quick Start Guide  Elizabeth Castro  人民邮电出版社(即出)

  是的,本书就是Elizabeth Castro威名远扬的那本HTML。记得我刚刚开始关注Amazon的时候,还很不理解为什么一本讲HTML的书居然会长期盘踞计算机图书榜首。这种情况大约持续了两三年。此后Amazon计算机图书尺度放宽,诸如《长尾理论》、《世界是平的》和各种游戏攻略的书也纳入进来,这本超级畅销书才风光不再。即使如此,本书仍然是Amazon前10名的常客,而且出现过第5版和第6版同时在榜的奇迹。最近两版的销售也达到了惊人的数十万册。而且,多年来有500多位读者给它平均近5星的评价,绝对可以说难能可贵。

  本书充分发挥了经典入门系列Visual Quick Start Guide的特色和版式,用大量图片直观地讲述方法,并立即给出效果。当然,Castro的功力不可低估。可以预见的是,它和它的中文版都会畅销下去。

  深入浅出HTML与CSS、XHTML(英文影印版)  Head First HTML with CSS & XHTML  Elisabeth Freeman,Eric Freeman  东南大学出版社  ISBN:7-5641-0319-1  98.00

  本来以为Castro已经把HTML写完了,可是事实并非如此。本书挟HeadFirst的威力,在Amazon上已经与Castro的HTML不相上下。同是图文书,本书加入了人物、对话甚至一点情节,显得更加青出于蓝而胜于蓝。其成功当然是水到渠成的。

  不过就我本人而言,学HTML,我更喜欢Castro的风格,因为HTML本质上比较简单,也没有什么太难理解的概念。设计模式和OOA & D也许采用Head First风格更好。此外,本书是英文版,而且其中英文非常口语化和当代化,有些涉及当下风俗的句子,并不好理解。而且,价格也是一个明显的劣势。

  读者如果不愿意花98元购买本书,而又等不及Castro HTML中文版的话,可以购买人民邮电出版社出版的《HTML与CSS入门经典(第7版)》(39元),是著名入门系列Teach Yourself in 24 Hours的一种,它采用在实践中学的方法,很适合国人的学习习惯。

  精通HTML  HTML Mastery: Semantics, Standards, and Styling  Paul Haine  人民邮电出版社(即出)

  本书是大畅销书《精通CSS》的姊妹篇,风格和层次都相同。HTML本身是一种简单的技术,掌握并不难,关键在如何用好、精通。核心问题在于:在什么情况下用什么标签最合适。本书正是为此而设,读者在学完前两本书之一后,再由此,可以更上一层楼。市面上(包括国外)这种中高级层次的网页设计书非常少,请大家珍惜。

  下次专栏,我们将继续推荐CSS、Java Script、DOM和XML方面的图书。

                         Jim Gray