zoukankan      html  css  js  c++  java
  • 云时代架构阅读笔记十——如何开发出一个好的软件

    在进行软件开发时,不仅仅要选择合适的开发方法,还要注意以下几点关键问题,只有找对了关键,掌握住关键内容,才能开发出一款实用的软件。

    1.给人写程序,而不是给计算机
    ①一个程序,对于阅读它的人来说,不应该要求读者一次性的在大脑里加载过多的背景/相关知识

    ②命名需要一贯、明确、有意义

    ③代码风格和格式要统一一致

    ④软件开发中的各种工作都要分割成1小时左右的任务

    2.重复性的工作自动化
    ①让计算机去做重复性的工作

    ②把最近使用过的命令存到一个文件里,以备复用

    ③使用编译工具来自动化系统流程

    3.用计算机做历史记录
    用软件工具来自动跟踪计算机的工作

    4.逐步改进
    每次做一小步,及时获得反馈,及时纠正

    5.使用版本控制
    ①使用一个版本控制系统

    ②所有由手工创建的东西都要放到版本控制系统里

    6.不要重复自己(或他人)
    ①系统中的每一段数据都要有一个权威的单一的存在

    ②代码应该模块化复用,而不是拷来粘去

    ③复用代码,而不是重写代码

    7.准备好对付错误的方法
    ①在程序中增加断言,检查它们的各种操作

    ②使用现成的单元测试框架

    ③测试程序时借鉴所有的可用的经验

    ④把bug做成测试用例

    ⑤使用一个有代码指令的调试工具

    8.只在软件能正确的工作后才可优化
    ①使用监控工具找到瓶颈

    ②尽可能的用高级语言写程序

    9.文档里描述的应该是设计思路和目的,而不是技术细节
    ①描述接口和原因,而不是实现

    ②重构代码,而不是注释解释运行原理

    ③引用其它程序时嵌入其它程序的文档

    10.协作
    ①代码合并前进行代码审查

    ②当带新成员或解决特别诡异的问题时使用结对编程

    11. 维护旧代码
    软件开发的关键过程是组合代码以达到想要的效果,但在组合新代码的同时,维护已有的旧代码同样重要

    以上几个问题是软件开发过程中的关键问题,值得软件开发人员注意。软件开发过程是一个牵一发而动全身的过程,需要统筹协调,上下一致才能达到软件效果。
    原文:https://blog.csdn.net/qq_43393656/article/details/84531575

  • 相关阅读:
    Java中线程池,你真的会用吗?ExecutorService ThreadPoolExcutor
    springcloud中微服务的优雅停机(已验证)
    SpringCloud eureka
    Spring Boot实战:静态资源处理
    你真的理解CountDownLatch与CyclicBarrier使用场景吗?
    Effective.Java第56-66条(规范相关)
    Effective.Java第45-55条(规范相关)
    Effective.Java第34-44条(枚举)
    装饰(Decorator)模式
    合成(Composite)模式
  • 原文地址:https://www.cnblogs.com/guo-xu/p/11050459.html
Copyright © 2011-2022 走看看