Needs advice
Angular 2Angular 2

I am almost done with frontend development and know JavaScript. I wanted to know if it is necessary to learn any frontend framework, and what would be the advantage of using them? I also want to know which of the frameworks to choose, especially on factors such as responsiveness(like mobile version or web app)? I am also open to suggestions of using frameworks other than the above two such as Vue.js etc. Thanks in advance.

8 upvotes·16.8K views
Replies (2)

Choosing a framework be it angular, react, ember or vue is personal preference. I would say start with each and build something that utilise state management (todo list perhaps?) and see which style you are comfortable with.

If you wants to get employed, React is a wiser choice. It also helps you build native mobile apps with react-native . If you are building enterprise app with alot of client-side data, nothing beats Ember.js ember-data.

If you are like me who is prototyping light-weight startup and would like to move fast and missing your first front-end learning (angular 1), go with Vue.js . NativeScript-Vue is the binding to build mobile native apps with it.

6 upvotes·28.3K views

I would first like to differentiate between two categories of front-end frameworks: JavaScript front-end frameworks (Angular, React, Vue) and CSS front-end frameworks (Bootstrap, Tailwind, Foundation).

Responsiveness is an aspect that deals mostly with CSS, and CSS frameworks such as the ones mentioned are focused on addressing this aspect, making it easy to use components in a standard and less bug-prone way when compared to writing CSS from scratch. This said, knowledge of CSS is very important for front-end development, as it is required to customize components provided by these frameworks, and allows you to create more customized and compelling experiences.

Choosing to use a CSS framework does not prevent you from using a JavaScript framework. The two are frequently used together. Usually, React, Vue and the other front-end JavaScript frameworks have their own implementations of these CSS frameworks, tailored to better integrate with the JavaScript frameworks themselves. The React community, for example, has React Bootstrap, and Material-UI, which are React implementations of popular CSS frameworks, among others.

In no way you are required to use JavaScript frameworks, but they tend to lower the barrier of writing apps by surrounding you with a component-based development process, which generally allows you to better organize code. It is usually better to allow yourself to feel the pain of not using a framework so you can understand what frameworks have to offer.

In any case, should you want to learn a JavaScript framework, I would suggest that you take the tour of each JavaScript framework, then try implementing a simple project, such as building a small blog application or a tic-tac-toe game, and try implementing it using different JavaScript frameworks. This should provide you with an overview of how things operate in each framework.

Also, I would like to add that the learning curve of Angular is generally considered much higher than the other JavaScript frameworks, so I would recommend that you avoid it for now unless you are sure that you would like to dive into it.

Personally, I have used Vue.js, React, Ionic, Angular, and I enjoyed the first two the most, especially React.

4 upvotes·4.7K views
Avatar of aleyrizvi