Description
In the past, we have used the terms platform and framework interchangeably when describing Theia. I believe we should be consistent in order to avoid confusion and to more accurately describe the software. I also believe that framework would be the more accurate description (others can provide their opinions as well).
I have taken the liberty of updating the website to reflect that we are a platform since it previously only described Theia as "Cloud & Desktop IDE".
What do others think, should we use platform or framework in official documentation?
Additional Information
A platform is a group of technologies that are used as a base upon which other applications, processes or technologies are developed.
In personal computing, a platform is the basic hardware (computer) and software (operating system) on which software applications can be run. Computers use specific central processing units (CPUs) that are designed to run specific machine language code. In order for the computer to run software applications, the applications must be in that CPU鈥檚 binary-coded machine language. Thus, historically, application programs written for one platform would not work on a different platform.
A software framework is a concrete or conceptual platform where common code with generic functionality can be selectively specialized or overridden by developers or users. Frameworks take the form of libraries, where a well-defined application program interface (API) is reusable anywhere within the software under development.
cc @eclipse-theia/core
I'm for using framework, definitely.
I am not sure about the software platform example above - it looks a bit dated and includes hardware. But the definition looks ok. Here's another one:
"a major piece of software, as an operating system, an operating environment, or a database, under which various smaller application programs can be designed to run."
Is it not the case that both terms could fit for Theia, but that framework is more precise, since by the definition above, a framework is a kind of platform?
"A __software framework__ is a concrete or conceptual __platform__ "
framework sounds good to me too
Most helpful comment
I'm for using framework, definitely.