i have seen people using these two words interchangeably. But i know they both are not the same. So wanted to clearly know how different they are.
You build something using a framework; you run it on a platform.
Framework refers only to software and ignores hardware totally. So, if you work with hardware it will never have a framework ;-). Second: a platform allows a software to run, which is not a framework requirement, since it is more focused on design. For instance, Java is a platform because it has a virtual machine that allows Java applications to run in many operating systems. On the other hand, Spring is a framework because it simplifies the way you design software, taking the responsibility for a lot of things to reduce the effort and the volume of code needed to implement the application. So, a platform doesn't aim to save your time, but to give you one or more possibilities to run your application.
http://www.hildeberto.com/2008/10/platform-versus-framework_12.html
A platform defines a runtime or program environment that frameworks can run on e.g. the Java Virtual Machine, Microsoft's .Net or Mac OS X
A Framework extends existing functionality or defines new the functionality within the platform e.g. the Java Media Framework, Microsoft's or Mac OS X's Cocoa Framework
Software Framework: Is a re-usable design for a software system (or subsystem). A software framework may include programs, code libraries, a scripting language, other software to help develop and glue together the different components of a software project. Various parts of the framework maybe exposed through an API.
-
API (Application Programming Interface): Is a set of routines( AKA methods, functions), data structures, object classes, and/or protocols provided by libraries and/or operating system services in order to support the building of applications.
More details along with other interesting tech topics are given on my blog Link to this particular topic is http://aprogrammersday.blogspot.com/2009/02/difference-between-framework-and-api.html