Hello,
SOA emerged in the early 2000, and can be defined as an architecture pattern based on the concept of business service. Each application is considered through the business services it provides to other applications. SOA is consequently a model of distributed architecture, where all the applications collaborate through business services, in a supplier / consumer relationship.
So, this is the theory, and in practice, SOA was widely implemented with SOAP Web Services and XML grammar. Many people make the confusion between SOA and SOAP, although one is the "what", and the other the "how".
Now, if you consider API, it is a technical pattern which originally came from the Web developpers, in order to provide API over internet for Web and mobile applications. An API is implemented over REST protocol, and generally with JSON grammar.
If you look at what an API is, you will find again the concept of business service, but in a slightly diffrent approach compared to SOAP : API tend to expose business objects (this is the concept of resources) and standard verbs to deal with them (GET, PUT, POST...) whereas SOAP exposes custom verbs (eg : getCustomerOrder, updateCustomerOrder).
So, to conclude, API is quite diffrent from SOAP, but both implement SOA concepts.
Today, API is more and more popular, mainly because it is simpler and lighter than SOAP.
------------------------------
Matthieu LEMOINE
Senior Enterprise Architect
Sopra Steria - Telecom, Media & Entertainment
------------------------------
Original Message:
Sent: 09-15-2017 00:55
From: Dev Shyam
Subject: What is the difference between an API and SOA
There is no difference - both can be designated as API's but modern API's are resource based and more fine - micro based. SOA is heavy while modern API's are light weight.. there are several other reasons...
What is the context of your question ?
------------------------------
Dev
Original Message:
Sent: 09-14-2017 02:48
From: Saanvi iamsaanvig@gmail.com
Subject: What is the difference between an API and SOA
There are a lot of What is the difference between...
questions out there but I couldn't find this one.
Wikipedia says this about an API
An application programming interface (API) is a source code-based specification intended to be used as an interface by software components to communicate with each other.
And this about SOA
SOA also generally provides a way for consumers of services, such as web-based applications, to be aware of available SOA-based services.
Aren't both technologies where you present services to other services?
Could someone expand on this?
------------------------------
Saanvi iamsaanvig@gmail.com
TO BE VERIFIED
------------------------------