第一章 面对过程编程和面对对象编程

面向过程编程是一种以过程为核心的编程方法。使用该方法的关键是,先把问题的过程按照步骤分解出来,然后用函数的形式把这些步骤加以实现,并且依次调用它。
面向过程编程以函数为中心,数据在函数中传递,数据和函数是分开的。

面对对象编程把任务分解成一个个相互独立的对象,通过各对象之间的组合和通信来模拟实际问题。
面向对象和面向过程都是把大问题化解成为小问题:面向对象的小问题的单位是函数,数据在函数之间交互,面向对象的小问题单位是模块,模块不但拥有数据还拥有方法,模块和模块之间通过组合和交互来解决问题。比如经营面馆,用面对对象的方法大致可分解为顾客模块、服务员模块、面条模块、主料模块、佐料模块等。

对象指的是真实世界中具体的东西。它们有各自的属性和相关行为,分别被定义为对象的属性和方法。

类是对各个具体、相似对象共性的抽象。
类规定了一些相似对象的属性、职责和行为,并把它们封装;类提供了将数据和函数结合起来的方式,数据变成了类的属性,而函数变成了类的方法。

例子:把二维坐标中的点当作对象,创建二维点的类。
这些点共同的、抽象的特征:都有x,y坐标
抽象出和这个点相关的行为:例如对点的坐标做归一化的操作

Point2D +x +y +normalize()

UML(统一建模语言)类图:长方形表示类,分为3个区域,从上到下分别是类名、成员属性和成员方法,属性和方法前面加+(加号)表示它们是公有的。表示对象时,只写对象的名称和属性,不写成员方法

查看对象(t)的属性和方法

>> t = timer;
>> properties(t)  %查看对象t的属性

类 timer 的属性:

    ud
    jobject

>> methods(t)

类 timer 的方法:

ctranspose    eq            isempty       openvar       stop          timerfind     
delete        fieldnames    isequal       set           subsasgn      timerfindall  
disp          get           isvalid       size          subsref       vertcat       
display       horzcat       length        start         timer         wait          
end           inspect       ne            startat       timercb       waitfor   

OOP的优点

  1. OOP把大问题分解成小问题
  2. OOP通过组合和信息传递完成任务:可以几个对象组合构成一个新对象
  3. OOP通过继承达到代码的复用
  4. OOP修改或者添加模块不会引响其他模块
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值