Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What is the difference between a platform and a framework? [closed]

There are a couple of topics on Stack Overflow and posts on the web addressing this question:

  • what is the difference between a framework and a platform
  • What is the difference between framework, platform and technology?
  • What's the different between Framework and Platform? Is nodejs both framework and platform? How about V8?

However, none of them really help me understand the actual differences between a framework and a platform as I conceive of them.

Examples of what I mean by:

  • Framework: Rails, Django or Laravel.
  • Platform: Node.JS or Meteor

What exactly sets apart a framework from a platform in the above examples?

like image 552
Thibaud Clement Avatar asked Jul 19 '15 17:07

Thibaud Clement


People also ask

What is the difference between frameworks technologies and platforms technologies?

One of the easiest ways to remember the difference between a framework and platform is that, despite both including toolkits for mobile development, frameworks operate as software-only skeletons for building applications, and platforms operate as hardware and software systems that help run applications.

What are the two types of frameworks?

Theoretical & conceptual frameworks Although they are both used to understand a research problem and guide the development, collection, and analysis of research, it's important to understand the difference between the two.

What is the difference between a platform and a system?

A platform is there to be built upon and connect with external systems. This means that any smartphone is a platform because it includes hardware (form factor), an operating system, and connects with other systems.


1 Answers

Framework

A framework could be compared to a skeleton which needs to get some flesh attached to it. This programmatic flesh is usually provided by a specific application that links to and uses parts of the skeleton. So the actual work, ie. filling the holes and connecting the dots, is done by the application.

In programming, frameworks allow programmers to concentrate on the actual tasks they are faced with rather than to waste their time reinventing the wheel. Usually, frameworks are shipped with a set of predefined functions and classes. When using Spring (Java) or Symfony (PHP) for example, programmers do not need to think about things such as persistence, routing and session management too much because the work is done by standardized framework components.

Platform

A platform, on the other hand, provides both the hardware and the software tools needed to run an application - be it a standalone program or one which has been built on top of a framework. Mostly, it comes in the flavor of Platform-as-a-Service (PaaS), meaning that the code-basis of the platform software itself is not distributed or licensed. Rather, it is part of a hosted solution running in a cloud which can be accessed via APIs or GUIs.

Typically, platforms are built as scalable multi-tenancy systems, providing access to many users at the same time, thus using economies of scale to be able to offer services with an affordable price tag. Developers can then use platforms such as force.com or Google App Engine to build and run their own applications. In many cases, these applications are more light-weight than standalone programs because most of the business logic is contained in the platform.

Source: https://commercetools.com/blog/2015/11/19/framework-vs-platform.html

like image 85
Llogari Casas Avatar answered Oct 01 '22 03:10

Llogari Casas