In software, what’s the difference between a Framework, a Library, an Environment etc?

400 viewsOtherTechnology

I understand what a language is, stuff like Python, Java, Javascript, Swift etc. And I understand what an IDE is, it’s basically an advanced text editor tailored to helping you with writing code.

But I’m lost after that. I’ve heard that react is a framework? Is that because it’s kind of an add-on to JavaScript? If so, how is that different to a package or a Library? Or is a framework a type of library? Where do things like Spring, or Gradle or Flutter fit into this as well? Until recently, I thought Flutter was a language, but now I’m learning that the language might be Dart?

I’ve finished a full degree in Computer Science, and have been in Software Development for over a year now, but this has become no less clear to me.

In: Technology

10 Answers

Anonymous 0 Comments

A lot of things are in the name itself

Library- a place where you go to look things up in books. Similarly, you can use libraries in your code to look up already written lines of code.

Framework- a structure for any construction. Similarly you can follow this structure to write your code. The good thing about following a common blueprint is that a lot of the parts are already pre-made that can be reused.

Environment- a place where things exist and supports in growth of things within. In code there are a lot of environments and sub environments.
Some support writing your code, some support reading your code, some support running your code. Each is specifically designed for the type of work you want to do.

If you’re going to code in Java script you can write all the code yourself in .js files using your integrated development environment IDE to write code, and then you can use the javascript engine and Javascript runtime environment to run your code. These parts make your code functional, some pre-made libraries are used here used to perform the most basic functionalities.

You can code in this way, but if you do this, you are going to be rewriting functionality that everyone needs and probably has. To consolidate this, some smart people wrote common code into libraries. They formed a good structure for how to organize your code. Then they released a framework called reactJS which leverages those libraries and rules for following that format.

If you use this framework, you are going to follow a common standard for writing code, which is fine because you want to follow a common convention for consistency and understandability. And it lets you use those common libraries to make your work easier.

You are viewing 1 out of 10 answers, click here to view all answers.