扫码阅读
手机扫码阅读

浅析面向过程、面向对象和面向协议编程

157 2024-07-14

我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。

查看原文:浅析面向过程、面向对象和面向协议编程
文章来源:
程序员华仔
扫码关注公众号
编程范式摘要

编程范式摘要

面向过程编程:以过程为核心,通过函数实现系统或业务的步骤。关注如何处理系统或业务的步骤。代表性语言包括C语言。

面向对象编程:以对象为中心,采用“万事万物皆为对象”的思想设计和开发系统。主要将业务拆解为对象,并着重处理对象间的关系。起初以Smalltalk语言为基础,后续C++和Java发展了OOP的概念。

面向协议编程:简称POP,是由Apple在WWDC2015推出,成为Swift基础库的编程范式。协议(Protocol)类似于Java中的Interface,但有所不同,主要用于模块间通信。协议在Objective-C中常与delegate结合使用,并可以通过协议实现类似多重继承的效果。Swift4.0.3版本之后,协议扩展还可实现多态功能。协议定义了一套规范,可被类、结构体和枚举遵循。

面向协议的编程目前主要在Swift语言中实现。与传统的OOP不同,POP不是创建类和实例来管理业务,而是首先定义一整套协议。例如,通过定义性别(Sex)、语言(Language)、人(Person)等协议,再让如Teacher类遵循这些协议来实现功能。从本质上看,POP是定义通用、可复用的最小原子规范,使其适应多样化的实例。

面向协议编程的优势:

  1. 协议可扩展且不影响现有系统。
  2. 协议可复用,更有效利用现有资源。

想要了解更多内容?

查看原文:浅析面向过程、面向对象和面向协议编程
文章来源:
程序员华仔
扫码关注公众号