博客
关于我
面向过程与面向对象
阅读量:367 次
发布时间:2019-03-05

本文共 503 字,大约阅读时间需要 1 分钟。

面向过程与面向对象

面向过程是一种以过程为中心的开发方法,它强调按照顺序逐步求精,程序结构是按功能划分为若干基本模块,这些模块形成树状结构,各模块之间关系简单且功能相对独立。每一模块通常由顺序、选择和循环等结构组成,实现模块化通常采用子程序的方式。这种方法认为世界由小系统组成,每个系统有明确的开始和结束,之间有严谨的因果关系。

面向对象是一种以对象为核心的程序设计方法。它将数据及其操作封装到一起,形成对象,对象与对象之间通过消息通信。类则是同类对象的抽象,类具有外部接口,与外界发生关系。对象具有封装性、聚合性、继承性、接口性和多态性等特征。

从微观角度看,对象具有封装性,外部只能看到与外界交互的接口,内部是黑匣子。对象可以通过聚合结合,形成更复杂的对象,继承则允许子类继承父类特性,接口定义对象的共同外貌,而多态则让不同对象呈现相同外貌但有不同行为。

从宏观角度,对象具有短视性,它只关注与自己有联系的伙伴,维持耦合关系。对象自私,保护自己领地,通过小窗口进行交流。

面向过程和面向对象各有优劣,前者适合需求明确、结构简单的场景,后者适合复杂系统需求,强调封装性和多态性。两者各有用,应用场景不同。

转载地址:http://jzhg.baihongyu.com/

你可能感兴趣的文章
NMAP网络扫描工具的安装与使用
查看>>
NMF(非负矩阵分解)
查看>>
nmon_x86_64_centos7工具如何使用
查看>>
NN&DL4.1 Deep L-layer neural network简介
查看>>
NN&DL4.3 Getting your matrix dimensions right
查看>>
NN&DL4.8 What does this have to do with the brain?
查看>>
nnU-Net 终极指南
查看>>
No 'Access-Control-Allow-Origin' header is present on the requested resource.
查看>>
NO 157 去掉禅道访问地址中的zentao
查看>>
no available service ‘default‘ found, please make sure registry config corre seata
查看>>
no connection could be made because the target machine actively refused it.问题解决
查看>>
No Datastore Session bound to thread, and configuration does not allow creation of non-transactional
查看>>
No fallbackFactory instance of type class com.ruoyi---SpringCloud Alibaba_若依微服务框架改造---工作笔记005
查看>>
No Feign Client for loadBalancing defined. Did you forget to include spring-cloud-starter-loadbalanc
查看>>
No mapping found for HTTP request with URI [/...] in DispatcherServlet with name ...的解决方法
查看>>
No mapping found for HTTP request with URI [/logout.do] in DispatcherServlet with name 'springmvc'
查看>>
No module named 'crispy_forms'等使用pycharm开发
查看>>
No module named cv2
查看>>
No module named tensorboard.main在安装tensorboardX的时候遇到的问题
查看>>
No module named ‘MySQLdb‘错误解决No module named ‘MySQLdb‘错误解决
查看>>