DEV Community

[Comment from a deleted post]
Collapse
 
pbnj profile image
Peter Benjamin (they/them) • Edited

It would be very difficult for anyone to argue that one is objectively better than the other. They're both good in their own rights.

Perhaps, one might be better suited than the other given a set of requirements and this is where we can begin to discuss the merits of each tool.

And that's what they are. Tools. Each designed to address specific concerns.
Which one is better: ball-pein hammer or claw hammer?

React

Advantages

  • "Learn once, write anywhere": react, react-vr, react-native
  • Large community, which translates to lots of guides, documents, help, modules, plugins ...etc
  • High demand (but even this has to be predicated on location)
  • Do everything in JS 🤷 ?

Disadvantages

  • Steeper learning curve, due to the set of associated tools typically used with react (e.g. state managers, build, testing).
  • When react started, animations were a bit of a challenge. Not sure about the state of this today.
  • Do everything in JS 🤷 ?
  • When react started, the library was a large bundle that led to bad user experience on slower/mobile networks. The team has broken up the project into smaller modules, if you're not careful, you could still end up sending a large bundle to the user at the end, which leads to having to figure out tree-shaking & code-splitting.

Vue

Advantages

  • Easier to get started with. Less of a learning curve.
  • Easier to introduce into a small part of an existing product/project.
  • Animations were one of Vue's strengths from the project's inception.
  • Do everything in its respective native web DSL for a given task (aka HTML, CSS, JS versus do everything in JS).
  • Much smaller library in size.

Disadvantages

  • Easier to find employers looking for React developers than Vue developers in the US.
  • You'd have to master a Vue-specific DSL that is not as transferable as mastering "just JavaScript"

And that's just what I can list off the top of my head. I am sure many other folks can think of more advantages and disadvantages of each tool.

The point is: evaluate and choose each tool given a set of requirements or priorities. No tool is objectively better than another.

Collapse
 
talkingtoaj profile image
Andrew de Jonge

Claw hammer