AngularJS adalah open source web application framework. Ini awalnya dikembangkan tahun 2009 oleh Misko Hevery dan Adam Abrons. dan sekarang dikelola oleh Google.
AngularJS dibangun untuk aplikasi web dinamis. Ini memungkinkan Anda untuk menggunakan HTML sebagai bahasa template Anda dan memungkinkan Anda memperluas sintaks HTML untuk mengekspresikan komponen aplikasi Anda secara jelas dan ringkas.
AngularJS adalah framework berbasis JavaScript untuk membuat RICH Internet Application (RIA) Internet.
AngularJS membuat developer bisa menulis sisi aplikasi klien (menggunakan JavaScript) dalam MVC (Model View Controller) dengan cara yang bersih / clean code.
Aplikasi yang ditulis dengan AngularJS support dengan cross-browser. AngularJS secara otomatis menangani kode JavaScript cocok untuk masing-masing browser.
AngularJS dirancang untuk membangun aplikasi web bersekala besar dengan tetap mempermudah para developer memperlajarinya.
Berikut adalah fitur-fitur inti yang paling penting dari AngularJS:
Data-Binding : membuat sinkronasi data otomatis antara komponen model dan view.
Scope : Ini adalah sebuah obyek yang mengacu pada model. dan bertugas sebagai jembatan antara controller dan view.
Controller : fungsi-fungsi JavaScript yang terkait pada lingkup tertentu.
Services : AngularJS membuat beberapa Layanan misalnya $https: untuk membuat XMLHttpRequests. Ini adalah objek tunggal yang dipakai hanya sekali di app.
Filters : memilih subset dari item dari array dan mengembalikan ke array baru.
Directives : Directives membuat sebuah elemen DOM (seperti elemen, atribut, css, dll). Ini dapat digunakan untuk membuat kustom tag HTML yang berfungsi sebagai widget baru, kustom. AngularJS memiliki Directives seperti (ngBind, ngModel...).
Templates : tampilan yang diberikan dengan informasi dari controller dan model. ini dapat membuat beberapa view dalam satu halaman menggunakan "partials" atau file tunggal seperti (index.html).
Routing : konsep switching / routing sebuah view atau halaman.
Model View Whatever : MVC adalah pola desain untuk membagi aplikasi menjadi bagian yang berbeda (disebut Model, view dan Controller), masing-masing dengan tanggung jawab yang berbeda. Tetapi Angular JS menggunakan MVC dalam arti tradisional. tetapi lebih menggunakan untuk MVVM (Model-View-ViewModel).
Diagram berikut ini menggambarkan beberapa bagian penting dari AngularJS yang kita akan membahas secara rinci dalam bab-bab berikutnya.
AngularJS dapat dibagi menjadi tiga bagian utama
ng-app : Direktif ini mendefinisikan Aplikasi AngularJS kita ke HTML.
ng-model : Direktif ini mengebind nilai data aplikasi AngularJS ke HTML.
Referensi : https://www.tutorialspoint.com/angularjs/angularjs_overview.htm