5 ms·
I've been using vue since it's conceptions (well, nearly) and it's been a joy. Initially, the templates provided the perfect path to migrate from angular 1.x. T
by wcarron 9y ago
I've been using vue since it's conceptions (well, nearly) and it's been a joy. Initially, the templates provided the perfect path to migrate from angular 1.x. That, among other things, was the main reason I chose it over react.
Now, years later and having experience with JSX in Vue, state, and building large apps, I finally checkout out React and discovered that they're pretty much the exact same thing:
Define a component; add lifecycle hooks; add data and functions; render; done.
I think Vue's community is finally catching up and and it's exciting to see. The only thing I find myself wanting is a vue-oriented testing solution. React has Jest and I find myself sorely wanting a testing library/wrapper with good documentation for vue. React certainly has an advantage in that regard.
The article put it well: Vue if you still enjoy writing HTML templates (which I don't mind) or React if you prefer the JS orientation.
- ibejoeb 9y agoI feel like it's 20 years ago and we're seeing the golden age of RAD again. Doesn't it feel weird to anyone else that we spent so long on the web reimplementing basic visual components with spaghetti code, as if desktop UI software never existed? I suppose hindsight is 20/20. Things are just now starting to feel maintainable and reproducible. I think it's great.
- pbreit 9y agoExcept maybe the reason the web flourished is because it wasn't stuck in the desktop paradigm?
- ibejoeb 9y agoI don't think that's a fair history of the web, but that's not my point. I am saying that the paradigm for creating a UI is not so different. I have a component with a lifecycle, events, logic, and styling, and it can be instantiated arbitrarily many times and behave predictably. That's pretty new in web tech. As a specific example: "For decades, developers were trying to separate UI templates and inline Javascript logic, but with JSX, these are intermixed again." This is fantastic guidance for brochure sites, but did it ever really suit application development? UI components certainly have intrinsic layout and logic, and our unbundling of that, I think, came from overzealous adherence to the "rules" of a different game.
- ako 9y agoRAD is definitely back, it even has it's own gartner quadrant: low-code, with tools like Mendix, OutSystems, Betty Blocks, MS Power Apps. How do you see the relevance of react and vue for RAD 2.0?
- ibejoeb 9y agoNow I can realistically build component libraries, something akin to ActiveX or Borland's VCL, and use them anywhere in the same ecosystem. I recently saw a company with a beautiful library and workflow for react; npm i your component, import it, and off you go with a on-brand (by default) visual component. Start binding event handlers...
- wcarron 9y agoI got into programming while angular 1.x was in its prime, and got onto the new frameworks just as they got going. I can't really discuss RAD or twenty years ago. I do agree with the maintainable remark though. Things seem like they're slowly congealing in the frontend JS world into the new paradigms we've chosen. But I feel like this is only making way for developers to throw their weight at the backend. It wouldn't surprise me if suddenly a GraphQL competitor came out soon, igniting a new flamewar and churn in API design that we'll all have to start dealing with.
- jaequery 9y agochoosing Vue.js over any of these frameworks is almost a no brainer IMO.
- wcarron 9y agoI would definitely not go so far as to say that. I don't have any experience with ng2+, because I was turned off by the initial complexity and monolithic style of the framework (the Front end doesn't need to be that complicated). So I can't comment on its merits. But, having used both Vue and React, I wouldn't say that either has a clear advantage over the other. They do the same shit in similar ways. For me, it just came down to coding preferences, and the amazing documentation the Vue has. React can fill the same roles equally well.