Angular
Angular adalah sebuah platform untuk mengembangkan front–end dari sebuah aplikasi web yang berbasis open source. Platform ini dikembangkan oleh tim Google dan komunitas open source Angular. Platform ini menggunakan bahasa Typescript, sebuah pengembangan dari bahasa Javascript yang merupakan bahasa utama yang digunakan untuk web development. Angular sendiri merupakan platform yang dibangun untuk meningkatkan performa dari AngularJS. Platform ini sering disebut juga dengan Angular 2 atau Angular 2+.
Platform ini seringkali digunakan untuk membangun single page application (SPA). Penggunaan dari SPA ini berarti bahwa segala komponen yang akan digunakan dalam aplikasi web tersebut akan di- load dalam browser terlebih dahulu agar user tidak perlu melakukan page load ketika membuka page baru. Seringkali SPA ini berupa bundle dari code Javascript yang dibuka oleh browser secara bersamaan.
Terdapat beberapa fitur dari Angular yang membuatnya menjadi salah satu platform yang paling banyak digunakan dalam pengembangan aplikasi web, antara lain sebagai berikut:
- Modularitas
Framework Angular menyediakan konsep bahwa komponen-komponen yang dibangun dalam Angular dapat dengan mudah digunakan kembali dalam komponen lainnya tanpa perlu melakukan coding dari awal. Modularitas berarti, komponen-komponen umum seperti card, toolbar, navbar, dan container dapat dibangun sekali dan digunakan berkali-kali dalam komponen tersebut.
- Object Oriented Programming
Penggunaan Typescript memberikan kemampuan bagi developer untuk menerapkan konsep object oriented programming (OOP). Itu berarti, komponen dalam Angular dapat dikembangkan dengan menerapkan prinsip class dan object. Hal ini mempermudah developer untuk mengembangkan code dan lebih menyesuaikan dengan paradigma programming yang diterapkan pada bahasa pemrograman seperti Java atau C#.
- Reactive Programming
Dalam web programming, terkadang hasil response dari server muncul secara asynchronous. Agar experience user tetap terjaga dengan baik, maka kita tidak dapat selalu menggunakan code yang dijalankan secara berurutan. Kita juga harus memiliki code yang memiliki kemampuan untuk berjalan secara asynchronous. Hal ini dapat dibuat dengan menggunakan tools bernama reactive Javascript (RxJS), yang merupakan salah satu fitur yang dapat digunakan dalam Angular. Pada RxJS, observable digunakan untuk menampung perubahan-perubahan yang terjadi secara asynchronous agar code dapat berjalan walaupun aplikasi masih melakukan fetch request kepada server.
Author: Willem Chua (1801404674)
Supervisor: Dewi Suryani (D5878)