<iframe align="center" marginwidth="0" marginheight="0" src="http://www.zealware.com/csdnblog.html" frameborder="0" width="728" scrolling="no" height="90"></iframe>
见有人常把“面向对象设计”挂在嘴边,仿佛面向对象设计是多么高深,多么值得自豪的东西,其实,也就那么回事。面向对象,不见得适用于所有的场合。就比如底层通信模块而言,不见得非要用面向对象不可。
但,什么样的设计,才是面向对象的?是不是只要使用了class,里面弄几个成员函数和成员变量就成了面向对象了?当然不是。
面向对象,我把它概括为两个方面。一个是“神”,一个是“形”。只有“形、神”兼备的设计,才能称为真正的面向对象设计。
所谓的“神”,是指,在作系统规划时,就要学会按对象的思维来构造系统。比如银行系统,你就不能按原先的存钱、取钱、查账等这样的功能来划分系统,而应该用“银行账号”,“用户”等来划分构成银行系统的对象,然后在这些对象里添加数据和函数。也就是说,要作面向对象,首先要培养一种以“对象和类”为主的思维方式,即以数据为中心,而不是以过程为中心。
所谓的“形”,是指,在作面向对象设计时,会使用到的一些典型的面向对象设计手法,让人一看就知道是面向对象的。在这些手法中,最诱人的可能就是“虚函数”了。纵观各种设计模式书籍,说到底,都是把继承和多态用到了极致,虚函数是实现众多模式必不可少的设计方法。所以,也有人说“面向对象设计==虚函数设计”,虽然不完全对,但此话确实很传神。
一点感悟,诸位看官,权当笑料罢!呵呵。
分享到:
相关推荐
面向对象程序设计语言C虚函数和多态性推选PPT文档.ppt
正确理解掌握C++面向对象程序设计的基本特性:类、对象、继承与派生、多态、虚函数、模板、流类库等。遵循软件过程的各个环节进行系统分析、设计、实现、集成、测试,并相应给出软件规格说明书等制品。了解当前常用...
C++ 面向对象程序设计--多态性与虚函数 C++ 面向对象程序设计--多态性与虚函数 C++ 面向对象程序设计--多态性与虚函数
面向对象程序设计03多态性和虚函数.ppt
面向对象程序设计之多态性与虚函数推选PPT文档.ppt
第1篇 基 本 知 识 第1章 C++的初步知识 第2章 数据类型与表达式 第2篇 面向过程的程序设计 ... 第4篇 面向对象的程序设计 第11章 继承与派生 第12章 多态性与虚函数 第13章 输入输出流 第14章 C++工具
[推选]面向对象程序设计之多态性与虚函数PPT文档.ppt
第6章 多态性与虚函数 6.1 习题与参考解答 6.2 上机实验题与参考解答 第7章 运算符重载 7.1 习题参考解答 7.2 上机实验题参考解答 第8章 模板 8.1 习题参考解答 8.2 上机实验题参考解答 第9章 C++的输入和输出 9.1 ...
《面向对象程序设计》PPT课件重点章节多态性、虚函数和继承等
c++面向对象程序设计报告 包含先入门定义一个类 虚函数 运算符承载等等 有很多次的作业
C++面向对象程序设计-章-多态性-虚函数(与“函数”有关文档共45张).pptx
《面向对象原理与语言》课程实验大纲 适用对象: 计算机科学与技术专业 先修课程: C语言程序设计、数据结构 后续课程: 算法设计与分析、面向对象技术 ...实验七:面向对象(5)——多态性与虚函数 实验八:文件流操作
要求:1、虚函数 多态 多态表现为 基类 基类指针和继承间的关系 2、带有多对象成员。定义 3、体现继承 虚拟继承(要通过至少三层 父类父类子类) 虚函数 (3层 纵向关系) 水平方向上:体现出继承顺序 先虚拟继承 ...
功能上的统一保证了面向对象设计的可扩展性。比如我要加入悔棋的功能,如果要改动面向过程 的设计,那么从输入到判断到显示这一连串的步骤都要改动,甚至步骤之间的循序都要进行大规 模调整。如果是面向对象的话,...
1. 面向对象分析与设计是面向对象软件开发过程中的两个重要阶段,下列活动中,_____ 不属于面向对象分析阶段。 A.构建分析模型 B.识别分析类 C.用例动态建模 D.评估分析模型 2. 在面向对象方法中,_____可看成...
总 目 录 第 1 篇 基 本 知 识 第 1 章 C++的初步知识 第 2 章 数据类型与表达式 ...第 4 篇 面向对象的程序设计 第 11 章 继承与派生 第 12 章 多态性与虚函数 第 13 章 输入输出流 第 14 章 C++工具
华南理工大学C++程序设计基础教学PPT课件
第二部分是面向对象的程序设计部分,详细介绍面向对象的程序设计的有关基本概念、类与对象的定义和使用、构造函数与析构函数、继承与派生、虚函数与多态性、友元函数与友元类、静态成员、模板以及文件操作等;...
1)函数参数的三种传递方式编程 2)类和对象的编程 3)静态成员与友元函数编程 4)运算符重载编程 5)继承与虚函数编程
利用面向对象的概念设计程序。建立 Win32 控制台应用程序,完成如下要求: (1)声明抽象基类及其派生类,设计类及其成员变量和成员函数,利用虚 函数实现对三种形状(如圆、正方形、三角形)的面积和周长的计算。在...