• 设计模式与设计原则对框架的意义
  • 卡卡 发表于 2015/7/14 12:49:00 | 分类标签: 软件设计 设计模式 网站架构
  •   “IT语境中的框架,特指为解决一个开放性问题而设计的具有一定约束性的支撑结构。在此结构上可以根据具体问题扩展、安插更多的组成部分,从而更迅速和方便地构建完整的解决问题的方案。”——摘自互联网

    上面是一段摘自互联网上描述“框架”的话,从这段话中我们了解到,首先,每个框架解决问题的范围是有限的,比如Windows Forms框架只会帮助我们完成Windows桌面应用程序的开发,这就是它的“约束性”,其次,框架本身解决不了什么特定的问题,它只给了解决特定问题的相关模块(或者组件)一个可插接、可组合的底子,这个底子为我们解决实际具体问题提供了支持,这就是框架的“支撑性”,:

    如上图9-9所示,图中左边部分表示使用框架之前,整个系统均由开发者编写代码的结构图,我们可以看见,无论系统的“系统运行逻辑”还是“业务处理逻辑”均由开发者负责,开发者自己调用自己的代码,整个系统的运行流程由开发者控制;图中右边部分表示使用了框架之后,“系统运行逻辑”由框架接管了,开发者只需要把精力集中在“业务逻辑处理”之上(Windows Forms框架接管了消息循环、消息处理等,负责了整个Winform程序的运转),除此之外,还有一个非常大而且非常重要的改变:开发者不再(几乎不)自己调用自己的代码了,自己编写的代码均由框架调用,系统运行的控制权交给了框架。这就是所有框架所必须满足的“好莱坞原则”(Hollywood Principle,don't call us,we will call you),“好莱坞原则”跟“控制转换原则”(IoC,Inversion of Control)类似,参见前面章节,可以了解框架是怎样反过来控制程序的运行。

    我们在使用框架开发应用程序去解决实际具体的问题时,框架避免不了会与我们开发者编写的代码进行交互,这就会产生一个问题,那就是怎样去把握框架代码和框架使用者编写代码两者之间的关联性,也就是我们常说的“高内聚,低耦合”。“高内聚,低耦合”在框架中要求更高,因为框架的使用人群和范围比一般普通系统更大更广泛,优秀的框架要想使用寿命更长口碑更好,就要求框架能在使用后期能够更容易升级、更方便扩展新的功能来满足使用者的各种需要,而这些大部分取决于框架最开始的设计好坏,正确地使用各种“设计模式”以及严格地遵守各种“设计原则”是决定框架后期能否应付各种变更、升级扩展的重要因素。

  • 请您注意

    ·自觉遵守:爱国、守法、自律、真实、文明的原则

    ·尊重网上道德,遵守《全国人大常委会关于维护互联网安全的决定》及中华人民共和国其他各项有关法律法规

    ·严禁发表危害国家安全,破坏民族团结、国家宗教政策和社会稳定,含侮辱、诽谤、教唆、淫秽等内容的作品

    ·承担一切因您的行为而直接或间接导致的民事或刑事法律责任

    ·您在编程中国社区新闻评论发表的作品,本网站有权在网站内保留、转载、引用或者删除

    ·参与本评论即表明您已经阅读并接受上述条款

  • 感谢本文作者
  • 作者头像
  • 昵称:卡卡
  • 加入时间:2013/5/17 0:00:00
  • TA的签名
  • 这家伙很懒,虾米都没写
  • +进入TA的空间
  • 以下内容也很赞哦
分享按钮