python面向对象的优点_python面向对象和面向过程介绍与区别

一、面向对象和面向过程的区别:

a.面向过程:

1)根据业务逻辑从上到下写代码

2)开发思路是将数据和函数按照执行的逻辑顺序组织在一起

3)分开考虑数据与函数

定义性文字:

面向对象编程(Object Oriented Programming-OOP) 是一种解决软件复用的设计和编程方法。

这种方法把软件系统中相近相似的操作逻辑和操作应用数据、状态,以类的型式描述出来, 以对象实例的形式在软件系统中复用,以达到提高软件开发效率的作用。

优缺点:

优点:将复杂的问题流程化,进而简单化。

缺点:扩展性差

实例:面向过程式的登录注册程序

注意:一般认为, 如果你只是写一些简单的脚本,去做一些一次性任务,用面向过程的方式是极好的,但如果你要处理的任务是复杂的,且需要不断迭代和维护的, 那还是用面向对象最方便。

b.面向对象:

1)将数据与函数绑定到一起

2)进行封装

3)更快速高效地开发程序

4)减少重复代码的重写过程

定义性文字:

面向对象(object-oriented ;简称: OO) 至今还没有统一的概念,概括定义为:

按人们认识客观世界的系统思维方式,采用基于对象(实体) 的概念, 建立模型,模拟客观世界分析、设计、实现软件的办法。

优缺点:

优点:可扩展性高

缺点:编程复杂度高

应用场景:用户需求经常变化,互联网应用,游戏,企业内应用等。

举例:买车

面向过程,分为4步,去4个地方办4件事:

1、4s ==>买车

2、保险公司 ==> 买保险

3、地税局 ==》 交税

4、车管所 ==> 办牌照

面向对象,只去1个地方,全能办:

买车处

1、4s ==> 买车

2、保险公司 ==> 买保险

3、地税局 ==》 交税

4、车管所 ==> 办牌照

二、面向对象三大特性:

<1>封装(Encapsulation):在类中对数据的赋值、内部调用对外部用户来说是透明不可见的,这使类变成了一个胶囊或容器,里面包含着类的数据和方法。

<2>继承(Inheritance):一个类可以派生出子类,在这个父类里定义的属性、方法自动被子类继承。

<3>多态(Polymorphism):多态是面向对象的重要特性,简单点说:“一个接口,多种实现”,指一个基类中派生出了不同的子类,且每个子类在继承了同样的方法名的同时又对父类的方法做了不同的实现,这就是同一种事物表现出的多种形态。

Python 面向对象和面向过程对比

# 大象装冰箱 # 脚本, 此时代码是最简单的. 不需要构思整个程序的概况 print("开门") print("装大象") print("关门&qu ...

python的面向对象和面向过程

一.面向对象和面向过程的区别: a.面向过程: 1)根据业务逻辑从上到下写代码 2)开发思路是将数据和函数按照执行的逻辑顺序组织在一起 3)分开考虑数据与函数 定义性文字: 面向对象编程(Object ...

面向对象和面向过程,python中的类class,python中程序的入口——main方法,

1.程序入口,让main显现出来: print(__name__)#__name___是模块中的隐藏字段,当前模块运行的函数名 if __name__ == __main__ __main__() # ...

python中的面向对象和面向过程

一.面向对象和面向过程 一.什么是面向过程 核心是过程二字:面向过程是一种流水线的工作流程,是先做什么在做什么 二.什么是面向对象 核心 是对象二字:是一种编程思想,上帝思维,一切皆对象,编程中负责调 ...

PHP面向对象和面向过程

编程界不论是PHP.Python都有这么两种编程思想,oop面向对象.pop面向过程,这两种在功能上没有多大区别,但是在代码编写上却有很大区别.今天就记录一下面向对象和面向过程的优点.缺点.定义.实现 ...

Day5-1 面向对象和面向过程

摘要: 类的定义 类的增删改查 对象的增删改查 对象的查找和绑定 面向对象和面向过程的区别: 1.面向过程就像是工厂的流水线,按部就班的有序的工作. 优点:把复杂的问题简单化 缺点:可扩展性差.一个步 ...

面向对象与面向过程 &dollar;this的注意事项和魔术方法set和get

一.面向对象与面向过程的区别: 二者都是一种思想,面向对象是相对于面向过程而言的.面向过程,强调的是功能行为.面向对象,将功能封装进对象,强调具备了功能的对象.面向对象更加强调运用人类在日常的思维逻辑 ...

JavaSE——面向对象与面向过程、类与对象、&lpar;属性、方法、构造器&rpar;等

一:面向对象与面向过程 二者都是一种思想,面向对象是相对于面向过程而言的. 面向过程: 1.面向过程思想强调的是过程(动作). 2.在面向过程的开发中,其实就是面向着具体的每一个步骤和过程,把每一个步 ...

Java基础知识强化20:面向对象和面向过程的思想对比

面向对象与面向过程的区别  1. 与面向对象编程思想相比较的,往往是面向过程的编程思想,其实在我来理解,两者并不冲突,原因是面向对象的编程也必须使用面向过程的思维来实现具体的功能,所以我认为,两者的区 ...

随机推荐

js瀑布流

无标题文 ...

Java——(二)Java集合容器

------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 一.基本概念 1)Collection:一个独立元素的序列,这些元素都服从一条或多条规则.Lis ...

S3C6410嵌入式应用平台构建(四)&mdash&semi;&mdash&semi;linux-3&period;14&period;4移植到OK6410-&lpar;初步启动&rpar;

这次,还是把基本的基于我目前最新的Linux源码进行移植到OK6410吧,同时也写下我移植过程中遇到的问题及解决方法,不过有些方法是借鉴网上的,有些是自己加的,会有一些小bug. 一.基本工作 1. ...

JSP中include指令和include动作区别

首先 <%@ include file=” ”%>:为指令元素 :为 动作元素 先说指令元素: incl ...

codeforces 258D

D. Little Elephant and Broken Sorting time limit per test 2 seconds memory limit per test 256 megaby ...

iOS自定义文字高度添加行间距

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #000000 } span.s1 { } span.s2 { c ...

C&plus;&plus; 不定参数(转)

转自:http://www.cnblogs.com/jerrychenfly/archive/2010/10/22/1858232.html 下面,我们来看一下,如果在c++的函数中接收数量不定的函数 ...

laravel orm

###多对多关系 多对多关系和之前的关系完全不一样,因为多对多关系可能出现很多冗余数据,用之前自带的表存不下了. 我们定义两个模型:Article 和 Tag,分别表示文章和标签,他们是多对多的关系. ...

Oracle PLSQL Demo - 31&period;执行动态SQL拿一个返回值

DECLARE v_sql ) := ''; v_count NUMBER; BEGIN v_sql := v_sql || 'select count(1) from scott.emp t'; E ...

&lbrack;十六&rsqb;SpringBoot 之 读取环境变量和绑定属性对象

1.读取环境变量 凡是被spring管理的类,实现接口EnvironmentAware 重写方法 setEnvironment 可以在工程启动时,获取到系统环境变量和application配置文件中的 ...

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值