python 进阶——编程类型

一、面向过程编程(eg:C语言):

  • “面向过程”(Procedure Oriented)是一种以过程为中心的编程思想。分析出解决问题所需要的步 骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。
  • 面向对象的方法也是含有面向过程的思想。面向过程最重要的是模块化的思想方法。
    比如拿学生早上起来这件事说明面向过程,粗略的可以将过程拟为:
    (1)起床
    (2)穿衣
    (3)洗脸刷牙
    (4)去学校
    而这4步就是一步一步地完成,它的顺序很重要,你只需要一个一个地实现就行了。 而如果是用面向对象的方法的话,可能就只抽象出一个学生的类,它包括这四个 方法,但是具体的顺序就不一定按照原来的顺序。
  • 特性: 模块化 流程化
  • 优点: 性能比面向对象高, 因为类调用时需要实例化,开销比较大,比较消耗资源; 单片机、嵌入式开发、Linux/Unix等一般采用面向过程开发,性能是最重要的因素。
  • 缺点: 没有面向对象易维护、易复用、易扩展

二、面向函数编程:

  • 函数式编程是种编程方式,它将电脑运算视为函数的计算。函数编程语言最重要的基础是λ 演算(lambda calculus),而且λ演算的函数可以接受函数当作输入(参数)和输出(返回值)。
  • 主要思想: 把运算过程尽量写成一系列嵌套的函数调用。

三、面向对象编程(eg:python、C++、Java)

  • 面向对象是按人们认识客观世界的系统思维方式,把构成问题事务分解成各个对象,建立对 象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。

以五子棋为例,比较面向过程和面向对象编程的区别:
面向过程
在这里插入图片描述

面向对象
在这里插入图片描述

总结:

  • 特性: 抽象 封装 继承 多态
  • 优点: 易维护、易复用、易扩展,由于面向对象有封装、继承、多态性的特性, 可以设计出低耦合 的系统,使系统更加灵活、更加易于维护
  • 缺点: 性能比面向过程低
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值