(这是发表在《程序员》杂志2001年第12期上的一篇文章。现在,CSDN海外图书专区正在销售Martin Fowler先生的《Refactoring》,我在海外图书专区“名家接触”讨论栏目放进了Martin Fowler先生的一些资料,与各位共飨。CSDN海外图书专区的地址是:www.csdn.net/overseas)
现在最前卫的软件开发方法是什么?相信很多人都会说:XP(极限编程)。提到XP,就不能不提到作为XP基础的重构(refactoring)技术。而提到重构技术,你就应该认识一下Martin Fowler。
现在,Martin Fowler有一个令人肃然起敬的头衔——ThoughtWorks的首席科学家。这是一家系统集成及顾问公司。2000年三月,他放弃了自己长时间从事的成功的职业,改做一名独立顾问,因为他发现在以前的公司里不能发挥自己的才能。
从80年代开始,他就一直从事软件开发的工作。在80年代中期,他对面向对象开发这个新领域发生了兴趣。他擅长在商业信息系统中加入面向对象的思想。一开始,他在两家公司工作过;后来作为独立顾问,他继续进行这项工作。在早期,他使用Smalltalk和C++,现在使用JAVA和Internet。他在面向对象分析和设计、UML、模式、以及快速开发方法领域都是世界顶尖的专家。
他写过四本软件开发方面的书。《分析模式》是对他商业建模的经验的收集回顾,其中有很多重要的商业对象开发模式。《UML Disilled》是对UML符号、语意以及迭代式开发过程的概览,在1998年获得软件开发生产力奖金,现在已经出到了第二版。《Refactoring》描述了如何以可控的、快速的方式改变现有软件的设计。他最近与Kent Beck合写的《Planning Extreme Programming》则描述了如何进行XP设计。这四本书被全世界的软件开发者奉为经典,尤其是后两本,让软件开发者们看到了快速、灵活的软件开发的可能性。他所描述的重构技术和基于重构的XP方法,被称为“软件开发史上的一次风暴”。世界最大的网上书店AMAZON这样评价他的《Refactoring》:
《Refactoring》告诉你,重构怎样让面向对象的代码更简单、更容易维护。所有的程序员都可以使用重构技术来改进他们的代码。这本书非常清楚的展现了一组改进代码的技巧。作者Martin Fowler同时还精通软件模式和UML,这些经验使这本书更加优秀。无论是面向对象的初学者还是有丰富经验的开发者,都可以从这本书得到立竿见影的利益。《Refactoring》,一本将改变你的编程方式的书。
Martin Fowler在许多软件开发的国际性会议上做过演讲。他还是OOPSLA、软件开发委员会、UML世界、XP2001、TOOLS等几个协会的会员。同时,他还是“分布式运算”杂志的专栏作家。现在,他又为“软件开发”杂志做顾问,同时还为“IEEE软件”写一个设计专栏。
谈到自己的职业生涯,Martin Fowler说:“我从1991年就开始从事顾问的工作了。在那以后,越来越多的公司有了自己的顾问。尽管我很喜欢顾问这个职业,但它不是我生活的全部。我希望独立于公司,这样我可以有时间写作——这才是我生活中最重要的部分。所以,1999年春天,我离开了原来的公司,转而为ThoughtWorks公司工作。这是一家让职员和客户都感到满意的公司。他们给人以最大限度的信任。无数的公司无数次的重复这句话,但是他们真正这样做。这对我很重要,因为我相信,成功的软件开发最重要的因素是被激励的有才华的开发者。如果你无法拥有这个世界上所有的技术和方法,你就应该雇用最好的人并留住他们。ThoughtWorks正是因为这一点而成功——而我也正是因为这一点而喜欢这家公司。”
Martin Fowler现在与他的妻子Cindy一起住在Melrose,马萨诸塞州波士顿市城郊的一个镇上。他的妻子Cindy是一个建筑工程师,在他们闲暇的时候,他们喜欢外出旅游。在夏天,他们会骑车出游;冬天他们则去滑雪。他出生在英国的Walsall,在到美国之前曾在伦敦住了十年。尽管美国没有优质的啤酒、板球和英国的村庄,但他仍然非常喜欢美国。