硬件中的“接口”概念--------------------------
硬件接口即I/O设备适配器,具体指CPU和主存、外围设备之间通过总线进行连接的逻辑部件。
接口部件在它动态连接的两个部件之间起着“转换器”的作用,以便实现彼此之间的信息传送。
为了使所有的外围设备能够兼容,并能在一起正确地工作,CPU规定了不同的信息传送控制方法。 一个标准接口可能连接一个设备,也可能连接多个设备。
典型的接口通常具有如下功能:
1控制
接口靠程序的指令信息来控制外围设备的动作,如启动、关闭设备等。
2缓冲
接口在外围设备和计算机系统其他部件之间用作为一个缓冲器,以补偿各种设备在速度上的差异。
3状态
接口监视外围设备的工作状态并保存状态信息。状态信息包括数据“准备就绪”、“忙”、“错误”等等,供CPU询问外围设备时进行分析之用。
4转换
接口可以完成任何要求的数据转换,例如并--串转换或串--并转换,因此数据能在外围设备和CPU之间正确地进行传送。
5整理
接口可以完成一些特别的功能,例如在需要时可以修改字计数器或当前内存地址寄存器。
6程序中断
每当外围设备向CPU请求某种动作时,接口即发生一个中断请求信号到CPU。
事实上,一个适配器必有两个接口:
一是和系统总线的接口,CPU和适配器的数据交换一定的是并行方式;
二是和外设的接口,适配器和外设的数据交换可能是并行方式,也可能是串行方式。根据外围设备供求串行数据或并行数据的方式不同,适配器分为串行数据接口和并行数据接口两大类。
编程中的“接口”概念--------------------------
编程中所谓的接口,实际上也是一个类,只是在接口中声明了一组常量和方法,但事实上没有实现任何方法。这有点类似抽象类,接口需要其他类来提供实现自己所定义方法的过程,而不是自己提供。
这里的用接口实现多继承实际上就是可以用类来实现多个接口中的方法。
*** 作系统的API可用来分配内存或访问文件。许多系统与应用程序提供API接口与实现,比如图形系统,数据库,网络,Web服务,甚至于某些游戏。
一组API经常是一套软件开发工具包(Software Development Kit,SDK)的一部分。SDK亦可包含其它工具亦或至于硬件,两个术语并不完全等同
API又分为(Windows、Linux、Unix等系统的)系统级API,及非 *** 作系统级的自定义API。作为一种有效的代码封装模式,微软Windows的API开发模式已经为许多商业应用开发的公司所借鉴,并开发出某些商业应用系统的API函数予以发布,方便第三方进行功能扩展。如Google、苹果电脑公司,以及诺基亚等手机开发的API等等。
API有诸多不同设计。用于快速执行的接口通常包括函数,常量,变量与数据结构。也有其它方式,如通过解释器,或是提供抽象层以遮蔽同API实现相关的信息,确保使用API的代码无需更改而适应实现变化。
API:应用程序接口(API:Application Program Interface)应用程序接口(API:application programming interface)是一组定义、程序及协议的集合,通过 API接口实现计算机软件之间的相互通信。API 的一个主要功能是提供通用功能集。程序员通过使用 API函数开发应用程序,从而可以避免编写无用程序,以减轻编程任务。 API 同时也是一种中间件,为各种不同平台提供数据共享。根据单个或分布式平台不同软件应用程序间的数据共享性能,可以将 API 分为四种类型:远程过程调用(RPC):通过作用在共享数据缓存器上的过程(或任务)实现程序间的通信。 标准查询语言(SQL):是标准的访问数据的查询语言,通过通用数据库实现应用程序间的数据共享。 文件传输:文件传输通过发送格式化文件实现应用程序间数据共享。 信息交付:指松耦合或紧耦合应用程序间的小型格式化信息,通过程序间的直接通信实现数据共享。 当前应用于 API 的标准包括 ANSI 标准 SQL API。另外还有一些应用于其它类型的标准尚在制定之中。API可以应用于所有计算机平台和 *** 作系统。这些 API以不同的格式连接数据(如共享数据缓存器、数据库结构、文件框架)。每种数据格式要求以不同的数据命令和参数实现正确的数据通信,但同时也会产生不同类型的错误。因此,除了具备执行数据共享任务所需的知识以外,这些类型的 API还必须解决很多网络参数问题和可能的差错条件,即每个应用程序都必须清楚自身是否有强大的性能支持程序间通信。相反由于这种 API只处理一种信息格式,所以该情形下的信息交付 API 只提供较小的命令、网络参数以及差错条件子集。正因为如此,交付 API方式大大降低了系统复杂性,所以当应用程序需要通过多个平台实现数据共享时,采用信息交付 API 类型是比较理想的选择。API 与图形用户接口(GUI)或命令接口有着鲜明的差别:API 接口属于一种 *** 作系统或程序接口,而后两者都属于直接用户接口。有时公司会将 API 作为其公共开放系统。也就是说,公司制定自己的系统接口标准,当需要执行系统整合、自定义和程序应用等 *** 作时,公司所有成员都可以通过该接口标准调用源代码,该接口标准被称之为开放式 API。
引出程序接口是引出几根线。程序接口是 *** 作系统为用户提供的两类接口之一,编程人员在程序中通过程序接口来请求 *** 作系统提供服务,在硬件来讲,接口就是设备与设备之间进行相互通信的端口,通常是引出几根线。
随着软件规模的日益庞大,需要把复杂系统划分成小的组成部分,编程接口的设计十分重要。程序设计的实践中,编程接口的设计首先要使系统的职责得到合理划分。良好的接口设计可以降低系统各部分的相互依赖,提高组成单元的内聚性,降低组成单元间的耦合程度,从而提高系统的维护性和扩展性。
API之主要目的是提供应用程序与开发人员以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。提供API所定义的功能的软件称作此API的实现。API是一种接口,故而是一种抽象。 A reference implementation of an API is the implementation created by the designer of the API, or one which other implementations of the API are expected to be compared against
例如,图形库中的一组API定义调用绘制图标函数的方式,以于屏幕上显示图标。程序中调用,编译时连接到这组API,执行时便调用API的实现(库)来显示图标。
以上就是关于怎样理解编程时常说的“接口”这个名词全部的内容,包括:怎样理解编程时常说的“接口”这个名词、应用程序接口的系统分类、什么是引出程序接口等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)