DEV Community

Discussion on: 5 Popular Frontend Development Tools in 2021

Collapse
 
cswalker21 profile image
cswalker21

I read this whole disappointing flame war, and still don’t have a clue why the term framework is inappropriate for React. If someone could take the time to explain that (if they can do so in a civil manner), it would be a great help.

Define terms. What is a framework? What is a library? Why does React fit the latter and not the former? What is different about Vue that makes it a framework?

Thank you.

Collapse
 
oniichan profile image
yoquiale

Because it's creators said so and because it needs to be used with more libraries to properly make an app. Angular is a framework because it comes with everything you need to make a proper app.(testing, routing, etc...)

Collapse
 
cswalker21 profile image
cswalker21

Thank you. BTW, I didn’t find the first point compelling. If the creators felt silly and decided to call it a banana, that wouldn’t make React a banana.

The second point, however was simple, concise, and well stated. Thanks again.

Collapse
 
samjakob profile image
Sam (NBTX)

Yea I think this is all a beyond pointless argument, but with that said my two cents is I think the defining characteristics listed in this Wikipedia article are a good way of articulating the difference: en.wikipedia.org/wiki/Software_fra...

The reason I’d be willing to argue React isn’t a framework (if I cared) is that of the key features of a framework listed in the article, React has no inversion of control - the order in which code is called (what code is executed and when) is not decided by React, unlike with frameworks such as Vue - and no default behavior (templates) - where Vue has its .vue single file components that are stitched together by Vue in a manner that Vue decides, with React you imperatively declare exactly how everything is rendered too.