Java行业的圣经 -- 四本最重要的个人藏书,他们的书名都不含Java

本文推荐了四本有助于提升Java开发技能的书籍,包括《Design patterns》、《Refactoring: Improving the Design of Existing Code》、《AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis》和《Extreme Programming Explained: Embrace Change》。这些书籍不仅涵盖了设计模式的应用,还涉及了重构技巧、项目管理和极限编程等关键主题。

作者   Thomas   E.   Davis     
    
摘要     
Thomas   Davis   推荐了四本书,它们可以让你在java开发中受益非浅。这些书扩展了Java的基本语法和语义,使你能更全面地理解面向对象的程序设计。     
    

正文   
   
《Design   patterns》     
   
《Refactoring:   Improving   the   Design   of   Existing   Code》     
   
《AntiPatterns:   Refactoring   Software,   Architectures,   and   Projects   in   Crisis》     
   
《Extreme   Programming   Explained:   Embrace   Change》     
   
在这篇文章中,我提出了新手和专家在使用Java进行开发的区别,而且也给出了一个参考书目,帮助新手超越这个界限。这不是一个书目回顾,而是你通往职业发展中下一步的车票。     
   
Java是一个程序设计语言。它也是一个工具,如果错误地使用,它就是无用的,某些时候甚至是危险的。仅仅知道它的语法和语义不是一个程序员要做的。一个程序员也必须密切地关注和理解环境模式,也就是说在Java环境中,什么是面向对象设计。知道对象是什么、接口是什么、多少对象实现了一个接口等等无聊的东西是远远不够的。一个程序员必须知道这种使那些规则和关系融合成一个灵活的、可重用的、可扩展的系统的神秘方法。我在这里讨论的这些书将给你那些经验,提高你作为一名Java程序员的职业素质。令人奇怪的是,没有一本书在他们的书名中包括Java一词。     
   
注:本文所讨论的所有书目的URL地址可以在本文后面的资源中找到。     
   
《Design   patterns》     
   
这本书的作者是Erich   Gamma,   Richard   Helm,   Ralph   Johnson,   John   Vlissides,   和Grady   Boocha——the   Gang   of   Four是他们著名的呢称,由   Addison-Wesley出版社在1995年出版。模式一词描述了一类重复的问题而且提供了一个可重用的解决方案。设计模式至少可以通过对象共享来帮助你避免内存限制的缺陷以简化你的工作,设计模式也可以创造一个类似于接口的、可以灵活地同第三方库进行综合的集成方式来简化你的工作。《Design   patterns》仔细描述了这两种设计模式,给出了评价,而且提供了代码例子和易于理解的相关图表。虽然代码例子都是C++的,但是语法十分类似于Java,因此大多数程序员将毫无问题地掌握这些概念。有一本本书的仿制品,它采用Java作为例子,书名是《Java   Design   Patterns:   A   Tutorial》,作者是James   William   Cooper,由Addison-Wesley出版社在   2000年出版;但是没有the   Gang   of   Four在《Design   patterns》中所阐述的透彻和深度。     
   
一旦你熟悉了《Design   Patterns》中所列出的设计模式,将认识到他们中的一些是如何发展的。在Addison-Wesley出版社1998年出版的《Design   Patterns   Applied(Software   Patterns   Series)》中,John   Vlissides   叙述了在某些最流行模式上的争论和讨论,而且介绍了一些新的在《Design   Patterns》中删去的模式。     
   
《Refactoring:   Improving   the   Design   of   Existing   Code》     
   
会犯错误就是人。如果这是真理的话,我看到了数以百计比我更象人的程序。项目出问题了。错误出现了。进度延期了,质量牺牲了。这些都是对我们所从事的职业的警告。但是当事情逐渐变得最糟时,你需要在什么地方改变方向呢?我的非常多的同事采用"throw-away-and-start-over"的方法:从零开始,希望自己已经可以避免错误了。那是最极端的解决办法,它一定激怒了你的老板。但是不要绝望,因为有替代的办法。     
   
《Refactoring:   Improving   the   Design   of   Existing   Code》是Addison-Wesley出版社面向对象技术系列丛书中的一本,作者是Martin   Fowler,   Kent   Beck,   John   Brant,   William   Opdyke,   和Don   Roberts   ,出版日期是1999年,这本书给开发者提供了重新开始的不同选择。Refactoring就是通过重构一个程序的内部结构但是不改变它的外部行为来提高它的性能的处理过程。Refactoring能让一个方法执行得更快或者提供更精确的执行结果,但是不改变这个方法的名字。这些改变对调用该方法的程序而言是不可见的,因此没有代码需要修改。     
   
这本书教读者如何通过一个特殊的意识来识别问题代码,而且将每一个放到一个程序目录中以便修改。例如,一个意识或许是一个不适当的亲密关系——描述了两个或更多个类的关系太紧密了以致对一个类的改变要求另一个类也要改变。这本书所建议的众多的解决方法的一个是将这个存在问题的方法移到一个更适当的类中。     
   
《AntiPatterns:   Refactoring   Software,   Architectures,   and   Projects   in   Crisis》     
   
软件开发不是易于出错和疏忽的唯一地方。管理同样易于出现缺陷,这是由于混乱的开发过程和不现实的开发进度。大多数因特网公司在他们的开发部门有一个令人担忧的人员流动速度。随着程序员的加入和退出,职责的层次结构就想代码结构一样变得令人费解。《AntiPatterns:   Refactoring   Software,   Architectures,   and   Projects   in   Crisis》的作者是William   J.   Brown,   Raphael   C.   Malveau,   William   H.   Brown,   Hays   W.   McCormick   III,   和   Thomas   J.   Mowbray   ,由John   Wiley   &   Sons出版社   在1998年出版,这本书将把上述加入到你整个的事业目标中。它对计划、错误管理、基本方法中的常见错误进行分类,使你跳出深渊。     
   
你的方案是否正遭受委员会的挑剔?就象有非常多的厨师在调一锅汤一样。或者你的代码基础是违反模式的卖方代码,导致你依赖一个不可靠的第三方产品。《AntiPatterns》将这些问题分为12大类和大约24个小类,指导你避免这些问题或者跳离你偶然进去的陷阱。     
   
《Extreme   Programming   Explained:   Embrace   Change》     
   
XP是一种新鲜的、有些争议的新的开发过程,Kent   Beck是它的先行者。XP力争按时提供好的软件,没有官僚作风,不重视传统的开发周期。在因特网启动的发烧期,每个人的目光都聚焦在赶上市场。在现实世界中,项目超过了预算或者过了最后期限,就会被取消,这最终导致某些公司彻底失败。项目开始的文档和图表很少能够反映最终的产品。因此,开发团队需要适应项目需求的频繁变化并作出反映。那正是XP要发光的地方。     
   
“沟通、简洁、反馈、勇气”是XP爱好者的秘诀。沟通有很多种途径,例如在成双成对的程序设计中完成。也就是一个人编码,伙伴们进行对等的实时检查。     
   
简洁意味着当你需要它的时候就仅仅建造那些你需要的。不浪费时间执行那些解决将来或许会发生的问题的奢侈方案。     
   
反馈意味着“早发布,常发布”,这些为那些开放源代码的狂热者所喜爱。通过在开发的早期将产品呈现在用户的面前,你能尽量避免出现在开发周期后期的剧烈变动要求。     
   
最后,勇气促使XP弟子抓住机会并从结果中吸取经验。只有在极少见的场合,你才必须求助于"throw-away-and-start-over"技术。《Extreme   Programming   Explained:   Embrace   Change》中描述了那些秘诀和它们是如何帮助你的。这本书的作者是Kent   Beck,由Addison-Wesley出版社在1999年出版。     
   
结论     
   
最近我有机会从零开始一个公司项目。我的开发队伍靠这些书的教导生活和呼吸,成果是显著的。我们按照进度、没有延期建造了一个特别健壮和可扩展的系统。这些书改善了我的职业生涯,我相信他们也将改善你的职业生涯。     
   
关于作者     
   
Thomas   E.   Davis是一个具有SUN认证资质的Java软件工程师,也是他的第二个成功的Internet计划的首席技术官。目前Thomas居住在阳关充足的南佛罗里达,遗憾的是大部分时间他都呆在室内的一台计算机前面

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值