第一章 面向对象编程概述

1.1面向对象程序设计方法


SP:面向过程的程序设计,它是以模块功能和处理过程设计为主的开发软件方法。—结构化程序设计方法实现程序设计需要经过两个过程:模块分解和组装其设计思想是采用“自顶向下,逐步求精,模块分解,分而治之”的解决问题方法。

自顶向下、逐步求精是指将分析问题的过程划分成若干个层次,每一个新的层次都是上一个层次的细化,即步步深入,逐层细分。

模块分解,分而治之是将整个系统分解成若干个易于控制、处理、完成一定功能的子任务或子模块,每分解一次都是对问题的进一步的细化,直到最低层次模块所对应的问题足够简单为止。每个模块功能可由结构化程序设计语言的子程序(函数)来实现。


结构化程序设计的基本特点是:

—按层次组织模块;
—每个模块只有一个入口,一个出口;
—程序与数据相分离,即:

          程序=算法+数据结构。

          程序内容=过程+过程调用。

结构化程序设计的缺点:

—这种结构很容易造成全局数据在无意中被其他函数改动,因而程序的正确性不易保证。
结构化程序设计模型这种实质上的依赖与形式上的分离使得大型程序不仅难以编写,也难以调试、修改和维护,代码的可重用性和共享性差。


OOP:面向对象程序设计,将数据及对数据操作的方法(函数)放在一起,形成一个相互依存,不可分离的整体——对象(对象=数据+操作,从同类对象中抽象出共性,形成

—类有两个成员: 数据成员和成员函数

Simula67语言,是第一个的面向对象程序设计语言。它引入了所有后来面向对象程序设计语言所遵循的基础概念:对象、类和消息。被称为面向对象程序设计语言的祖先或前身,为面向对象这一当前最流行、最重要的程序设计技术奠定了基础。

Smalltalk编程语言,历史上第二个面向对象的程序设计语言和第一个真正的集成开发环境(IDE)。它基于Simula语言的类和消息的概念,引入了继承和子类的概念,Smalltalk编程语言对近代面向对象编程语言影响很大,所以称之为“面向对象编程之母”。


OOP 达到了软件工程的三个主要目标:重用性、灵活性和扩展性。适合大型的、复杂的软件开发。

属性: 属性是类中所定义的数据


消息:

在面向对象程序设计中,对象之间的联系是通过消息传递来实现的。一个对象向另一个对象发出的 “请求”或“命令”被称为“消息”。
当对象收到消息时,就调用有关的方法,执行相应的操作。消息是一个对象要求另一个对象执行某个功能操作的规格说明。
通过消息传递完成对象间相互请求和相互协作。
公有消息:由外界对象直接发送给这个对象的消息。
私有消息:对象自己发送给本身的消息。

私有消息对外是不开放的,外界不必了解它。外界对象只能向此对象发送公有消息,而不能发送私有消息,私有消息是由对象自身发送的。


方法: 方法就是对象所能执行的操作或所具有的行为,即类中定义的服务, 在C++语言中方法是通过成员函数来实现的。

你可能感兴趣的:(C++学习笔记)