在过去的几年里,全球的API经济在以难以置信的程度进行快速的增长。物联网、人工智能、自动驾驶等等众多令人印象深刻的技术繁荣发展,这也从侧面证明了API对于整个技术圈的重要性,也预示着在不久的将来它将变得更加的重要。
在过去的概念中,API的设计通常以使用者为中心,这相当于:企业已经开发出了一个有着大量数据的程序,然后决定通过以API的形式向所有开发者提供服务。然而在近几年,有不少企业在WEB端和移动端的开发方式上有所改变——越来越多的企业选择了所谓“API优先”的软件开发策略,而这种策略为他们带来了众多的优势和许多潜在的利益。接下来,我们将深入研究“API优先”的软件开发策略是什么,然后再讨论为什么我们建议大家都应该去尝试。
什么是“API优先”的软件开发方式?
在以前,许多企业常考虑为其网站、WEB端应用或移动应用构建API的出发点,是将API作为集成开发的入口向第三方开发者提供的。而在大多数情况下,API和应用程序服务往往会被视为两个独立的渠道。然而这些企业很快就意识到了,使用这种方式将难以进行测试,并且很难同时更新维护两者。而为了解决这个问题,我们建议使用一种更好的方法来进行处理——首先构建API,再在其上构建WEB或移动端的应用程序。通过这种方式,我们最终将得到一个更为通用和优质的API,你可以发现这将更为实用,且对开发人员更加的友好。
基本上,“API优先”的策略意味着在构建项目之前,必须先根据开发人员关注的焦点构建API。“API优先”的方法适用于网站开发、移动和WEB端应用程序开发,以及SaaS软件的开发。应用这种策略,不仅可以帮助企业节省大量的人员时间和精力,也可以为第三方开发者在使用的时候打下坚实的基础。
构建一个基于云端的应用程序不仅仅是一个个认项目那么简单,在一开始需要检查代码,然后进入数据库对即将向代码进行改动的服务进行开发。众多团队都必须在前端和后端和这个项目进行协作,而所有这些团队的都在构建同等重要的依赖性服务。由于所有的团队的开发速度不尽相同,在缺乏纪律性和指导性框架的情况下,这非常有可能导致长期出现集成失败的情况发生。
然而通过“API优先”的软件开发方式,团队之间彼此可以很好的协作,不会因为妨碍或篡改了应用程序的内部开发代码,从而避免或者减少失败的可能性。更重要的是,“API优先”的策略也适用于不太复杂的开发生态系统。从API级别开始启动项目有非常多的有点,接下来我们将对其中一部分进行讨论。