首页 > 其他分享 >面向对象与面向过程

面向对象与面向过程

时间:2024-08-05 11:07:35浏览次数:13  
标签:对象 复用 面向对象 抽象 面向 过程

面向对象与面向过程

  • 面向对象就是:把数据及对数据的操作方法放在一起,作为一个相互以来的整体--对象。对同类对象抽象出其特性,形成类。类中的大多数数据,只能用本类的方法进行处理。类通过一个简单的外部接口与外界发生关系,对象与对象之间通过消息进行通信。程序流程由用户在使用中决定。对象即为人对各种具体物体抽象后的一个概念,人们每天都要接触各种各样的对象。
面向对象与面向过程的区别:
项目名称 面向对象 面向过程
定义 面向对象顾名思义就是把现实中的事务都抽象成为程序设计中的“对象”,其基本思想是一切皆对象,是一种“自下而上”的设计语言,先设计组件,再完成拼装。 面向过程是“自上而下”的设计语言,先定好框架,再增砖添瓦。通俗点,就是先定好main()函数,然后再逐步实现mian()函数中所要用到的其他方法。
特点 封装,继承,多态 算法+数据结构
优势 适用于大型复杂系统,方便复用,可维护性高,可扩展性好,灵活性好。 适用于简单系统,容易理解
劣势 标胶抽象,性能比面向过程低 难以应对复杂系统。难以复用,不易维护不易扩展,灵活性差。
对比 易维护、易复用、易扩展,由于面向对象有封装、继承、多态性的特性,可以设计出低耦合的系统,使系统 更加灵活、更加易于维护 性能比面向对象高,因为类调用时需要实例化,开销比较大,比较消耗资源;比如单片机、嵌入式开发、 Linux/Unix等一般采用面向过程开发,性能是最重要的因素。

标签:对象,复用,面向对象,抽象,面向,过程
From: https://www.cnblogs.com/lnnnkq/p/18342818

相关文章

  • python面向对象之反射
    反射,也叫自省。吾日三省吾身,说白了就是自己检测自己,这就叫反射。千万别被这个抽象的名词给吓到了,没什么牛逼的。反射的四种方法:1>hasattr(obj,name)#判断obj.name是否存在,name指代属性,包括数据属性和函数属性。2>getattr(obj,name)#获取obj.name的结果,如果是函数属性,则加上......
  • 面向对象的编码设计原则
    之前谈DDD时提及过当下很多标榜面向对象的语言,却是以面向过程来实现的问题。这里就从编码设计的角度来顺一下面向对象设计的一些思维。其实就像我正在梳理的设计模式一样,都是些老生常谈的东西,可是往往在实践的时候,这些老生常谈的东西会被“反刍”,总会有种常看常新的感觉。面向对......
  • COMSOL金属氢化物-放氢过程
    在此记录下放氢过程的软件设置思路1、采用的是"达西定律"+"层流" 物理场,其中"层流"物理场选择了”弱可压缩流动“,这里主要是选择”可压缩流动“的话,算出来的瞬时流量值跟实测差距太大了。 2、设置"达西定律"的压力初始值为P0,"层流"的压力初始值也为P0,"层流"的出口设置......
  • Spring AOP:面向切面编程的核心概念与实际应用
    SpringAOP:面向切面编程的核心概念与实际应用大家好,我是微赚淘客返利系统3.0的小编,是个冬天不穿秋裤,天冷也要风度的程序猿!SpringAOP(Aspect-OrientedProgramming,面向切面编程)是Spring框架中的一个重要功能,旨在帮助开发人员分离关注点,使代码更加模块化。AOP通过将关注点(如事务管......
  • 【自动化测试必学语言】python:面向对象
    目录面向对象基本介绍类和对象类的组成类的抽象(类的设计)面向代码的步骤面向对象基本代码的书写self的说明对象的属性操作添加属性获取属性魔法方法__init__方法**__str__方法*__del__方法 【了解】案例封装案例案例二私有和公有案例继承语法案例......
  • STM32Cubemx在FreeRTOS中使用面向对象的方式使用串口
    文章目录前言一、创建FreeRTOS工程二、创建文件对串口进行封装三、代码编写总结前言本篇文章将带大家来学习使用面向对象的方式在FreeRTOS中使用串口,使用面向对象的方法非常适合编写可移植性强的代码,那么这篇文章就带大家来看一下这个代码要怎么写。一、创建FreeRT......
  • 【Linux】网络架构探秘:网络层功能、IP协议详解及路由过程指南
    文章目录前言:1.网络层是干什么的?2.IP协议2.1理论铺垫2.2IP协议的头格式2.3网段划分(重点)2.3.1分类划分法:2.3.2子网掩码:2.3.3为什么要经行子网划分?2.4特殊的IP地址2.5IP地址的数量限制2.6私有IP地址和公网IP地址3.路由过程总结:前言:在当今数字化时代......
  • C# & Unity 面向对象补全计划 七大原则 之 里氏替换
    本文仅作学习笔记与交流,不作任何商业用途,作者能力有限,如有不足还请斧正本系列作为七大原则和设计模式的进阶知识,看不懂没关系请看专栏:http://t.csdnimg.cn/mIitr,尤其是关于继承的两篇文章,本知识点与其密切相关1.里氏替换原则里氏替换原则(LiskovSubstitutionPrinciple,LS......
  • LLVM编译Fortran语言的全过程
    以一个给数组求和的程序来作为例子,编译器使用的是LLVM18.1.8!sum.f90programsum​ integer,parameter::n=30 real(4),dimension(n)::array real(4)::result integer::i​ doi=1,n   array(i)=i enddo​ ......
  • 【C++核心篇】—— C++面向对象编程:封装相关语法使用和注意事项详解(全网最详细!!!)
    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、封装(类)1.封装的使用(类和对象)2.对象的初始化和清理2.1构造函数2.2析构函数2.3构造函数的分类及调用3.深拷贝与浅拷贝4.C++对象模型和this指针5.友元6.运算符重载前言在本篇......