zoukankan      html  css  js  c++  java
  • 代码组织与重构原则

    1.正交分解原则,拥有三原色可以组装出所有的颜色,如果不是原色的话则需要拥有更多。将代码陈述逻辑分解成功能抽象的部分,能最大限度提供重用,简化陈述,正如哲学和诗歌能简化文章表达一样。

    2. 迭代原则化难为量,吃自己的狗粮。这样不但能提供效率,而且能提供改进。尽一切可能,用已有的东西,哪怕是设计不善的代码,只要他是迭代里程碑上的某个重要节点,经过了某种实战的考验,那么尽最大可能重用它。如果要修改,读懂的基础上,将原代码分门归类抄到本代码的组织中去,在测试中排除移植的问题,然后产生一个新的迭代节点,然后再在这个迭代节点上修改。

    3. 迭代与变化。变化的代码用继承来扩展。上次扩展已经跑成熟的代码则全局通盘考虑,是否变成基类的组成部分。

    扩展和变化的代码往往需求不明,变化多端,逻辑考虑不成熟,需要一段时间稳定期,稳定了以后则可能变成设计逻辑一个固定的环节,在这个过程中,可能程序设计也会同步变革。系统的进化就会有积累,日益强大,不会因为变化不定的干扰而混乱。 

     4. 助用助记原则。类和对象,是内部组件,程序是外部组件,这些,本质上都是执行语句,数据,上下文。代码设计的各种组件设计,设计模式,本质上一则是为了用代码高效调用计算机,二则是实现复杂多端的需求,确保可维护性,重用性,剩下的都是助记功能。不要被命名本身的蕴涵的逻辑所羁绊。

    如同开车方法,可以放在车里作为车的功能,也可以放在人里作为人的能力,车,人都是程序员上帝从虚空中创造出的概念,以为助记,这些随需而定,随心而生。

  • 相关阅读:
    数字签名与HTTPS详解
    利用策略模式优化过多 if else 代码
    Redis 的事务到底是不是原子性的
    Spring Boot项目的接口防刷
    深入分析 ThreadLocal
    什么是四层和七层负载均衡?他们之间的区别是什么?
    MyEclipse或Eclipse中project的导入和导出
    org.hibernate.exception.ConstraintViolationException: could not insert:
    C++ STL vector(向量容器)的使用(附完整程序代码)
    Swift2.0语言教程之函数嵌套调用形式
  • 原文地址:https://www.cnblogs.com/baozhu/p/5248261.html
Copyright © 2011-2022 走看看