首页 > 编程语言 >如果今天没有API接口,今天的程序员如何编程?

如果今天没有API接口,今天的程序员如何编程?

时间:2023-03-06 15:31:50浏览次数:58  
标签:Web 调用 编程 接口 程序员 API 今天

这是一个非常有意思的问题,作为一名从业多年的程序员,我来回答一下这个问题。

如果今天没有API接口,今天的程序员如何编程?_API

首先,接口是程序设计过程中最为常见的元素,不论是研发级程序员还是应用级程序员,在日常的编程过程中都是离不开接口的。接口可以看成是程序设计过程中连接各种资源的方式,在按角色开发的时代,程序员不可能一个人完成所有从硬件到软件的开发过程,所以如果没有接口的帮助,整个软件开发将无法实现规模化发展。

在云计算技术逐渐普及的当下,接口对于程序设计的意义得到了进一步的体现,现在的接口也进入到了“微接口”时代,以适应大数据时代对于程序设计的要求。所谓的“微接口”是对应于“微服务”的概念,使得程序的调用更轻,也更容易实现模块化封装。当然,微接口的编程对于云计算平台提出了更高的要求,尤其是对于PaaS的要求。

如果当前的程序员无法通过接口来完成资源的整合,那么程序设计体系将出现巨大的变化,从目前的技术体系结构来看,完全脱离接口进行编程是不现实的。也许在未来的人工智能时代,程序员可以只关心业务逻辑,而无需关心各种资源的整合,那个时候也许接口将会以另一种形式来呈现。

程序员如果脱离接口进行编程将面临三大障碍,其一是如何完成硬件资源的管理;其二是如何完成各种开发资源的调用;其三是如何完成功能的扩展。当然,如果没有接口的支持,这些工作都需要程序员从头开始做,那么在当前的技术体系结构下,这种开发方式是不可想象的,也并不是“996”能够解决的问题。

我从事互联网行业多年,目前也在带计算机专业的研究生,主要的研究方向集中在大数据和人工智能领域,我会陆续写一些关于互联网技术方面的文章,感兴趣的朋友可以关注我,相信一定会有所收获。

如果有互联网、大数据、人工智能等方面的问题,或者是考研方面的问题,都可以在评论区留言,或者私信我!

什么是API接口,具体是什么意思?

作为软件应用而言,很多资源和数据不一定就是由其自身提供的,某些功能还是需要调用第三方提供的服务,这其中就涉及到API接口的调用。

什么是API接口?

API是指应用程序编程接口,我们通过API接口可以实现特定的功能,而不需要了解其内部实现细节。可以把API接口理解为是特定服务的一种封装,将服务封装起来提供给他人调用,这样一来很多功能不需要从新开发。

举个例子,我们想要知道一周天气如何,如果由自己来实现这个功能很难,因为天气数据只有气象部门才知道。那该如何知道天气信息呢?气象部分提供数据API给我们使用,我们只要输入地区就会知道该地区一周的天气情况,但我们并不需要了解这天气预报是如何实现的。

另外,不同系统和编程语言之间的数据通讯往往也采用API形式进行数据交接。

​常见的API形式有哪些?​​​

上面我们说到了,API其实就是一类服务的封装。我们可以使用不同的编程语言编写API,开发习惯和编程语言的不同导致API风格也存在差异。常见的API有以下几种形式:

1、HTTP类型接口

基于HTTP协议提供的API,这类API常常以“网址”形式提供的,像现在主流的RESTful就属于这类接口。

2、RPC接口

RPC它是指远程过程调用,将一部分代码逻辑放在远程服务器上部署,然后在需要的地方调用即可(调用远程方法就像调用本地方法一样),本质上是Client/Server模式,而且支持多种协议和数据传输方式。

3、Web Service 接口

Web Service并不具象地指某种API,我们将以WEB形式提供的服务都称之为Web Service,像RESTful也属于Web Service。

标签:Web,调用,编程,接口,程序员,API,今天
From: https://blog.51cto.com/u_15964265/6103161

相关文章

  • APIO 2013 T1 ROBOTS
    每个机器人只能和相邻的机器人合并,转成人话就是任何的合并机器人只能是一段区间。而且机器人之间的行动互不干扰。那么就是区间\(dp\)了。设\(dp_{l,r,x,y}\)表示令由......
  • APIO 2013 T2 Toll
    想要解决这道题的最大难点是:如果我们前面插入了边的话,可能会改变树的形态,从而对后面的点的安排产生影响。每次都需要重构树形态。考虑消除顺序的影响,枚举最终加入生成树的......
  • 调用api接口提示跨域问题
    什么是跨域?浏览器从一个域名的网页去请求另一个域名的资源时,域名、端口、协议任一不同,都是跨域跨域的几种情况1、端口和协议的不同,只能通过后台来解决2、localhost和12......
  • EBS API:EBS用户导入并分配职责
    1.创建用户并关联员工declareln_employee_namevarchar2(50):='TEST001';v_employee_checknumber;ln_person_idnumber;begin--检查员工是......
  • #yyds干货盘点# LeetCode程序员面试金典:交换和
    题目:给定两个整数数组,请交换一对数值(每个数组中取一个数值),使得两个数组所有元素的和相等。返回一个数组,第一个元素是第一个数组中要交换的元素,第二个元素是第二个数组中要交......
  • golang jenkinsapi 批量构建jenkins job
    golang批量构建jenkinsjob   py批量构建jenkinsjob是,若job在某个floder下面则无法调用,目前测试发现只要job在jenkins根目录下才可调用,不够灵活。golang则没有这......
  • napi 简单使用
    内容来自官方文档,主要是体验下napi的使用安装clinpminstall-g@napi-rs/cli创建按照提示操作,比如我的package名称为@dalongrong/napi-demo......
  • 02-Redis系列之-架构和高级API的使用
    通用部分通用命令#1-keys#打印出所有keykeys*#打印出所有以n开头的keykeysn*#打印出所有以nam开头,第四个字母是a到z的范围keysnam[a-z]#四位长度,以n开......
  • napi 基于rust 开发nodejs addons 的框架
    目前基于rust开发nodejsaddons的框架是很多了,而且都不错,同时对于安装会基于跨平台构建+githubrelease模式进行安装(对于企业内部不是很友好)napi是一个新的基于rust的......
  • ES6-ES11 Set集合介绍与API
    原视频<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width,initial-scale=1.0"><title......