(本文摘自《Expert One-on-One J2EE Development without EJB中文版》一书译者序,并有所删改。本文首发于《中华读书报》2005年6月1日号。)
几年以后,当人们重新审视这本《Expert One-on-One J2EE Development without EJB》时,他们会记起这本书曾经如何引领J2EE架构与开发的潮流。
作为译者,我可以毫不费力地帮这本书找出一大堆“看点”。譬如说,它的作者Rod Johnson拥有10年编写Java程序的经验——那正是Java诞生至今的时间,他目前是Servlet和JDO 2.0两个JSR专家组的成员,他的前一本书《Expert One-on-One J2EE Design and Development》曾经风靡一时;再譬如说,书中着力介绍的Spring、Hibernate、WebWork等都是时下流行的开源框架,IoC、AOP之类都是时下流行的概念词汇。而最大的看点就赫然摆在这本书的封面上:“without EJB”。我们曾经在无数的书籍和文章中看到,EJB是J2EE的核心技术之一;而Rod Johnson的这本书竟然宣称,绝大多数的J2EE应用根本不需要EJB。这种近乎挑衅的姿态令任何一个负责的J2EE架构师很难不萌生一探究竟的念头——不论你是打算赞同他还是打算驳斥他。
然而在我看来,所有这些都有其价值,但尽皆不是本书最大的价值所在。任何一个从事J2EE应用开发的程序员或多或少都曾有过这样的感觉:这个世界充斥着形形色色的概念和“大词”,如同一个幽深广骛的魔法森林般令人晕头转向,不知该追随这位导师还是该信奉那个门派。这时,Rod Johnson发出振聋发聩的一呼:尔等不必向泥胎偶像鼎礼膜拜,圣灵正在尔等自身——这就是他在书中一直倡导的“循证架构”(evidence-based architecture)。选择一种架构、一种技术的依据是什么?Rod Johnson认为,应该是基于实践的证据、来自历史项目或亲自试验的经验,而不是任何形式的偶像崇拜或者门户之见。书中谈到了企业应用方方面面的问题和解决办法,而这些方案无一不是这种“循证方法”的产物。除了把这些方案交给读者,Rod Johnson通过这本书希望传达的、更为重要的信息正是“循证”的工作方式——那原本就应该是程序员的工作方式。
所以,在这篇译者序里,我可以负责任地告诉你:那看上去有些骇人听闻的“without EJB”字样仅仅是Rod Johnson用来吸引你的一个噱头而已——EJB诞生至今已经有7年之久,如果如今的J2EE应用仍旧不能摆脱这样一种“古老”的技术,岂不为天下笑?这里的关键是:EJB正是Java世界里最大的“泥胎偶像”,围绕着它的门派之争历来激烈无比。透过“without EJB”这个标题,Rod Johnson真正想说的是“without buzzword”——扔掉一切可笑的门户偏见,不再仅仅因为看到“EJB”这么一个貌似神秘的缩写词而奉若圭臬或是弃若敝屐,完全根据技术本身和实打实的经验来判断是否使用、如何使用一种技术,这才是Rod Johnson希望传递给读者的态度。
于是你可以相信,我在开头处说的那句话并非夸大其词:你手上的这本《Expert One-on-One J2EE Development without EJB》将会引领一种影响深远的潮流,但这潮流不是Spring和Hibernate,也不是IoC和AOP,甚至不是“轻量级架构”,而是一切实事求是的“循证架构”的工作方式。惟有掌握这种工作方式,你才能够真正自信满满地挺起胸膛说:“我选择的架构是适合应用需求的架构。”毕竟,衡量架构师价值的标准不应该是他知道多少概念,而是他能否做出合乎需求的架构。
“可是,”有人说了,“我一直都是按照别人/网上/书上的建议来做架构的。要亲自考察各种各样的技术,还要根据项目情况比较它们的优劣,我可没这份时间。”
那么,他也应该没时间去做架构。
- 作者: 透明 2005年06月7日, 星期二 15:43
你可以使用这个链接引用该篇日志 http://publishblog.blogdriver.com/blog/tb.b?diaryID=742131
等了这么久了,到底什么时候在能看到啊????
不要在糟蹋好书了
我最关心的是,中译版什么时候发行?什么时候读者才能拿到手中?
难得看到这小子写出这种比较客观的文章来,这倒是应该赞同一下的
[b]怎样在BLOG里面添加实时交谈帮助的图标?[/b]
[b]在个人Blog添加实时交谈图标的具体指南[/b]
第一步:
到 [url=http://www.eclickchat.com/register.html]http://www.eclickchat.com/register.html[/url] 上免费注册,获得自己的平台帐号。
第二步:
1。点击“发表日志”,进入到blog的“我的控制面板”:
[img]http://marketing.eclickchat.com/picforblog/blog11.jpg[/img]
2。点击“编辑模板”,进入编辑模板的页面:
[img]http://marketing.eclickchat.com/picforblog/blog22.jpg[/img]
3。点击该页面上的“HTML源码编辑器”,切换的html编辑页面:
[img]http://marketing.eclickchat.com/picforblog/blog33.jpg[/img]
4。登陆到你的互通易平台,点击自动生成代码,并复制代码:
[img]http://marketing.eclickchat.com/picforblog/blog44.jpg[/img]
5。将拷贝的代码插入到合适的位置(一般插在一个〈TD〉 〈/TD〉中间就好了):
[img]http://marketing.eclickchat.com/picforblog/blog55.jpg[/img]
6。然后回到你的blog,就可以看看效果了哦:嗬嗬
[img]http://marketing.eclickchat.com/picforblog/blog66.jpg[/img]
不知道有没有人用了这款软件, 有什么看法... :)
正是如此亚。所以有没有IoC也无妨,有没有AOP也无妨,关键是合用、好用、没有重复代码。能做到这个,善莫大焉。
呵呵,现在IoC和AOP正是buzzword啊。