Over the last six months, I have started doing a lot of Angular development. Initially, I was less than enthusiastic about the experience, but today it is probably my favorite technology. So, what makes Angular so great?
Angular provides a clean breakup of code, HTML, and CSS. Like MVC models for desktop or web applications, the Angular model ensures a clean separation of concerns allowing web designers to write HTML code while programmers handle the underlying logic.
Angular components are modular. I love this aspect of Angular development. I can create a cool widget in one application and easily use it in another application. This kind of modular approach reduces development times and allows for plug-and-play development of applications.
Angular applications run on the client side. As servers get more and more traffic, dealing with all the page requests can become burdensome for a web server. Running as much as possible on the client side not only improves user experience by improving speed, but also reduces load on your servers.
Angular applications use AJAX. This prevents full page reloads and just changes portions of the webpage based on user interaction. It looks slicker, feels better, and allows for all kinds of cool web experiences such as filtering and sorting data in a way that feels like a desktop application.
Angular applications easily consume REST services. This makes it easy to interact with countless services – whether homegrown or provided by a third party. Typically, REST services provide data in the form of JSON objects which need no manipulation to use in an Angular app. No parsing – just consume the data. It’s easy and convenient. Likewise, when sending data to JSON-based REST services, no translation is needed – just send the native JavaScript object to the server.
Angular can be used to create mobile applications. Ionic is a commonly used framework for creating hybrid mobile applications for both iOS and Android. Ionic provides an Angular framework as well as components to create awesome mobile applications.
Angular can use countless CSS frameworks. While not specific to Angular, I feel I would be negligent to not mention the amazing variety of CSS frameworks out there that can be used by Angular to create visually appealing web apps. Materialize CSS and Bootstrap are two of my favorites, but countless other libraries can be used allowing developers to create a beautiful experience for users.
If you’re not using Angular, you’re definitely missing out!