软件重用:在两次或多次不同的软件开发过程中重复使用相同的或相似软件元素的过程。
软件元素包括程序代码,测试用例,设计文档,设计过程,需要分析文档甚至领域知识。
流行地软件重用技术:
库函数(面向过程)
类库(面向对象)比如MFC
模板:比如文档模板,网页模板等
设计模式:重用设计的技术
构件(比如:按钮) 构架(系统的草图) 框架(为系统搭建的“架子”)
类构件的重用方式:
实例重用:定义类对象直接解决问题
继承重用:继承已有的类的派生类,用一种安全的手段修改已有类构件,然后在产生对象解决问题
不同的c++编译系统,提供了不同厂商开发的类库:
windows:MFC
诺基亚:Qt
开源的:wxWidgets
类库的处理:
对类库中类的声明一般放在头文件中,类的实现(函数定义部分)是单独编译的,以目标代码形式存放在系统某一目录下。
用户使用类库时,不需要了解源代码,但必须知道头文件的使用方法和怎样去连接这些目标代码(找到在目标代码在哪个子目录下),以便源程序在编译之后与之连接。
由于基类时单独编译的,在程序编译时只需对派生类新增的功能进行编译,提高了效率。
如果在必要时修改了基类(一定要谨慎),只要基类的公用接口不变,派生类就不必修改,但基类需要重新编译。派生类也必须重新编译,否则不起作用。