zoukankan      html  css  js  c++  java
  • 最佳软件开发实践指导

    • 给人写程序,而不是给计算机。
      1. 一个程序,对于阅读它的人来说,不应该要求读者一次性的在大脑里加载过多的背景/相关知识。
      2. 命名需要一贯、明确、有意义
      3. 代码风格和格式要统一一致
      4. 软件开发中的各种工作都要分割成1小时左右的任务
    • 重复性的工作自动化。
      1. 让计算机去做重复性的工作
      2. 把最近使用过的命令存到一个文件里,以备复用
      3. 使用编译工具来自动化系统流程
    • 用计算机做历史记录
      1. 用软件工具来自动跟踪计算机的工作
    • 逐步改进。
      1. 每次做一小步,及时获得反馈,及时纠正
    • 使用版本控制。
      1. 使用一个版本控制系统
      2. 所有由手工创建的东西都要放到版本控制系统里
    • 不要重复自己(或他人)。
      1. 系统中的每一段数据都要有一个权威的单一的存在
      2. 代码应该模块化复用,而不是考来粘去
      3. 复用代码,而不是重写代码
    • 准备好对付错误的方法
      1. 在程序中增加断言,检查它们的各种操作
      2. 使用现成的单元测试框架
      3. 测试程序时借鉴所有的可用的经验
      4. 把bug做成测试用例
      5. 使用一个有代码指令的调试工具
    • 只在软件能正确的工作后才可优化。
      1. 使用监控工具找到瓶颈
      2. 尽可能的用高级语言写程序
    • 文档里描述的应该是设计思路和目的,而不是技术细节。
      1. 描述接口和原因,而不是实现
      2. 重构代码,而不是注释解释运行原理
      3. 引用其它程序时嵌入其它程序的文档
    • 协作。
      1. 代码合并前进行代码审查
      2. 当帮带新成员或解决特别诡异的问题时使用结对编程
    •  维新旧代码。
  • 相关阅读:
    A20的板子笔记
    RT-Thread信号量的基本操作
    RT-Thread的线程间同步
    RT-Thread多线程导致的临界区问题
    RT-Thread的CPU使用率计算
    RT-Thread 线程的让出
    车牌识别LPR(八)-- 字符识别
    车牌识别LPR(七)-- 字符特征
    车牌识别LPR(六)-- 字符分割
    车牌识别LPR(五)-- 一种车牌定位法
  • 原文地址:https://www.cnblogs.com/andy9468/p/3581428.html
Copyright © 2011-2022 走看看