Angular Introduction - pros, cons and alternatives
If you are a web developer or learning web development there is a high chance you might have heard the name Angular. Its a web application development framework developed and maintained by Google. In this article I will talk about angular, why/when to use, pros, cons and its alternatives in market.
What is Angular?
Angular is a popular open source web application development framework, developed and maintained by Google (Angular team). It’s a Typescript based web framework and often referred as a Javascript framework. As angular CLI compiles down entire code (Typescript + HTML + CSS) to Javascript.
Angular simplifies various of your app development requirements in single box. Using angular you can develop Single Page Application (SPA).
Angular is an evolved version of AngularJS, and also referred as Angular 2+.
What is SPA?
Single Page Applications (SPA) are web apps that once loaded does not require to reload entire page again on navigation. You might have came across several of such apps like Gmail, Google Maps, Twitter etc. These apps fetches an initial HTML content on load and updates its content when required asynchronously.
The primary goal of SPA is to reduce entire page reload on navigation.
Pros: Benefits of using Angular 💪
-
Packed with features: Angular ships with lot of built-in features when compared to its other alternatives in market. These features are an advantage for professional developers, on the other hand it adds a steep learning curve for the newcomers.
-
Detailed documentation and help materials: I personally feel angular documentation has been one of the best documentations available online for professional developers. However, there is a scope of improvement for newcomers. In addition you can find a lot of angular help materials across the internet.
-
Huge Support: The angular community is growing day by day. There are nearly a million questions on stackoverflow tagged with angular, 77.8K stars on github. Angular is backed by tech giant Google.
-
Thousands of third-party libraries available: There are nearly 56K npm libraries for angular development. These libraries provides a great support for general development requirements.
-
Active development: The Angular team actively maintains the development lifecycle of Angular. With a major version release every 6-8 months and around 1.4K contributors.
-
Mobile ready: With tools like Ionic, Cordova or NativeScript you can easily built native mobile app. In addition angular is a PWA ready from day 1 which can be later built as a TWA for your mobile devices.
Cons: Where Angular fails 👎
-
Learning curve: As I already mentioned, angular ships with lot of built-in features, irrespective of the usage. Mastering each of those features take its own time when compared to other JS framework. This adds a steep learning curve for the newbies.
In addition, the immature Typescript language puts more weight over the new developers.
-
SEO: Angular is widely criticized for its SEO. Being a SPA, SEO optimization is a complex task. However, with the introduction of Angular Universal and other SEO optimization tricks this can be overcome.
When should I use Angular? 🤔
Whether you are manager, team lead or developer. Many of you have this question before starting of the project. Let me answer this based on my experience.
Here are some best use cases to select Angular as JS framework for your next app.
-
Medium to Big team: Angular is a perfect pick if you have a good team size having Typescript knowledge.
-
Enterprise application: Angular ships with all features required for the enterprise application development. Choose angular as your JS framework for your next enterprise application.
-
Mobile app in JS: If you don’t want you and your team to invest time learning mobile technologies (Android, Objective-C, Swift etc.) to build native mobile app. Angular is a best choice if you are thinking to build a mobile app in Javascript.
Caution: Angular is not a right pick for static websites with few pages. It’s worthy with big/medium size applications with dynamic content.
Popular websites in Angular 📈
Angular is a top pick for variety of popular organizations. Although there are still plenty of websites still running on AngularJs (1.x). Here is a small list of organizations that uses Angular (2+) as their tech stack.
- IncomeTax Portal (Government of India)
- Freelancer.com
- Firebase
- Microsoft Office Home App
- CitiBank Customer Service
- Purplle.com
The list goes on and on. In addition to it most of google websites are built on top of Angular.
Angular alternatives 👀
There are many other popular alternatives to angular. Each ships with its own advantages and disadvantages.
Popular JS frameworks:
Note: All above stats are relative to 22nd Nov 2021.
Happy Coding 👨💻