学习软件专业的行话

来源:互联网 发布:java tar打包代码 编辑:程序博客网 时间:2024/04/28 03:19

作者:马克·理查兹(MarkRichards)

每个专业都有行话,同行之间进行话很方便交流。律师经常使用人身保护权(habeas corpus)、预先审查(voir dire)之类的术语;木匠口头离不开平接接头(butt joint)、乳胶(flux);软件架构师则经常提到ROA、两步视图、层超类型(layer supertype)。但你清楚这些行话的意义吗?

为了提高效率,软件行业有一套可行的办法,供不同平台的架构师相互交流,其中包括使用架构模式和设计模式。架构师想要提高工作水平,必须掌握基本的架构模式和设计模式,学会识别不同的模式,并借助它们和同行及开发人员进行交流。

架构模式和设计模式可以分成四大类:企业架构模式、应用架构模式、集成模式、设计模式。每类模式对应着整体架构的不同层次和范围,例如企业架构模式解决高层的架构问题,而设计模式则研究架构中每个组件的构造方法。

企业架构模式指出了全局架构下的子系统及局部应用的设计方法。常用的模式包括大家熟悉的J2EE设计模式(包括会话外观(Session Facade)、传输对象等),以及马丁·福勒(MartinFowler)在著作《Patterns of Enterprise Application Architecture》(Addison-WesleyProfessional出版)(译注1)中提到的应用架构模式。

集成模式研究怎样在系统的组件、应用和子系统之间传递信息,共享功能,它是设计和交流重要手段。集成模式包括文件共享、远程方法调用,以及不同消息传递模式。各种集成模式的详细介绍请参考:http://www.enterpriseinte-grationpatterns.com/eaipatterns.html。

“四人帮”(译注2)(Gang of Four)在《Design Patterns:Elements of Reusable Object-Oriented Software》(Addison-WesleyProfessional出版)(译注3)中描述的基本设计模式,是每位架构师必须常握的知识。虽然这些模式讨论是较底层的设计内容,离架构师的工作较远,但是它们是架构师和开发人员相互交流的标准行话,可以提高沟通效率。

除了以上四类模式外,架构师还应该了解并提防各种反模式(anti-pattern)。反模式指的是影响软件开发结果的常见错误,这个词是安德鲁·凯尼格(AndrewKoening)发明的。常见的反模式包括需求分析麻痹症(Analysis Paralysis)、委员会设计(Design By Committee)、磨菇管理(Mushroom Management)、死亡征途(Death March)等。学习反模式可以避免许多容易疏忽的问题。各种常见的反模式请参考:http://en.wikipedia.org/wiki/Anti-patterns。

用清晰、简洁、高效的方法与同行进行沟通,是软件架构师应该具备的能力。前人总结了许多现在的模式,架构师只有学习和理解它们,才能同时提高工作水平和沟通能力。

译注1:这本书的中文版《企业应用架构模式》由机械工业出版社出版。

译注2:“四人帮”是软件行业对《Design Patterns:Elements of Reusable Object-Oriented                             Software》四位作者的习惯称呼。

译注3:这本书的中文版《设计模式:可复用面向对象软件的基础》由机械工业出版社出版。

0 0
原创粉丝点击