第三十章 编程工具

设计工具

目前的设计工具主要就是那些能创建设计图表的图形化工具。

源代码工具

编辑

  • 集成开发环境(IDE);
    • 在编辑器中进行编译和错误检测;
    • 与源代码控制工具、build工具、测试工具、除错工具集成;
    • 显示程序的扼要视图或大纲视图;
    • 跳转到类的定义、子程序定义、变量定义处;
    • 跳转到使用某个类、子程序、变量的全部位置;
    • 针对特定语言的编排格式;
    • 针对正在编辑的语言的交互式帮助;
    • 花括号匹配;
    • 常用语言的结构模板;
    • 智能缩进;
    • 自动化的代码转换或重构;
    • 可以用熟悉的编程语言进行宏编程;
    • 列出查找的字符串,使常用的字符串无需重新键入;
    • 在查找和替换时可用正则表达式;
    • 在一组文件中进行查找和替换;
    • 同时编辑多个文件;
    • 双列式的diff对比;
    • 多级编辑动作撤销;
  • 针对多个文件的字符串查找和替换;
  • diff工具;
  • merge工具;
  • 源代码美化器;
  • 生成接口文档的工具;
  • 模板;
  • 交叉引用工具;
  • 类的继承体系生成器。

分析代码质量

  • 吹毛求疵的语法/语义检查器;
  • 尺度报告器。

重构源代码

  • 重构器;
  • 结构改组工具;
  • 代码翻译器。

版本控制

  • 源代码控制;
  • 依赖关系控制,类似UNIX下提供的make工具;
  • 项目文档的版本管理;
  • 将项目的工件关联到一起,这样当需求发生变更时,你能找出收影响的代码和test cases。

可执行码工具

产生目标码

  • 编译器与链接器;
  • Build 工具;
  • 程序库;
    • 容器类;
    • 信用卡交易服务;
    • 跨平台开发工具;
    • 数据压缩工具;
    • 数据结构与算法;
    • 数据库操作工具与数据文件操控工具;
    • 图解/图示/图表工具;
    • 图像工具;
    • 许可证管理器;
    • 数学运算;
    • 网络与互联网通信工具;
    • 报表生成器与报表查询生成器;
    • 安全与加密工具;
    • 电子表格和数据网格工具;
    • 文本与拼写工具;
    • 语音、电话与传真工具;
  • 代码生成向导;
  • 安装;
  • 预处理器;

调试

下列工具有助于程序调试:

  • 编译器的警告信息;
  • 测试用的脚手架;
  • Diff工具;
  • 执行剖测器;
  • 追踪监视器;
  • 交互式调试器——软件版和硬件版。

测试

下列功能特性和工具有助于你进行有效的测试:

  • 自动测试框架,如JUnit、NUnit、CppUnit等;
  • 自动化的测试生成器;
  • 测试用例的记录和回放工具;
  • 覆盖率监视器;
  • 符号调试器;
  • 系统扰动器;
  • Diff工具;
  • 脚手架;
  • 缺陷注入工具;
  • 缺陷跟踪软件。

代码调整

  • 执行剖测器;
  • 汇编代码清单和反汇编。

核对表:编程工具

要点

  • 程序员有时会在长达数年的时间里忽视某些强大的工具,之后才发现并使用之;
  • 好的工具能让你的日子过得安逸许多;
  • 下面这些工具已经可用了:编辑、分析代码质量、重构、版本控制、除错、测试、代码调整;
  • 你能打造许多自己用的专用工具;
  • 好的工具能减少软件开发中最单调乏味的工作的量,但它不能消除对“编程”的需要,虽然它会持续地重塑“编程”的含义。
posted @ 2019-09-28 17:43  Liam-Ji  阅读(189)  评论(0编辑  收藏  举报