2015第25周二

程序开发中常用的工具:

1. 版本控制

一般自己的项目使用git,公司开发规定用svn。反正不管怎么样,版本控制少不了。有个说法,没有版本控制的项目,就等于没有。

版本控制的好处太多了,用过的人都知道。等于历史版本 + 代码备份了。

2.单元测试工具

写程序需要验证,如果快速知道新的代码和过去的写的代码不冲突,这个时候单元测试就能起到作用了。

当然单元测试的功能不仅仅是这个:

  • 验证代码正确性和可靠性
  • 验证新代码不和原有代码冲突
  • 验证自己代码不合团队其他人员代码有冲突
  • 验证合并是否有冲突
  • 验证快速
  • 可以作为API使用实例
  • 跨平台和跨环境测试

这个是现代开发流程的基本模块之一,没有单元测试的项目,不是一个合格完整的项目。
3. 依赖管理/程序包管理器

有了依赖管理,从此不用再手动去每个库的官方网站下载和更新库了。配置一下,运行一下命令行,然后就下载好了,定时在运行一下命令行,所有库又更新到最新版本了。开发体验大大提高。

列举一下主要好处:

  • 自动安装依赖库
  • 自动更新依赖库
  • 自动安装/更新依赖库的依赖
  • 最新库和现有项目有冲突,可以强制降级依赖库
  • 开发依赖和项目依赖分开,发布版本时候可以自动删除所有开发依赖库
  • 版本控制可以只收入依赖管理配置,无需收入依赖库的目录,大大节省版本控制大小
  • 统一团体所有人员依赖库的版本

依赖管理下载速度快,免除开发人员手动的重复劳动。大大提高开发效率

4. 流程管理/构建工具

简单的说从源代码到产品之间,中间还有一个复杂的过程,一般大致如下:

  • 代码清洁
  • 编译
  • 配置
  • 测试

一般对开发人员来说,凡是重复的,必须使用工具自动完成。开发人员是不愿意重复做这些流程,所以需要流程管理,把这些步骤全部用代码编排好,然后执行一个命令行,让电脑反复执行去。没有流程管理的项目不是一个好项目

5.代码质量分析工具

常见的代码质量工具有:

  • 语法检查,保证代码语法正确,可以跨平台,使用最佳实践
  • 代码风格检查,保证团队代码风格一致
  • 代码压缩,减少尺寸
  • 重复代码检查
  • 无用代码检查
  • 模块复杂度分析
  • 模块连接分析

等等,让然还有其他的质量分析,这些都是可以整合到流程管理上的。

6.持续集成

持续集成的主要流程如下

  1. 检查版本控制库是否更新
  2. 如果更新,就下载最新版本的代码
  3. 构建
  4. 测试
  5. 报告

持续集成其实就是流程管理的一个升级版本,或者说一个扩充。它们都是自动流程工具。它们的差别是:

  • 流程管理主要在本机(开发人员自己的开发环境)上执行,而持续集成则是在一个独立设置的环境下执行。
  • 流程管理继续的是本机代码,而持续集成构建的是版本控制中保存的代码
  • 团队中任何一个人push代码到版本控制中,持续集成就开始构建验证新代码的可靠性。
  • 项目流程配置完成后,流程管理需要执行命令行,持续集成应该全自动
  • 流程管理是持续集成的一个模块,属于持续集成的构建模块
  • 持续集成会有更多后续的专业功能,比如说产生报告,错误通知,构建历史,测试历史等开发新型.
原文地址:https://www.cnblogs.com/doit8791/p/4581840.html