类库和框架的异同

类库(Class Library)不同于程序框架(Application Framework),尽管二者都是一组类的集合,均符合高度可复用的软件工程原则。范围上说,类库的概念大于框架。类库相对来说更加底层,它的使用和扩展更加灵活,几乎有无数种编程模式和可能性。类库中的类可能有、也可能没有任何关系与约束。而框架则更加具体,有预定义的关系、要求和规则,通常仅限于特定平台及该框架所能表示的应用范围之内,很难或不便于扩展,灵活性稍差。框架可由一到多个类库所写成。

使用类库是C++编程的重中之重。大部分时间,程序员通过选择适当的、最接近问题域的已有类,采取聚合、组合、继承与多态等手段实现对类库的功能性扩展,从而快速完成具体问题的应用级编程。但万事皆有两面,依赖类库编程的缺陷也不少,主要有四:

  1. 需要花费相当多的时间和精力来学习类库本身
  2. 有些类库的底层实现很难弄懂其根本原理和来龙去脉
  3. 提高效率的同时也意味着全盘引入类库中的“原生”Bugs,一旦修改类库的源码,再次更新该类库后,修改结果将全部丢失
  4. 必须忍受和适应该类库特有的编码风格和命名规范,包括晦涩难懂或错综复杂的思维模式和实现技巧

SwingCoder

如果本文对您有所启发或助益,请微信打赏

创作时间: 2010.08.03 23:04
最后修改: 2017.05.10 15:28

本文版权:UnderwaySoft   共享协议:署名-非商业使用-禁止演绎


上一篇: UnderwaySoft开源协议
下一篇: UnderwaySoft共享协议

 随机推荐:
Email: underwaySoft@126.com 微信公众号: UnderwaySoft