• 集中原则——软件设计之道


    为什么要集中?因为软件经常需要修改,而集中便于修改。

    举例来说明:

    1.魔术数字,也就是一些孤立的数字,不能直观看出有什么意义的数字。这种数字可以用常量来代替,任何重复使用到的地方,都可以用这个常量来代替,如果你需要修改这个数值,那么只需要修改常量的定义就可以了,而不需要多处修改。

    2.函数把算法集中在一块了。你可以在每次用到该算法的时候,都直接写代码(或者复制过来),但是如果你用函数去代替,那么当改进算法质量的时候,任何用到该算法的地方,都能同时得到改善。

    3.对象把算法和状态集中在一块了。根据状态机理论,程序的实质就是从一个状态跳转到另外的一个状态,而对象很好的实践了这个理论。如果状态和对象各处一方,修改的时候就要到处找了。

    另外说说设计上的事情。

    硬编码是设计者需要避免的,所谓的硬编码,就是不易于修改的状态。因此集中原则是对付这种状态的其中一个好方法。

    如何才能彻底的解决硬编码问题,第一个是把每一个潜在的修改点独立隔离起来,也就是把功能点集中起来。各个功能点之间不应该相互牵涉,避免牵一发而动全身之虞。第二点,从框架上,高层面上,提供一个良好的扩展界面。

    又可以说,先从低层次上把功能点分离了,再从高层次上把功能点衔接起来形成一个系统。

    可见:

    第一点是功能点的集中。

    第二点是业务的集中。

    这样就能做到修改方便,解决硬编码的问题。这里只是两个层次的抽象,可以设想一个足够复杂的系统,可以抽象到三层以上,但是总的策略是不变的,底层各部分的分离,在高层再融合起来。

  • 相关阅读:
    Linux虚拟机的安装(使用Centos6.3)
    【转载】接口测试用例的设计原则
    Oracle PLSQL游标、游标变量的使用
    利用shell脚本将Oracle服务器中数据定时增量刷新到ftp服务器中
    源码安装rlwrap 0.43(为了方便使用linux下的sqlplus)
    Oracle自定义脱敏函数
    Oracle分析函数FIRST_VALUE、LAST_VALUE
    MYSQL性能测试工具SYSBENCH
    OEL7.6源码安装MYSQL5.7
    OEL7.6安装Oracle Database 19C(VERSION 19.3.0.0)
  • 原文地址:https://www.cnblogs.com/Nobel/p/1913860.html
Copyright © 2020-2023  润新知