哦(oop)和流行音乐(pop)的区别
在讨论OOP和POP之间的区别之前,让我们先看一下编程过程的一些基本概念。在使用编程为各种类型的问题构建解决方案时,有许多不同的编程过程方法。这些方法被称为编程范例。大多数编程语言都属于一种范式,但也可能存在具有多种范式元素的语言。面向对象编程(OOP)和面向过程编程(POP)就是两种这样的编程范式。这两种范式的不同主要是由于它们在设计解决方案时创建的抽象。编程方法中的抽象将信息的相关性与用户的相关性分离开来透视图POP和OPP的主要区别在于POP创建和使用过程抽象,而OOP则侧重于数据抽象。
什么是哦(oop)?
面向对象编程(OOP)基于两个主要概念:对象和类。对象是包含数据和操作该数据的过程的结构。这些对象可以用于建模真实世界实体。对象有两个特征:状态和行为。类定义给定类型或对象类的数据格式和过程。换句话说,类是对象的蓝图。
OOP方法主要关注数据,而不是处理数据的算法。由于数据和处理这些数据的函数都绑定在对象中,因此外部函数不能对数据进行任何修改。也就是说,一个对象的数据不能被任何其他对象的函数访问。这保证了程序数据的安全性。但是,一个对象的函数可以访问另一个对象的函数,从而允许对象彼此通信。通过另一个对象的方法调用一个对象的方法称为消息传递。
OOP编程有四个主要特性:抽象、封装、多态和继承。抽象的目的是只向用户显示相关信息,从而降低问题的复杂性。封装是在对象中对信息进行本地化。一个类获取另一个类的属性和功能的过程称为继承。多态性是一个函数有许多特征,或者一个对象以许多不同的方式表现。
OOP还支持高模块性。添加新函数或数据不需要更改整个程序。因为对象独立于声明和定义,所以只需创建一个新对象就可以完成。因此,OOP可以是高效和高生产率的。
考虑到程序设计,OOP遵循自底向上的方法。一些流行的OOP语言是Java、Python、Perl,VB.NET版和C++。
什么是流行音乐(pop)?
面向过程编程(Procedure-orientedprogramming,POP)将问题视为一系列要做的事情,并基于过程调用的概念。程序被分成更小的部分,称为过程,也称为例程、子例程、方法或函数。程序强调程序中需要做什么的算法。也就是说,一个过程包含一系列要执行的计算步骤。因为这些函数是面向操作的,所以在建模现实问题时,使用POP语言有时可能会很困难。
POP更专注于编写一个指令列表,告诉计算机一步一步地做什么。对与程序相关的数据关注较少。数据可以在过程之间传递,每个过程将数据从一种形式转换为另一种形式。大多数数据是全局的,可以从系统中的任何功能自由访问。而且由于POP不支持隐藏数据的有效技术,所以程序可能不安全。有些函数可能有自己的本地数据。
在POP中,有时可能很难确定哪些函数使用了哪些数据,因为全局数据在很大程度上是在函数之间共享的。如果需要更改现有数据,则必须将访问该数据的所有函数修改为好吧。这个可能会影响整个程序,错误和错误可能会浮出水面。
考虑到程序设计,POP语言采用自顶向下的方法。因为POP语言显式地引用执行环境的状态,所以它们也被称为命令式语言。这类流行语言的例子有COBOL、Pascal、FORTRAN和C语言。
哦(oop)和流行音乐(pop)的区别
oop和pop的定义
OOP:面向对象编程是一种侧重于数据抽象的编程范式。
POP:Procedure-Oriented Programming是一种专注于过程抽象的编程范式。
oop和pop的特点
问题分解
OOP:在OOP方法中,程序被分成称为对象的部分。
POP:在POP方法中,程序被划分为函数。
集中
OOP:OOP的主要焦点是与程序相关联的数据。
POP:POP的主要焦点是操作数据的过程和算法。
设计方法
OOP:OOP遵循自底向上的方法。
POP:POP遵循自上而下的方法。
数据的使用
OOP:在OOP中,每个对象都控制其中的数据。
POP:在POP中,大多数函数使用全局数据。
数据访问
OOP:在OOP中,只有特定对象的函数才能访问对象的数据。
POP:在POP中,数据可以在函数之间自由移动。
访问权限修饰词
OOP:OOP有访问说明符,比如Public、Private等。
POP:POP没有任何访问说明符。
数据安全
OOP:由于OOP提供了数据隐藏,所以与程序相关联的数据是安全的。
POP:POP不提供任何数据隐藏方法。因此,数据的安全性较低。
易于修改
OOP:OOP提供了在不修改现有程序的情况下添加新数据和函数的简单有效的方法。
POP:在POP中,如果需要添加新的数据或函数,则必须修改现有程序。
使用的语言
OOP:C++,java,VB.NET版,C#.NET等被OOP使用。
Image Courtesy: “Python logo and wordmark” by www.python.org – https://www.python.org/community/logos/.(GPL) via Comm*** “The C Programming Language logo” by Rezonansowy – This file was derived from: The C Programming Language, First Edition Cover.svg. (Public Domain) via Comm***