24/08/2017

Why do you need to know about Angular

Nowadays many frameworks exist for front-end developers. But certain distinguish themselves more than others, which is the case for Angular. It uses the latest evolutions in the world of Web, that of Web components, Typescript, ECMAScript 6 and more.

It’s fast, you can develop across platforms and it is loved and used by millions.

But where does Angular come from? Why has it grown so big over the years as to become almost indispensable? You’re about to learn more.

 

The origins of Angular

Misko Hevery is the co-creator of the very first version of the AngularJS Framework. He has a passion for making complex things simple. The initial idea of AngularJS was to facilitate the work of the Web designers who don’t know how to program. Angular gives them the means to reuse parts of a Webpage in a flexible way. It was a unique and revolutionary way to easily build web applications.

You can still find the original business venture on The Internet Archive. Later they decided to abandon the idea and release Angular as an open-source library.

Miko was working for Google when he has developed this first version in his free time as a fun side project. The interest of Google for what he had created kept growing! His side application could finish a project in two weeks that normally would take six months to develop.

In 2014 AngularJS was seeing the great success and interest of the community for. Google continued to super-power Angular, now known as the new version of AngularJS. The popularity of the framework has been growing ever since as you can see from Google Trends:

 

 

From AngularJS to Angular: web components

The major innovation in Angular is its model-oriented components.

A web component is an element of a Web page. They allow for the creation of reusable widgets or components in web documents and web applications, which is a considerable time saver. It can be either autonomous or depend on other components. The developer can define custom HTML tags whose behaviour is defined in JavaScript, the HTML structure, and in CSS for the appearance.

The fragmented web page thus becomes a superposition, a nesting of web components, which can interact together or be autonomous. Take for example a counter in a component that would be incremented or decremented by an action of another component.

Web components are based on existing web standards by the World Wide Web Consortium (W3C). Custom components and widgets build on the Web Component standards, will work across modern browsers. They can be used with any JavaScript library or framework that works with HTML.

In Angular, the business logic integrates with the controller, while in AngularJS the view and business logic are clearly separated. Angular uses a class that exposes a view and defines how the user can interact with it.

Angular AngularJS diagram comparision

 

Take advantage of new features in Angular

Angular has many qualities that distinguish it from its competitors. The benefits of Angular are listed often across the Internet.

The use of Web Components. It has the great ability to create components that can be reused together with specific behaviours to make the content dynamic.

Data-binding enables you to synchronize the View and Model in the MVC architecture.

Incredible tooling. It is possible to create a qualitative architecture at low-cost thanks to the use declarative templates and the Angular CLI (a command line interface for Angular). It allows to focus on the development and not on the configuration nor the architecture of the source code. Easy development thanks to explicit error messages, making it easy to understand the origin of the problem and so to easily repair it.

A strong community backs it; do you have a problem? You will always find support. Did you notice that Google is mainly in charge of the development of the framework? It counts for something!

A recent internal survey of our developers shows that the switch to the new Angular is appreciated for several elements: the use of typescript, new architecture, Angular CLI and performance.

“Clearer and easier to handle, better structured.”

“Top!”

Although there are some drawbacks too. For half of the survey participants, the difficulties come from learning new concepts.

Learning Angular requires prior knowledge of concepts like the understanding of Reactive Extensions for JavaScript (RxJS) for reactive programming, Typescript, and of course the workings of the framework itself. For those who come from AngularJS, the transition can be hard. The new Angular version requires a paradigm shift which is rather difficult to apprehend when you are just starting out.

You need to code more in certain cases to get the same result, but it is easier to maintain and to scale over time.

Some other comments from our developers:

“Needs optimization and a guide to deploy a very minimalist build. Needs an automatic update for the CLI.”

“Although this can be a benefit for newcomers, Ng (Angular) is way too opinionated for my taste compared to React.”

“Some issues in managing certain dependencies when these are updated.”

 

Angular is a great framework, but there are challenges too.

 

Angular at the Positive Thinking Company

At our company, we quickly saw the advantages of using the Angular framework. We used it for example in 2014 for our internal application project. It is a mobile application to track and manage our consultant’s performance and client’s communication and objectives.

After seeing all the benefits, it was natural that our application evolved further based on this framework. Since this summer our app is running on Angular v4.

We have multiple consultants that are familiar and even expert with this framework in our international web and mobile development lab. Needless to say, we also accompany our clients in their web and mobile application projects with Angular.nThere is a continuous eagerness among our developers to improve by learning about new trends and creating better client projects.

We always try to learn and some of us even will have the luck to talk to the Google Developer Experts at the upcoming NG-BE Angular Conference. It takes place on the 7th and 8th December 2017 in Ghent, Belgium. There’s nothing like the NG-BE Conference to listen how and what for other people are using Angular.

 

On the road to Angular 5: Easier progressive web apps

There was a jump going from Angular v2 to v4 without v3. Due to some misalignment of the router package’s version, the team decided to go straight for Angular v4. As we can see in 2017, Angular goes from version to version and it doesn’t stop. Angular 5.0 beta is now in testing with the release planned for September 18, 2017.

“Easier, smaller, faster is the theme for version 5.” Brad Green said.

It will contain many new features, improved processes, bug fixes and a few surprises. Some examples: default Ahead-of-Time Compilation, a watch mode, type verification in the templates, metadata that is more flexible, and much more.

The progressive web apps concept, the product of a joint effort between Google and Mozilla, is about enabling development of browser-based apps that offer a superior, native-like experience.

We can truly see the investment of the Angular team to propose us a qualitative framework. We will definitely keep exploring and developing the possibilities and opportunities in our development lab. We’re both excited and curious which awesome projects the future of Angular will bring!

 

Special thanks to Kevin Mathy and Yann Derycke for their help in writing this article.

Hi-Tech News
Back