提高开发效率之工具篇

        开发效率主要取决于开发速度和开发质量,咱们都但愿速度越快越好,质量越高越好,也就是开发效率高,但明显速度和质量是鱼和熊掌不可兼得,因此提高开发效率就要从这两个角度去平衡了。架构

        影响开发效率的因素太多了,咱们就先来总结一下如何利用工具来达到目的。工具

工具分类

        开发工做中会用到各类工具,咱们不妨将他们分分类。单元测试

建模工具

        用于支持业务建模、业务分析、架构设计、详细设计等活动的工具,好比Enterprise Architect、starUML等。这些工具每每会提供全程建模的支持,提供UML等图形化表示,甚至有的还能提供代码与模型的正反向工程,有利于复杂项目的模型管理和维护,有利于开发质量的得高。学习

开发环境

        这个不用多说了,是软件工程师用得最多的工具,好比Visual Studio、Eclipse等。开发环境为代码编辑、浏览、编译、重构提供了必要的支持,有利于开发速度的提升。开发工具

开发辅助工具

        除了主要的开发环境之外,还有一些工具或以插件形式、或以独立应用的形式提供给开发人员,用以辅助开发,好比Findbugs、Visual Assist X等,是对开发环境有效的加强,对开发速度和质量都有提高。测试

测试工具

        测试是开发过程当中必不可少的环节,测试工具的引入能提升测试的速度和质量,好比一些单元测试工具、自动化测试工具、压力测试工具等。.net

代码管理与持续集成工具

        代码管理最大的好处就是维护历史版本,从而支持多人协同开发。有了代码管理,才可有效的部署持续集成工具,从而支持每日构建、快速迭代等开发模式。会带来质量的提高。插件

类库

        团队和企业的长期积累和沉淀,会造成一些可复用的类库,这些类库也能够看做是工具的一种,对提升开发速度和质量都有好处。架构设计

        固然,还有太多的工具没有列进来,最重要的是咱们能够看到,几乎在软件开发的全生命周期中都有工具的支持。仍是那句老话,“工欲善其事,必先利其器”,若是经过有效的引入工具的话,多是最易于看到开发效率提高的途径。设计

 

工具的成本

        虽然有这么多工具支持,可是工具也是须要消耗成本的,主要的成本包括:

  • 评测成本:工具是否适用,须要进行尝试、对比、评测,这些工做是要消耗时间和精力的,就像是机会成本同样,隐性的存在。
  • 购买成本:不少工具是须要支付费用方能使用的,这是最直接的金钱支出。
  • 学习成本:想要用好工具,须要花时间去学习如何使用,这些时间投入也是不可见的成本。
  • 维护成本:工具的升级、配置调整这些在将来可能须要作的工做也是工具带来的成本增加。

        可见,使用工具是有代价的,这就提出了如何选择工具的问题。

 

工具选择的原则

        有了这么多工具,但不能眉毛胡子一把抓,反而冲击了主要的开发工做。我认为在选择工具时能够遵循这样几个原则:

        选择必要的工具。好比作移动应用开发的,每每在建模上没有必要像企业应用那样复杂,所以建模工具就不是必要的,能够采用手绘UML图存档或者借助简单的绘图工具便可。

        选择合适的工具。一样是作移动客户端应用,为了画个类图,动用了IBM Rational Rose,就变成了大炮打蚊子了。这个问题广泛存在,一提到要先个工具,就奔着最贵的、最复杂的工具去了,结果支出了高额的成本,却未必能在开发效率的提高上产生收益。

        选择符合团队环境的工具。工具是要人来使用的,所以务必要切合使用者的习惯、能力、文化氛围,同时也要符合团队采用的开发方法、开发过程。对采用结构化开发方法的团队引入面向对象建模工具会让你们无所适从,对敏捷开发的团队不使用持续集成也会为开发效果打折扣。

 

        综合以上,选择正确的开发工具能很快带来开发效率的提高,是值得去重视、去尝试的一件事情。


——欢迎转载,请注明出处 http://blog.csdn.net/caowenbin ——