I'm seeing many people claiming React is bad and comparing to other frameworks like Vue, Svelte or even VanillaJS (LOL). My opinions on this war:
1. Bundle Size
React is a library where you integrate different things . So bundle size gonna increase for sure. But you also get the good functionality.
2. React is slow !
Well , React is slow ! everybody knows it. But there are things which can be done to make the overall performance faster. Lazy, Purging , Compressing. Pure HTML is still the fastest and will be forever.
3. Large Code length
This really makes me laugh . It's like comparing two people by their height not by their skills. Oh ! He is only 4 feet so our office will have more space for others. Nah! He is too tall for our office . LOL!!! The difference is not quite that large to be worried about in the code length of different frameworks.
4. Backed by Tech Giant
You know! It's still an open source project. Doesn't really matter if it's backed by a Tech Giant or a single person. It's a tool given to the whole community to use it.
5. At last everything will be JavaScript
No matter what framework or library you use ( Angular, Vue, Svelte or React) , at last it is our plain old javascript running in the browser.
You'll end up using React once in your lifetime unless you change your career . So stop comparing and start using what you are comfortable with.
Top comments (7)
My opinion, I am not a fan of any library like React or Vue.
I like React, the most two important things are: declarative API, and simple thinking. These two reason lead to another thing: React's ecosystem. That is the most impact thing lead people using ReactJS, included me.
Choosing a library or any technical stack is relative, for me, depends on two most important criteria:
The second one is crucial.
Everything has its own price. If you want to take time into bullshit things like reinvent the wheel, choose whatever you like. Otherwise, like me, chose React with no doubt. Because of its ecosystem, I almost take my time on business logic.
Bundle size is what you make of it. If you want a small bundle, code split and render on the server. Webpack does tree shaking as well, so your bundle shouldn’t be bloated even on basic projects out of the box. But not all projects care about bundle size. I work in react on a desktop application. We don’t care about google speed scores, as long as it loads relatively quickly. React isn’t just used for websites
Thank you for the comment. It's upto the developer to optimize things not by the framework itself. Good Points ! Much Appreciated!
React is a great tool, but it isn't appropriate for a lot of projects.
For example, how do you bind a WebGL game engine to React UI state without duplicating your engine code into Redux or wrapping everything with observables, like with mobX?
Webpack can't build a proper ES6 library (yet), so modulizing React applications is a whole fun thing. Could you toss Webpack for your create-react-app starter, implement Rollup with Babel and make an ES6 library to work with the rest of your front end code? Yeah, but that's gonna take you a lot of time to figure out unless you've done it a lot.
People are looking at the wrong things. Loading Javascript is nothing compared to downloading it on a mobile connection, and for wired connections you usually have a faster CPU to load the JS.
Modern websites don't move slow because the React site is too big, they move slow because we are throwing a ton of tracking, realtime updates over sockets, large media content, etc to mobile devices over shaky TCP connections which are subject to slow start, head of line blocking, etc. -- nothing is slower than 2G/3G cell connections.
I don't know much about WebGL so gonna skip that. I totally agree that Site don't move slow because of React . That's my main point. I mean like people are not optimizing their sites and throwing 1.5 MB jpg file on the Portfolio main page which obviously gonna kill the performance and bandwidth. Rather optimizing things , they like bashing React because It has bigger bundle size than other frameworks(vue or svelte) and big code length which is a total misunderstanding. I'm not saying React is best for every project but can provide a good functionality overall if used properly. Thank u for the comment ! Much Appreciated!
I'm not bashing react in any way. Each library has its own place. But there are valid reasons for people to choose (and not choose) any framework/tool.
It's totally personal choice and easy of way for choosing the right tool. As comparing , there is no like huge bump in speed and bundle size between react and (vue or svelte). I totally appreciate your point of view. But as you can see these days , some dev's are literally bashing react and saying It's too large and slow . Thank you for sharing your opinion.