An application can be built on only one library, or on one framework. But most often, developers use the framework and third-party libraries at the same time while providing Front End web development services.
As a rule, beginners start either with native JS without the use of libraries/frameworks or with one of the popular frameworks. They study it, find weaknesses and try to close them with libraries over time.
More experienced developers already know the pitfalls of many tools and choose a technology stack based on tasks. For example, one of the frequent toolkits – React and Redux – are libraries that do not provide a ready-made solution and framework but open the way for creativity.
React, Vue, lodash, D3… it is sometimes difficult for a beginner to understand these names. So, a joke appeared on the network from a developer who always asks recruiters to name which Pokemon from the stack in his profile. Can you guess?
But the front-end developer didn’t always have that many tools. In the 2000s, there was no concept of web applications, there were only sites with static markup, which was given by web servers written in PHP or .NET (C #). And instead of cool animated buttons on SVG, there were static image tags.
At the same time, Google released AngularJS – a full-fledged framework that included not only the application framework but also testing tools. Initially, this framework won the hearts of developers – many popular sites are written on it.
But despite its popularity, AngularJS has greatly disappointed developers. How it happened – I’ll tell you more.
In 2010, Google developers released the AngularJS framework. The support of a large company and good marketing strongly distinguished him from his equals – Backbone, and Ember.
In addition, AngularJS offered at that time an interesting approach – two-way data binding (from English two-way data binding), which was not yet widely used in development.
Peculiarities of AngularJS
AngularJS is a full-fledged framework whose goal was to simplify the development of Single Page Applications.
The main feature of the framework is that the display can change the model, just like the model can change the display. This is needed to link user actions. This is the principle of two-way data binding.
From China with Love – Vue.js
In 2014, React was just gaining momentum, AngularJS, on the contrary, was losing its popularity, and Angular was still under active development. The front-end developer already had a large selection of tools, but not all the problems of frameworks and libraries were resolved. For example, problems persisted such as a high entry threshold, slow development speed, and the need to write a lot of code in order for the application to take off. To solve these problems, a new framework has appeared – Vue.js. Its creator, a former Google employee, actively used AngularJS in his work, so Vue.js is syntactically like it.
Vue.js has had a long road of development – features have been added from release to release. At the beginning, many predicted it would fail, but with the release of new versions, it only gained popularity: the latest version 3.0 was released in 2020. A close-knit Asian community of developers helped him develop, and evangelists helped him popularize. You can learn more about it by the link: https://devoxsoftware.com/technology/vue-js-development-company/
Vue borrowed best practices from different tools:
· Two-way data binding (similar to Angular);
· SSR, as a boxed solution, is Nuxt.js;
· Component approach (components have their own life cycle, which is similar to the React concept);
· State container – Vuex (analog of Redux for React);
· CLI – command line interface, or a set of utilities for developing applications;
· Ability to use JSX to write components;· Small build size compared to React and Angular.
Head and Editor in Chief of EcmaScript2017 Journal. Senior JS Back-end Full stack developer and software architect.