图1按列将要点归纳为信息(information)和观点(opinion),以及规范准则(prescriptive guidelines)。这些信息和观点元素被分为8大主题:设计(Design)、编码(Writing code)、构建(Building)、工具(Tooling)、运营(Operations)、协同(Working with others),职业发展(Professional advancement),以及软件过程(software process)。
规范准则一侧在此基础上增加了调试(Debugging)、性能(Performance)和避免错误(Avoiding errors),许多列提供了额外的准则,通常放在了“最佳实践”部分。图的中心位置是刊登的标题和所在的期号和栏页。
图1.Tools of the Trade专栏要点。信息和观点元素被分为8大主题:设计(Design)、编码(Writing code)、构建(Building)、工具(Tooling)、运营(Operations)、协同(Working with others),职业发展(Professional advancement),以及软件过程(software process)。
图2使用相应的元素(比如“持续集成”)关联了特定的象征性工具。在网上一齐搜索这些工具名称,你将会得到这类工具的比较、更多的同类工具名单,以及更详细的相关材料。图中的列表并没有列出此类中所有的工具,而且许多本该上榜的工具也没有出现。虽然如此,如果在一个类别中没有你所熟知的工具,那么读读相应的列也会让你有所收益的。
(点击放大图像)
图2. 主题和工具。图中没有列举全部的工具,某些本该上榜的工具也没有出现。
回首2005年,这个系列中的第一期专栏曾痛惜我们这个行业在工具开发上的支出。十年即60期之后,看起来第一期专栏所言有些过于悲观了。我们有幸拥有许多强劲的工具,可以提高我们工作的质量和生产力。真正的挑战是如何使用它们。
鸣谢
专栏编辑衷心感谢如下各位,他们在过去10余年中贡献了非正式的评论和有见地的反馈意见:Yiorgos Adamopoulos、Achilleas Anagnostopoulos、Dimitris Andreadis、Phillip G. Armour、Giovanni Asproni、Steve Berczuk、Grady Booch、Christian Brueffer、Wilko Bulte、Bryan Cantrill、Damianos Chatziantoniou、Konstanti- nos Christidis、Al Davis、Theodore Dounas、Julian Elischer、Ruslan Ermilov、Martin Fowler、Marios Fragkoulis、Jiannis Georgiadis、Robert Glass、Dimitris Glezos、Georgios Gousios、Junio C. Hamano、Poul-Henning Kamp、Panagiotis Kanavos、Vassilios Karakoidas、Isidor Kouvelas、George Kyriazis、Panagiotis Louridas、Christos KK Loverdos、Dimitris Mitropoulos、Marcel Moolenaar、Mark Murray、George V. Neville-Neil、Ioannis Nikolaou、Panos Papadopoulos、Colin Percival、Wes Peters、Nancy Pouloudi、Vassilis Prevelakis、Linda Rising、Greg Schueler、Hellen C. Sharp、DagErling Smørgrav、Henry Spencer、Kostas Stroggylos、Alexandra Vassiliou、Robert N.M. Watson、Greg Wilson、Rebecca Wirfs-Brock、Alexios Zavras、和George M. Zouganelis. 此外,没有IEEE计算机学会工作人员的献身精神和支持也就没有本专栏,因此特别鸣谢Brian Brannon、*e Miner、Crystal Shif、Jennifer Stout、Dale Strok、Dennis Taylor和Jennie Zhu-Mai。最后,编辑竭诚感谢Warren Harrison为本专栏撰稿,以及Hakan Erdogmus和Forrest Schull在他们做主编的任期内对本栏的支持。