• 软件框架设计


                                      

    一、优秀的框架的特征
       
    1. 重用

    (1)为了避免重复劳动,为了降低成本,我们希望能够重用之前的代码、之前的设计。重用是 框架 实现中最为核心的目标,重心中的重心。提高复用度是框架的首要目标。
         (2)层次分明,高度组件化,在框架中的各个部件高度独立,可拆可组(任意拆卸,任意组合),着力通用。
         (3)部件细化,设计精巧,运行高效,内存占用低。
         (4)耦合度低(可拆可组)
       2. 高效

    不论是什么系统,我们都希望架构是高效的。
       3. 安全

    运行安全稳定【可以通过完善TDD测试机制来保障】
       4. 可拓展

    我们需要架构具有可拓展性,以适应未来可能的变化。
       5. 简明

    一个复杂的架构不论是测试还是维护都是困难的。我们希望架构能够在满足目的的情况下尽可能的简单明了。【但是简单明了的含义究竟是什么好像并没有一个明确的定义。例如:使用模式能够使设计变得简单,但这是建立在我熟悉设计模式的基础上。对于一个并不懂设计模式的人,他会认为这个架构很复杂。】
      
     6. 透明

    把过多的实现细节隐藏起来,仅把需求的接口呈现出来(具体的实现对使用框架的开发者来说就是透明的)。这样就提高了使用者的效率,降低了学习的门槛。

    二、设计具体指导原则
      1
    、概要框架总体功能目的
      2、对框架总体功能目的进行细化,分层(层次之间相对独立,互不干涉),仔细斟酌,理清层次之间的依赖关系(如,核心层,中间层,应用层)。
         * 核心层:处于最低层,不依赖于框架中的其它层;

    http://www.cnblogs.com/eugenewu0808/archive/2008/12/25/1362128.html
         *
    中间层:根据具体 框架 的需要自行定义,取名,注意理清层次之间的依赖关系;

    http://www.cnblogs.com/eugenewu0808/archive/2008/12/25/1362123.html
         *
    应用层:在核心层以上,依赖于核心层;

    http://www.cnblogs.com/eugenewu0808/archive/2008/12/25/1362122.html
      3
    、从核心层开始,逐层细化各个部件,仔细推敲部件名称,构思部件的功能,合理归类。

    非有希望才坚持,坚持才会有希望
  • 相关阅读:
    设计模式之单例模式实践
    有关集合的foreach循环里的add/remove
    项目中常用的MySQL优化方法--壹拾玖条
    Solr
    Lucene补充
    Lucene
    一千行 MySQL 学习笔记
    Servlet
    CSS未知宽高元素水平垂直居中
    深拷贝和浅拷贝
  • 原文地址:https://www.cnblogs.com/eugenewu0808/p/1368777.html
Copyright © 2020-2023  润新知