In this article, I am going to give a brief introduction to Angular Framework. At the end of this article, you will understand the following pointers in detail.
- What is Angular?
- Why we need Angular?
- What is ECMAScript?
- What is Typescript?
- Different Between AngularJS and Angular
Before understanding Angular, lets first have a look at the earlier version of Angular which is popularly known as AngularJS. The AngularJS was released in the year 2010. Then it becomes one of the most popular frameworks for developers to develop single-page applications (SPA). Now you may have one question in your mind i.e. already AngularJS becomes one of the most popular Frameworks for developers and already so many applications are developed using this AngularJS then why Angular2 or any higher versions come into the market or why we should use Angular2.
Why should we use Angular 2 or any higher versions?
Let us first discuss why we should use Angular 2 (or any higher versions) or the advantages of using Angular 2 (or any higher versions) to develop web applications.
Angular 2 (or any higher version) is a new but great framework that will provide us with a great deal of flexibility and power to develop web applications. The most important point that you need to remember is it is completely rewritten from the ground. That means it is not an up-gradation from AngularJS. It provides lots of new features as well as lots of improvements when compared with AngularJS. The Features and improvements provided by Angular are as follows:
Performance Improvements in Angular Application:
According to the Angular Team, the Angular 2 (or higher versions) Framework is five times faster than the Angular JS Framework. The reason for this is, it has faster initial loading, improved a lot on rendering time, and provides a great deal of change detection. Angular 2 not only just improve the performance, but also has improved dependency injection mechanism, modularity, and also provides great testability to test the Angular applications. If you are confused at the moment, then dont worry, we will discuss all these features in greater detail in our upcoming Videos.
Component-Based Development in Angular Application:
The most important point that you need to keep in mind is that in Angular application everything is a component. That means the components are the basic building blocks of an Angular application. The most important advantage of this component-based development approach is that it provides support for code reusability. That means you can reuse the same component in multiple places. This Component-based development approach also provides great support for unit testing the Angular application.
Angular Provides Mobile Support:
The earlier versions i.e. AngularJS did not provide built-in support for mobile devices compatibility. That does not mean AngularJS applications are not run on mobile devices. It is possible to run AngularJS applications on mobile devices but to do this we need to use other frameworks along with AngularJS Framework. To keep this in mind, the Angular 2 (higher versions) framework is built from the ground to support mobile device compatibility by default. So if you develop an application using Angular 2 (or any higher versions like 4, 5, 6, 7, 8, 9, 10) framework, then that application can run on both desktops as well as mobile devices.
Angular 2 Support Multiple Languages:
The Angular Framework supports several languages for building Angular applications. Some of the popular languages are as follows
- ECMAScript 5
- ECMAScript 6
- TypeScript
- PureScript
- Dart
- Elm
Note: Among the all available languages, in this course, we are going to use TypeScript as the language to develop Angular applications.
I hope now, you understood the advantages of using Angular Framework to develop applications. So, let us move forward and try to understand the official definition of Angular.
What is Angular?
Official Definition, Angular is a platform that makes it easy to build applications with the web. Angular combines declarative templates, dependency injection, end-to-end tooling, and integrated best practices to solve development challenges. Angular empowers developers to build applications that live on the web, mobile, or desktop.
Now let us simplify the above definition. It says that Angular is an open-source front-end development platform developed by Google as well as a framework that we used to build Mobile and Desktop web applications using HTML and TypeScript.
The Angular framework is written using the TypeScript language. It implements the core and optional functionality as a set of TypeScript libraries that we need to import into our applications in order to develop angular applications.
As we discussed Angular Framework is built using the TypeScript language. So let us understand the following two key points.
What is ECMAScript?
The ECMAScript specification is a standardized specification of a scripting language developed by Brendan Eich of Netscape; initially, it was named Mocha, later LiveScript, and finally JavaScript. There are many versions of the ECMAScript which were released starting from the ECMAScript version 1 up to ECMAScript version 9.
What is TypeScript?
The language TypeScript is open-source and it is developed and maintained by Microsoft. The TypeScript language provides several benefits are as follows while developing angular applications
- Intelligence support while writing code
- Auto-completion Facility
- Code navigation
- Strong Typing
- It also supports features like classes, interfaces, and inheritance as our traditional programming languages such as C#, Java, or C#.
Because of the above benefits, most of the developers first choice language is TypeScript for building Angular 2 applications.
Difference between AngularJS and Angular:
Let us see the differences between AngularJS and the new Angular Framework.
AngularJS:
- AngularJS was released in the year 2010 by Google.
- AngularJS is based on the JavaScript framework and used for creating Single Page Applications (SPA).
- It is still supported but no longer updated.
- The AngularJS architecture is based on the Model View Controller (MVC) Pattern.
- By default, AngularJS applications are not mobile-friendly.
- You can use ES5, ES6, and Dart languages to write AngularJS code.
- Factory, provider, service, constant, and value are used for services.
- The AngularJS code runs only on the client-side.
Angular 2 or Any Higher Versions:
- The Angular2 Framework first released in Sept 2016 by Google.
- It is completely re-write from the AngularJS version.
- It updated the version regularly because of Semantic Versioning.
- The Angular 2 architecture is based on components.
- By default, Angular 2 applications are mobile-friendly.
- You can use ES5, ES6, TypeScript to write an Angular 2 code.
- In the Angular2 Framework, the class is the only place to define services.
- The Angular2 code can run on both client-side as well as server-side.