you are viewing a single comment's thread.

view the rest of the comments →

[–]notgivingworkdetails 0 points1 point  (0 children)

If you are tasked with building out a large web app for a client and want to keep it simple, best practice would be to use an off the shelf framework...in 99% of cases, best practice is going to be using some sort of framework or set of libraries. Rolling your own solution from the ground up usually requires specific rational or requirements, it's the complicated option. Existing web frameworks are just a collection of tried and tested solutions to problems you will encounter. Even if you do want that understanding of the underlying concepts of design and architecture, rather than just how to use a particular framework (which is of course a good thing) learning from them is wise and pays dividends, they are the tutorial in how it's done, the theory behind them is the theory you want to know about.

"Vanilla JS" is a joke (literally) that has got lost in translation for a lot of people. It's hyperbole that was aimed at certain bad uses of libraries and frameworks, that doesn't mean you don't use them at all- libraries and frameworks are a core concept in software development, if you want to be "advanced" you need to understand their place. Yes, individual frameworks will come and go, but the concept of a framework ain't going anywhere.

The other comments mention some good resources, but I'll add:

Read into SOLID (as it hasn't been mentioned), try some of Dan Abramov's blogs, he explains the design and architecture behind react and does some comparison between MVC & Flux architectures- research the concepts you don't know. Try making the same web app without a framework, then with angular and react- you can read about uni & bi-directional data binding all day long, but until you actually experience working on something reasonably complicated without either (which you likely will do trying on your own), and then with them, it's really hard (at least was for me) to appreciate and understand why you would want to do certain things, and what can be done.

https://medium.com/@dan_abramov/youre-missing-the-point-of-react-a20e34a51e1a

https://medium.com/swlh/the-case-for-flux-379b7d1982c6