浅谈接口理解

浅谈接口的理解

在这里我想说明的就是接口的重要性。

1、接口的定义:

百度百科给出的定义:

接口(硬件类接口)是指同一计算机不同功能层之间的通信规则称为接口。

接口(软件类接口)是指对协定进行定义的引用类型。其他类型实现接口,以保证它们支持某些操作。接口指定必须由类提供的成员或实现它的其他接口。与类相似,接口可以包含方法、属性、索引器和事件作为成员。

给出的定义相当的抽象,但是总结起来:接口就是一种通信方式。做个比喻就是:接口就是一座桥,让你从桥的这头可以走到桥的那头。

2、接口的特征:

① 抽象

② 隔离(高度抽象的事物其内核界限很清晰)

③ 稳定(其内核是固定不变)

为什么说接口是抽象的。

比如说:

我们在交流的时候,用的是语言。但是我们不会考虑什么是语言,对我们可以说是透明的。而不考虑语言正是将语言的所有细节都隐藏,不需要知道的语言的起源,发展历程等等其他。我们不是语言考古学家。

隐藏细节从而到达一定程度的抽象,并不是绝对的抽象。

隔离怎么理解:

这个不难理解。比如任何的语系都存在不同程度上的隔离,具体点就是英文和汉语,这是种天然的隔离性。在计算机中我们称作正交性,但是要做到,不是件容易的事情。

稳定呢?

抽象的事物自定稳定的属性。因为抽象的事物已将变化的外衣脱去,只留下本质。

稳定也是相对而言:

比如:A提供一套接口给B,A内部的实现可以随时变化,只要接口不变化,B就无需修改。相对于B来说是稳定的。

3、接口的作用

当有明显的模块界限,此时就体现接口,联想到中间有条河,我们怎么到对岸去。而这里的模块不仅是物理实体上的,还是无形无相看不见的。

比如:

1、电脑主机上各种接口,为了和各种外设通信。

2、插座的两孔、三孔,为了给电器提供电能。

2、两个人的对话。两个人都在说普通话,能够正常的交流,接口就是普通话。如果一个人客家话,一人说英文,那么无法沟通。

而计算机的世界接口使用的更频繁。

比如:对象(模块)的之间的通信。

其实我们每时每刻都在使用接口的含义。

4、接口的理解

可以把接口理解为使用标准,这就像是我们过桥渡河就可以,而不必知道这个桥是怎么设计的。而具体的实现是另外一回事,我们不关心。

比如:

1、cpp标准委员会只定义接口以及语义,怎么实现是你们厂商的事。

2、OpenGL也是如此。

3、C++的多态,父类只定义个标准,具体的实现每个子类都是可以自定义。

在学习设计模式的有一条原则**”依赖接口编程”**,初读并没有体会,直到工作多年,才有所体会。现在每次和同事对接第一句就先把接口定义下来,接口的稳定意味着对变化的隔离,将变化关进笼子

在这里不得不说windows系统把兼容做到极致,20年前的windows程序,放到现在Windows11依然能跑,其核心就是保持接口的稳定。为了保持接口的稳定windows也是付出了昂贵的代价。

5、什么不是接口???

接口是一种通信方式,即是通信那么必然涉及到2方以上,单独一方是没有意义的。但是实际生活中,我们讨论问题往往都会忽略上下文的环境,默认是存在的。

比如:

1、筷子,单独说筷子没意义。但是我说要吃饭了,那么筷子此时就是接口了(接口可以一方提供,也可以是第三方提供)。因为要把饭菜从碗里送到我的嘴巴里。

2、笔,单独说笔没意义。但是通过笔,将我想说的话,写出来,同大家一起讨论。此时的笔就是接口,将我的心里话写出来,让大家知道。

6、总结

我觉得接口最重要的特性就是将变化关进笼子里,即解耦。

我们写代码的时候要有一种接口思维,该暴漏什么,该隐藏什么。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1543391.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

【C语言从不挂科到高绩点】21-指针03-指针与函数【重点知识】

Hello!彦祖们,俺又回来了!!!,继续给大家分享 《C语言从不挂科到高绩点》课程!! 本节将为大家讲解C语言中非常重要的知识点-指针: 本套课程将会从0基础讲解C语言核心技术,适合人群: 大学中开设了C语言课程的同学想要专升本或者考研的同学想要考计算机等级证书的同学想…

死磕P7: JVM内存划分必知必会(一)

这是「死磕P7」系列第 001 篇文章,欢迎大家来跟我一起 死磕 100 天,争取在 2025 年来临之际,给自己一个交代。 JVM 内存区域划分是面试常考点,属于死记硬背型,比较让人头大的是不同版本的 JDK 具有不同的划分方式&…

Shopee虾皮双十大促:广告到底怎么做?需要使用动态代理吗?

在Shopee虾皮下半年的大促活动中,即将到来的10.10超级品牌节就是下半年各个超级购物节的其中一个,抓住本次大促的机会,卖家就有机会在更短的决策时间内实现更高的转化。大促期间最重要的环节之一就是广告投放,而广告投放又有什么技…

公司电脑监控都监控什么?可以看到员工摸鱼吗?电脑监控功能全解析!【2024年必看】

在这个数字化时代,企业对于信息安全和工作效率的追求日益增强。 公司业务规模的扩大,员工数量激增,如何有效管理员工行为、保障企业信息安全成为了每个管理者必须面对的重要课题。 于是,公司电脑监控成为了许多企业的选择&#…

全方位洗衣洗鞋小程序系统,重塑干洗店服务新体验;

全方位洗衣洗鞋小程序系统,重塑干洗店服务新体验; 一、核心功能革新: 1.多元化下单模式:融合上门取送、到店服务、寄存网点及智能衣柜四种便捷方式,用户轻松一键下单,享受个性化服务。 2.从下单到送回,全程…

从零开始讲DDR(3)——DDRC与DDRPYH

一、DDR的使用 在之前的文章中我们介绍了DDR的基本概念,但是DDR内存的操作不仅仅是简单的数据读取和写入,它包括许多时序要求和信号调度。为了让DDR内存有效运作,系统需要在逻辑层和物理层之间进行大量的协作。我们拿出一张DDR的操作简化状态…

YOLOv8改进,YOLOv8 Neck结构引入BiFPN

摘要 模型效率在计算机视觉中变得越来越重要。本文系统地研究了神经网络架构设计选择用于目标检测,并提出了几项关键优化以提高效率。首先,提出了一种加权双向特征金字塔网络(BiFPN),它允许轻松快速的多尺度特征融合;其次,提出了一种复合缩放方法,该方法同时均匀地缩放…

数通。。。

通信:需要介质才能通信电话离信号塔(基站)越远,信号越弱。信号在基站之间传递。你离路由器越远,信号越差。一个意思 比如想传一张图片,这张图片就是数据载荷 网关,分割两个网络。路由器可以是网…

对接空号检测平台可以降低成本吗

空号检测主要关注的是电话号码的状态,如是否为空号、停机、关机等,它并不直接针对语音助手进行拦截。 呼叫中心系统对接空号检测确实可以在一定程度上降低成本,主要体现在以下几个方面: 1.提高接通率:空号检测能够剔除…

一文搞懂MES与MOM系统的区别

随着制造业信息化的不断发展,越来越多的企业开始引入信息化系统来提升生产效率与管理能力。在众多系统中,制造执行系统(MES)与制造运营管理(MOM)是最常见且重要的两种系统。然而,许多人对这两者…

增强现实系列—Diffusion Time-step Curriculum for One Image to 3D Generation

🌟🌟 欢迎来到我的技术小筑,一个专为技术探索者打造的交流空间。在这里,我们不仅分享代码的智慧,还探讨技术的深度与广度。无论您是资深开发者还是技术新手,这里都有一片属于您的天空。让我们在知识的海洋中…

C++笔记---set和map

1. 序列式容器与关联式容器 前面我们已经接触过STL中的部分容器如:string、vector、list、deque、array、forward_list等,这些容器统称为序列式容器,因为逻辑结构为线性序列的数据结构,两个位置存储的值之间一般没有紧密的关联关…

灾难级漏洞:阿里云盘可看别人隐私照?2亿用户或面临隐私泄露隐患

此次事件将阿里云盘的数据安全问题推至风口浪尖,对其品牌信誉和市场地位构成严峻挑战。 转载:科技新知 原创 作者丨江蓠 编辑丨蕨影 阿里云盘惊现灾难级别bug! 9月14日晚,多名网友爆料称,可以在阿里云盘的相册中看到其…

三线城市的女玩家们不想“谈恋爱”,小游戏掘金新蓝海

女性玩家的游戏选项只有乙游吗? 在7月举办的微信小游戏开发者大会上,微信小游戏团队公布了一系列最新运营数据。数据显示,微信小游戏的用户规模已突破十亿大关。从用户画像来看,其年龄层主要集中在24至40岁之间,且三线…

一文读懂HPA弹性扩展自定义指标和缩放策略

一文读懂HPA弹性扩展自定义指标和缩放策略 目录 1 概念 1.1 什么是HPA1.2 HPA 的自定义指标(Custom Metrics)与扩展1.3 基于多指标的 HPA 1.3.1 工作原理1.3.2 例子:基于 CPU、内存和 QPS 的 HPA 配置 1.4 HPA 的扩缩容行为(Beh…

集合根据上下级关系转树结构

1、创建实体对象 public class TreeNode {private String id;private String pid;private String name;private List<TreeNode> children;public TreeNode(String id,String pid,String name){this.id id;this.pid pid;this.name name;}public String getId() {retur…

VBA日历进度

hi&#xff0c;大家好&#xff01; 经过两次台风的洗礼之后&#xff0c;我们这里终于开始降温了&#xff0c;终于感觉到秋天的存在了&#xff01;时间也在一天天的过去&#xff0c;马上要十一假期了&#xff0c;十一过了&#xff0c;就可以算着过年了&#xff0c;让今天就让我…

OpenAI o1的真正前世竟来自字节?ReFT技术超越传统的数学微调能力,让GPT实现进化

导语&#xff1a; 随着ChatGPT-o1的发布&#xff0c;大型语言模型在复杂推理上取得进展&#xff0c;但传统监督式微调&#xff08;SFT&#xff09;仍存在局限。字节跳动研究院提出的增强微调&#xff08;ReFT&#xff09;技术结合了SFT和PPO算法&#xff0c;旨在提升模型泛化能…

HCIP考试范围包含哪些内容?HCIP备考指南分享

在数字化浪潮汹涌的今天&#xff0c;网络技术已成为支撑现代社会高效运转的不可或缺之力。Huawei Certified ICT Professional(HCIP)认证&#xff0c;作为这一领域中的精英标识&#xff0c;正吸引着无数技术爱好者的目光。那么&#xff0c;那么要考取这一认证需要掌握哪些考试内…