When I am looking into approach's used for the development of API's, I came across multiple approaches like Code-First, API-First, Design-API-First.
I clearly understand Code-First approach how it is difference from other two. But I am not able to get the exact difference between API-First and Design-First approach.
Summary from links:
API First:
- API's are considered as first class citizens by the organization.
- You design each of your APIs around a contract written in an API description language like Open API for consistency, reusability, and broad interoperability.
Design-API-First:
- Describing every API design in an iterative way that both humans and computers can understand before you write any code.
- API design-first is about the process of creating the API itself.
- In design API first approach there will be lot of collaboration in designing of the API.
My understanding by far:
- I feel 1 and 2 points of Design-API-First is saying same thing as API First because for example Open API specification is understood by both humans and computers. Is there anything more to it?
- So, the only difference there will be collaboration added here by involving stack holders, developers, customers etc?
- So, when we use Design API First, we can say we are also using API-First?
References:
Probably I am able to get the exact context from the following links, please use them and see if you can get the right understand of it and address this question.