In day to day life we use many jargons, particularly in technology industry. In the recent past I have observed that there are some words which are used interchangeably. I heard some people using Framework and Platform interchangeably very often.
Here are my thoughts on the differences.
Framework provides pre-written code which are very common for most of the projects. They provide a
way to extend their code and write your own using their Framework. Eg: Spring, Hibernate are Java based Frameworks. So, It it also tells us that they might have constraints like Java / JDK is required to execute any Spring Framework code. They might or might not work on all Operating systems. Still, it is a framework which provides common functionality implementation for any Java web project.
Final understanding we might get here, Framework is a template / Base / Generic code given to extend and write your own code for your own purpose.
- One level of Abstraction
- Easy to Use (For Developers)
- Less Complex to Understand
Platform is a little bigger thing than Framework, Java is a platform as Java provides a JVM(Java Virtual Machine), SDK(Software development Kit), Libraries / APIs (Application Program Interface). Using Java you can write Desktop applications/ Web Applications etc. Java has a stack of Frameworks supporting many applications. Java is the base for many different frameworks. and JVM is the base for many different languages other than Java ( eg: Groovy, JRuby, Jython etc).
- Multiple Levels of Abstractions
- Difficult to Use (For Developers)
- More Complex to Understand
Hope this was helpful, Any new thoughts ?
Happy Reading 🙂