SOA is not new architecture, earlier we used COM-DCOM and then after web service/wcf achieve it.
Service Oriented Architecture |
Evolution of SOA
Procedural Programming > Object Orient Programming > Service Oriented Programming
Procedural Programming:
- Function is everything
- How to reuse the same code?
- Difficulties in code Management.
- Classes and Object are everything.
- Object oriented principles - Abstraction, Encapsulation, Inheritance, and polymorphism.
- OOP increased the re-usability and thus improved the code management.
- how to communicate between applications, especially when they have been written using different languages or technologies.
Service oriented Programming
- Service is everything.
- A service is a function that is well-defined, self-contained, and does not depend on the context or state of other services.
- Services communicate with each other using messages. Messages are standard formats(XML/JSON/SOAP) which everyone (every service) can read and understand.