zoukankan      html  css  js  c++  java
  • 选择主要的构建实践方法(转) Tech

    构建有一部分准备工作,就是决定在这么多的可选的实践方法中,你想要强调哪些。某些项目使用结对编程以及测试驱动开发,而其他项目使用单人开发和形式化检查。这两种技术组合都有可能发挥作用,取决于项目的特定环境。

    下面的核对表总结了在构建过程中,应该有意识地使用或者排斥的特定编程实践。这些实践的细节遍布全书。

    Checklist: Major Construction Practices

    核对表:主要的构建实践

    编码

      q 你有没有确定,多少设计工作将要预先进行,多少设计工作在键盘上进行(在编写代码的同时)?

      q 你有没有规定诸如名称、注释、代码格式等编码约定

      q 你有没有规定特定的由软件架构确定的编码实践,比如如何处理错误条件、如何处理安全性事项、对于类接口有哪些约定、可重用的代码遵循哪些标准、在编码时考虑多少性能因素等?

      q 你有没有找到自己在技术浪潮中的位置,并相应调整自己的措施?如果必要,你是否知道如何深入一种语言去编程,而不受限于语言(仅仅在一种语言上编程)?

    团队工作

      q   你有没有定义一套集成工序——即,你有没有定义一套特定的步骤,规定程序员在把代码check in(签入)到主源码(代码库)中之前,必须履行这些步骤?

      q 程序员是结对编程、还是独自编程,或者这二者的某种组合?

    质量保证

      q 程序员在编写代码之前,是否先为之编写测试用例?

      q 程序员会为自己的代码写单元测试吗(无论先写还是后写)?

      q 程序员在check in代码之前,会用调试器单步跟踪整个代码流程吗?

      q 程序员在check in代码之前,是否进行集成测试(integration-test)?

      q 程序员会复审(review)或检查别人的代码吗?

    工具

      q 你是否选用了某种版本控制工具?

      q 你是否选定了一种语言,以及语言的版本或编译器版本?

      q 你是否选择了某个编程框架(framework,如J2EEMicrosoft .NET),或者明确地决定不使用编程框架?

    q             q   你是否决定允许使用非标准的语言特性?

      q 你是否选定并拥有了其他将要用到的工具——编辑器、重构工具、调试器、测试框架(test framework)、语法检查器等?
     

    Key Points

    要点
    ■        
    每种编程语言都有其优点和弱点。要知道你使用的语言的明确优点和弱点。

    ■         在开始编程之前,做好一些约定(convention)。改变代码使之符合这些约定是近乎不可能的。

    ■          “构建的实践方法的种类比任何单个项目能用到的要多。有意识地选择最适合你的项目的实践方法。

    ■         问问你自己,你采用的编程实践是对你所用的编程语言的正确响应,还是受它的控制?请记得深入一种语言去编程,不要仅在一种语言上编程

    ■         你在技术浪潮中的位置决定了哪种方法是有效的——甚至是可能用到的。确定你在技术浪潮中的位置,并相应调整计划和预期目标。

  • 相关阅读:
    Modbus Tcp[转载]
    NModbus使用示例
    “SAP.Middleware.Connector.RfcConfigParameters”的类型初始值设定项引发异常,解决方法
    .net x64 x86 any cpu
    虚拟机vmware 15的安装和使用
    nuget下载包,搜索到的包很少
    做一款简单、高效、好用的文件同步工具
    [WeUiSharp] 基于WPF实现的仿Windows桌面版微信UI界面库
    C语言----结构与联合(基础篇十一)
    C语言----字符串(基础篇十)
  • 原文地址:https://www.cnblogs.com/geraint999/p/1335870.html
Copyright © 2011-2022 走看看