在过去的几年里,全球API经济在以难以置信的速度进行快速地增长。物联网、人工智能、自动驾驶等等众多令人充满期待的技术正蓬勃发展,这也证明了API对于如今整个技术圈子的重要性,也预示着在不久的将来它还将变得更加重要。
在过去的概念中,API的设计是以使用者为中心进行的,相当于是企业已经开发出了一个有着大量数据的程序,然后以API的形式向所有开发者提供服务。然而在近几年,有企业在WEB端和移动端的开发方式上有所改变——越来越多的企业选择了“API优先”的软件开发策略,而这种策略为他们带来了巨大的优势和潜在的利益。接下来,我们将深入研究“API优先”的软件开发策略是什么,为什么企业都会选择这种策略。
什么是“API优先”的开发方式?
以前,有些企业考虑为其网站、WEB端应用或移动应用构建API的出发点时,通常是将API作为集成开发的入口向第三方开发者提供的。但在大多数情况下,API和应用程序服务往往会被视为两个独立的渠道。所以在进行的过程中,这些企业很快就意识到了,使用这种方式将难以进行测试和同时维护。而为了解决这个问题,我们可以使用一种更好的方法来进行处理——首先构建API,再在其上构建WEB或移动端的应用程序。通过这种方式,我们将得到一个更优质和实用的API,这样也方便了开发人员进行后续开发。
总结来说,“API优先”的策略意味着在构建项目之前,必须先根据开发人员关注的重点构建API。“API优先”的方法适用于网站开发、移动和WEB端应用程序开发,以及SaaS软件的开发。应用这种策略,不仅可以帮助企业节省大量的工作时间和精力,也可以为第三方开发者在使用的时候打下坚实的基础。
构建一个基于云端的应用程序并不简单,需要在一开始就检查代码,然后进入数据库时,对有改动过代码的服务进行优先开发。众多开发团队都必须对具体项目进行前后端协作,而所有这些团队的前后端都有依赖性服务。由于团队内部的开发速度不尽相同,在缺乏指导性框架的情况下,这很大可能会导致出现同步失败的情况发生。
然而通过“API优先”的软件开发方式,团队之间彼此可以很好的协作,不会因为妨碍或篡改了应用程序的内部开发代码,从而导致失败。更重要的是,“API优先”的策略也适用于开发生态系统。从API的层级就开始启动项目有非常多的优点,接下来我们将对其中一部分进行讨论。
API优先战略的好处
在决定开始构建API时,作为项目规划的一个组成部分,我们需要先回答一些关键问题。首先我们必须先确定构建API背后的两个要素:确定项目的目标受众到底是谁;我们针对使用者设定了什么样的功能。而在规划阶段确认了这两个要点之后,我们还可以考虑,在进入设计阶段和创建API架构前,这种策略还能够给软件开发带来什么好处。
1.从零开始,轻装上阵
使用API优先的设计最明显的优势就是:不考虑任何现有的IT框架,创建API和基于API的应用程序将变得非常简单。借助API优先的策略,所有的项目参与者都可以基于构建的API,随时随地的进行沟通协作、设计和开发。这意味着开发过程将不受到任何限制,所有的IT基础架构都可以随时去适应API,而不是去改变API的标准,这让团队有了一个共同的基础标准。通过这种方式,团队可以很轻松的进行API测试,并获得所有相关的返回结果。这确保了最终产物是根据团队整体的设计目标进行开发,并能够为用户提供所需的服务。
2.高效统一
越来越多的企业和组织发现,想要提供一个可以在所有设备和平台上能够都顺利执行的程序是非常困难的,这是因为在我们的生活中也产生了越来越多需要不同兼容的设备。API优先策略使得在API层之上构建单个应用程序成为了可能,这让企业在各种不同的平台上为各种应用程序提供服务的同时,能够高效的对兼容性进行支持。除了简化开发工作之外,这种方法也使得所有在平台上维护和更新应用程序的过程变得简单,而不需要考虑这是基于本地或者WEB端的移动或非移动平台的日常问题。
3.快速易懂
这是API的基本特性之一。为了让API能够无缝使用,即使使用者没参与到API的创建当中,也应该很容易理解API的构成。要达到这一特性,就意味着有着清晰而全面的接口文档,以供使用者快速理解和使用。
API优先的策略可以非常轻松的呈现结构化文档,文档中应当按照资源类型、标题、请求参数、返回格式等模式进行标准化撰写,这让使用者在查看API文档和理解其功能时更加的容易。
现在,你会发现有许多工具和标准可以支持API优先开发。有一个好的API编写规范是十分重要的,而现在国内API市场虽产品众多,但功能参差不齐,找到一个全面而且稳定的工具很难。我向你推荐使用EOLINKER进行API管理,清晰的界面让你更好的对文档进行编写、测试、协作,可以直接读取代码注释生成文档,还能快速进行API测试等,这有助于企业内部构建一个完整的API研发管理系统,对提升企业的API管理的开发效率非常有用,对API管理、测试等方面有兴趣的小伙伴请点击链接了解下哦!
https://www.eoLInker.com
而除了遵循标准化的格式之外,“API优先”的设计方法可以在不可避免的情况下,清楚地记录实际与标准情况的偏差情况,以便让团队更好的解决潜在的问题。
4.快速适应,无惧变化
尽管许多企业会认为从应用程序的实现中独立处API会更加困难,但是采用API优先的策略可以很好的将应用程序的实现和API开发独立起来。只有在这种情况下,API才不会是一个滞后的层级,反而是一个独立且重要的规范。
使用“API优先”的策略,将使得程序的开发和优化获得更强的适应能力。随着功能的慢慢增加,我们的应用程序将会在一个非常好的规范下不断的增长,从而增强整体的灵活性,并为后期功能的增加和迭代留出足够的空间。尽管变化和修改是不可避免的,但在实际开发之前做好API的规划,会是一个降低变化带来系统受损概率的最好方法。
5.API的自立
在很长一段时间里,“在API的基础上可以搭建起一个成功的企业”被认为是妄想而奇怪的想法,因为大家都认为在进行商业交易之前,我们必须要有一个完整的应用程序(软件)作为可售卖的商品。
而在今天,我们不仅看到了许多使用“API优先”策略的企业,甚至是其商业模式就是“API就是一切”的企业,例如STRip、TwiLIo等只提供API服务作为其唯一的产品的企业。这是API在现今越来越受到重视的例子,按照这个趋势继续发展,“API优先”策略的普及型和受欢迎程度,很有可能在未来的几年里会达到顶峰。
综合以上的所有优点,我们不难得出“API优先”的软件开发方式确实是一个很不错的主意,但需要注意的是,这并不代表它一点缺点都没有。有一个很明显的问题就在于每一个项目都缺乏实际功能作为依据,这就意味着有可能每天都提出一个全新的API,但却无法提供其所具备的功能。而这就是“API优先”策略为数不多的缺点之一。
结论
“API优先”的方法是在之前未曾考虑的想法,而如今API这个词逐渐地被大家所熟知,因此这种做法将会被更多地采用。当然,我们不能完全改变现在仍然作为主流的“消费者优先”的方式,但随着时间推移,我们可以期待越来越多的公司开始尝试以“API优先”的方法,并在此之上不断的改进和优化。
作者:Rachel Dinkin
原标题:How Companies Benefit From an API-First Approach
原文地址:https://dzone.com/articles/how-companies-benefit-from-an-api-first-approach