Angular Framework
Angular is a JavaScript-based, TypeScript language supported by Google and an open-source, MVC-based library contributed by programmers around the world. Code written in TypeScript in the Angular project is primarily compiled in JavaScript and processed in the browser. Angular started in 2009 as a personal project of Google employee Misko Hevery. During the development of the Feedback project in 2010, the code had increased to over 17 thousand lines. He made a bet with the Misko manager that he would write in 2 weeks with the framework he developed himself, and at the end of the claim, Misko delivered the project with 1500 lines of code, with all tests done. Thus, Angular emerged from the hobby project and became one of the largest open source projects in the world supported by Google. In 2016, the Angular team launched the Angular name with support for 2.x and above versioning and TypeScript development.
Modules
Angular projects are modularly designed. Modules are used to share and reuse code within the project. By determining which modules will be used on which page of the project, it is possible to work with more performance by ensuring that only the necessary modules are used in the project. Angular Module is actually a javascript class, and to define it, Angular must use the ‘NgModule’ operator to detect this class as a module.
declarations: Allows us to define the view classes that belong to the corresponding module.
exports: It must be a subset of the Declarations property. If there are classes declared in this module, those that will also be used in other modules are specified here.
imports: It allows us to define classes that are exported by other modules and that module will also be used.
providers: Here we define the service classes that we will use throughout the application.
bootstrap: The main view of the application is called root component. Contains all other application views.
Components
The components (classes) that we use in the management of screens are called components. An HTML template that describes what is displayed and processed on the page consists of a Typescript class to manage its behavior, and CSS that defines how the component is used in a template.
Templates
Templates are HTML forms that have entries decorated with Angular and tell you how to render Angular components. In a template, you can use custom syntax to take advantage of many of Angular's properties.
Directives
In Angular, directives are used to manipulate DOM objects. It is possible to change the appearance, behavior, or layout of a DOM object using its Angular directions. It also helps you expand HTML.