I have come across the terms framework
, library
, platform
. For example, we say Spring framework
and NOT Spring library
; as also we say Java Platform
and NOT Java Library
or Java Framework
.
I tried to do understand further online, but the difference in them isn't still clear. Can anyone help me understand the difference between them.
Library is just a set of tools for you to use. It won't normally enforce a workflow on you and your code will be executing library code. Math is a good example of a library.
Framework enforces workflow as it is a working thing and only gives you extension points to put your code in and it will run your code and control things for you. For example you have no control when spring framework will call your controller. You are given guidelines on what you need to do for Spring to think your class is a controller.
The platform defines a standard around which a system can be developed. It will have a set of standard APIs that expose specific components (streams, file system, ports, etc) for your use. JVM is a good example of a platform as well as operating systems.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With