内部api的设计,主要是为了简化软件的开发,简化系统和操作过程。目前绝大多数用例是这样的。

内部api经常被忽略,因为它们是针对内部开发人员的。这种类型的api通常使用于特定公司及其部门的专用数据。尽管这些数据必须受到保护,但使用这些数据的人也必须能够访问这些数据。使用内部api则可以允许这种安全的访问,为他们的产品创建更高效的开发周期。

同样的,私有化的API允许在同一公司内工作的开发人员访问公司数据和应用程序的某些部分。这些API可以用来创建可公开访问的应用程序,但是API本身只能由公司自己的开发人员使用。

私有化API允许开发人员通过提供集中的内部软件数据资源来高效工作。开发人员可以使用这些资源构建多个、不同的应用程序和产品,这些应用程序和产品后续可以被公众访问。这简化了开发,减少了资源负担,使公司能够向客户提供更多的服务和产品。

# 内部API的好处

首先,一个基本原则是api开发必须以业务价值为核心。内部API应该通过节省成本、加快上线时间以及提高产品和服务质量等因素来增加附加价值。

•内部API使开发人员能够快速、安全地构建新的相关应用程序。API是连接业务不同部分的抽象层,这一层需要快速适应不断变化的需求,为开发过程带来灵活性。

•API允许使用共享资源的跨部门交互。这些API在保证数据可访问性的同时确保了数据的安全。这是通过将数据消耗与API访问的底层数据系统脱钩来实现的。

•跨部门的API可以根据相关部门的具体需求定制,从而实现更有效的交互。一贯设计的RESTfulAPI提供了实现这一效率的强大方法。

•随着项目的增长和变得更加复杂,API生态系统允许跨多个应用程序和渠道进行高效开发。这样可以有一个简化的服务,提供实时的信息。

•内部API允许通过简单的API(而不是重量级定制代码)实现现有任务的自动化。不需要专门的连接器或专有集成,这种后端自动化是一种简化的方式,以节省时间和金钱。

•利用Eolinker将使您的项目能够在不损害数据安全或功能的情况下,以很小的成本实现其服务的自动化和扩展。

# 我需要API吗?

API通过释放信息资产的力量来支持数字策略和数字转换。但是要提醒开发人员--开始一个API程序确实有它的缺陷。

•API策略:如果不首先了解API对业务的影响,就不应该启动API计划;业务问题正在解决,业务的好处是什么?它能给你更快的上线时间吗?它能帮助你拓展新的客户或市场吗?它是降低成本还是提高效率?重要的是要理解API是实现目标的手段。除非对这些目标有很好的理解,除非成功对业务实际意味着什么,否则API计划很可能无法满足预期。

•产品知识:API产品是无形/数字产品,满足了应用程序开发人员的需求,他们寻求快速访问信息、功能和创新,这是交付预期产品所必需的。您可能拥有这个星球上最好的API,但是如果您不把它作为一个产品来对待,并且不与前景(内部的或非内部的)连接,那么您就无法从它中获得价值。

•API团队的重要性:最成功的API计划侧重于构建API,使开发人员能够轻松地从内部系统访问内容和数据,并具有正确的安全级别和易于使用的访问控制。为此,您需要一个专门的API团队,该团队将完成构建API的核心--将其设置并发布。许多组织认识到打破数据筒仓以更无缝的方式跨部门共享信息的重要性。拥有合适的团队是成功的秘诀。

# 亚马逊的成功

2002年的一天,jeff bezos发布了一项全公司范围的授权,将当时的图书销售商转变为一个价值1b美元的云计算领导者基础设施即服务(IaaS)api。备忘录就是这样的;

•此后,所有团队都将通过服务接口公开他们的数据和功能。

•团队必须通过这些接口相互通信。

•不允许任何其他形式的进程间通信:不直接链接,不直接读取另一个团队的数据存储,没有共享内存模型,也没有后门。唯一允许的通信是通过网络上的服务接口调用。

•他们使用什么技术并不重要。

•所有服务接口,无一例外,必须从根本上设计为可外化。也就是说,团队必须进行规划和设计,以便能够向外部世界的开发人员公开界面。没有例外。

这个API宣言常常被视为亚马逊成功的基石。API是由于该备忘录的结果而建立的。这些API作为AmazonWebServices(AWS)的基础,由Amazon(FBA)和AmazonAlexa实现。而国内包括360集团(奇虎)在内更多都是使用Eolinker,有内的技术团队提供服务支持。

使用地址:www.eolinker.com

# 你也可以像bezos那样

不管是否企业、语言和框架,最好的方法是在准备将其具体化时开发您的内部API。 您不仅将为技术人员构建一个可用的产品来连接、发现和重用IT资产,而且您还将为访问从报告和分析、到构建新应用程序、创建和修改流程--所有这些都不会破坏IT的过程--所需的数据提供自助服务渠道。

来源:Dzone

翻译:Eolinker

转载请注明出处。

【翻译】内部API的价值的更多相关文章

  1. 使用python在SAE上搭建一个微信应用,使用有道翻译的api进行在线翻译

    1. 准备,先在使用python一步一步搭建微信公众平台(一)中基本实现自动回复的功能后,接着在有道词典上申请一个key,http://fanyi.youdao.com/openapi?path=da ...

  2. 在PHP5.4上使用Google翻译的API报错

    /********************************************************************** * 在PHP5.4上使用Google翻译的API报错 * ...

  3. Atitit.常用语言的常用内部api 以及API兼容性对源码级别可移植的重要性 总结

    Atitit.常用语言的常用内部api 以及API兼容性对源码级别可移植的重要性 总结 1.1. 要兼容的重要语言api1 1.2. 常用基础api分类 core api1 1.3. 比较常用的扩展库 ...

  4. 百度翻译&&金山词霸API

    #/usr/bin/env python3 #coding=utf8 """百度翻译api功能实现函数,本模块基于Python3.x实现,getTransResult(q ...

  5. Z-Stack内部API 小结

    Z-Stack是TI推出的全功能ZigBee协议栈,通过了ZigBee联盟的兼容性平台测试,包含如下几个组件. 1. HAL,硬件抽象层 2. OSAL,操作系统抽象层 3. ZigBee Stack ...

  6. 百度翻译新API C#版在 winform,Asp.Net的小程序

    3月的下午,在C#群里日常装逼(聊天), 一兄弟说百度翻译有没有winfrom上用的Demo,问了一天  嫌烦了  我就干脆自己写个: PS 百度上的部分代码害死人啊  api地址都换的不成样了, 还 ...

  7. cordova 内部API 用ssl https,报错

    环境:node6.10.1 cordova 6.x, ionic 2.2.1 用cordova/ionic 建立的app我们的api 地址要用https,做了安全加密之后,按照正常的流程,打包,然后跑 ...

  8. [Medium翻译]RESTful API权威设计指南-设计更好的API

    本文为授权译文.希望查看原文的同学请戳链接:https://hackernoon.com/restful-api-design-step-by-step-guide-2f2c9f9fcdbf 对于我们 ...

  9. 使用百度翻译的API接口

    http://api.fanyi.baidu.com/api/trans/product/desktop 这是申请的接口地址,会得到一个APPID和一个钥密 然后下载PHP的对应的代码 有一个PHP文 ...

随机推荐

  1. kubernetes进阶(五)dashboard--WEB管理

    dashboard是k8s的可视化管理平台,是三种管理k8s集群方法之一 首先下载镜像上传到我们的私有仓库中:hdss7-200 # docker pull k8scn/kubernetes-dash ...

  2. 1.rabbitmq 集群安装及负载均衡设置

    标题 : 1.rabbitmq 集群安装及负载均衡设置 目录 : RabbitMQ 序号 : 1 vim /etc/pam.d/login #对于64位系统,在文件中添加如下行 session req ...

  3. 007.NET5 Log4Net组件使用

    NET 5 Log4Net组件使用 1. Nuget引入程序集:log4net + Microsfot.Extensions.Logging.Log4Net.AspNetCore 2. 准备配置文件 ...

  4. Vue 面试题汇总

    Vue 面试题汇总 refs xgqfrms 2012-2020 www.cnblogs.com 发布文章使用:只允许注册用户才可以访问!

  5. js script all in one

    js script all in one 你不知道的 js secret https://html.spec.whatwg.org/multipage/scripting.html https://h ...

  6. 一个最简单 node.js 命令行工具

    一个最简单 node.js 命令行工具 node.js cli $ node cli.js xyz # OR $ node cli xyz 接受参数 process.argv js "use ...

  7. Unicode & \u2028 & \u2029

    Unicode \u2028 & \u2029 https://stackoverflow.com/questions/16686687/json-stringify-and-u2028-u2 ...

  8. nasm astrncat_s函数 x86

    xxx.asm: %define p1 ebp+8 %define p2 ebp+12 %define p3 ebp+16 %define p4 ebp+20 section .text global ...

  9. Mybatis-05 注解开发

    Mybatis-05 注解开发 注解开发 注解的核心是反射机制 面向接口编程的根本原因:解耦,可拓展,提高复用,分层开发中.上层不用管具体的实现,大家都遵守共同的标准,使得开发变得容易,规范性好. 1 ...

  10. Anno&Viper -分布式锁服务端怎么实现

    1.Anno简介 Anno是一个微服务框架引擎.入门简单.安全.稳定.高可用.全平台可监控.依赖第三方框架少.底层通讯RPC(Remote Procedure Call)采用稳定可靠经过无数成功项目验 ...