Arsitektur Pada Angular
Angular adalah framework model-view-controller (MVC) yang lengkap. Ini memberikan panduan yang jelas tentang bagaimana aplikasi harus terstruktur dan menawarkan aliran data dua arah sambil memberikan DOM nyata.
Berikut ini adalah arsitektur dari aplikasi Angular:
1. Module
Aplikasi Angular memiliki root module bernama AppModule, yang menyediakan mekanisme bootstrap untuk meluncurkan aplikasi.
2. Component
Setiap komponen dalam aplikasi mendefinisikan class yang menyimpan logika dan data aplikasi. Component umumnya mendefinisikan bagian dari user interface (UI).
3. Template
Template Angular menggabungkan Angular markup dengan HTML untuk memodifikasi elemen HTML sebelum ditampilkan. Ada dua jenis data binding:
- Event binding: Memungkinkan aplikasi Anda merespons masukan pengguna di target lingkungan dengan memperbarui data aplikasi Anda.
- Property binding: Memungkinkan pengguna untuk menginterpolasi nilai yang dihitung dari data aplikasi Anda ke dalam HTML.
4. Metadata
Metadata memberi tahu Angular cara memproses class. Ini digunakan untuk mendekorasi kelas sehingga dapat mengonfigurasi perilaku yang diharapkan dari suatu class.
5. Service
Saat Anda memiliki data atau logika yang tidak berkaitan dengan tampilan tetapi harus dibagikan ke seluruh komponen, maka dibuatlah service class. Class selalu dikaitkan dengan injectable decorator.
6. Dependency Injection
Fitur ini memungkinkan Anda menjaga kelas komponen tetap tajam dan efisien. Ini tidak mengambil data dari server, memvalidasi input pengguna, atau masuk langsung ke konsol. Sebaliknya, ini mendelegasikan tugas-tugas tersebut ke dalam layanan atau service class.
Kelebihan Dari Angular
Sudah banyak versi Angular yang telah dirilis sejak awal. Semua versi ini telah ditambahkan ke framework yang efisien.
1. Komponen Kustom
Angular memungkinkan pengguna untuk membangun komponen mereka sendiri yang dapat mengemas fungsionalitas bersama dengan logika rendering menjadi bagian yang dapat digunakan kembali. Ini juga berfungsi baik dengan komponen web.
2. Data Binding
Angular memungkinkan pengguna dengan mudah untuk memindahkan data dari kode JavaScript ke tampilan, dan bereaksi terhadap peristiwa pengguna tanpa harus menulis kode apa pun secara manual.
3. Dependency Injection
Angular memungkinkan pengguna untuk menulis layanan modular dan menyuntikkannya di mana pun mereka dibutuhkan. Ini meningkatkan kemampuan pengujian dan penggunaan kembali layanan yang sama.
4. Testing
Test adalah alat yang sangat bermanfaat, dan Angular telah dibangun dari bawah ke atas dengan mempertimbangkan kemampuan untuk diuji. Anda akan memiliki kemampuan untuk menguji setiap bagian dari aplikasi Anda.
5. Komprehensif
Angular adalah framework yang lengkap dan menyediakan solusi siap pakai untuk melakukan komunikasi server, routing dalam aplikasi Anda, dan masih banyak lagi.
6. Kompatibilitas Browser
Angular bersifat lintas platform dan kompatibel dengan banyak browser. Aplikasi Angular biasanya dapat berjalan di semua browser (Misalnya: Chrome, Firefox) dan OS, seperti Windows, macOS, dan Linux.
Kekurangan Dari Angular
1. Sulit untuk dipelajari
Komponen dasar Angular yang harus diketahui semua pengguna yaitu directive, module, decorator, component, service, dependency injection, pipe, dan template. Topik yang lebih lanjut mencakup deteksi perubahan, zona, kompilasi AoT, dan Rx.js. Untuk pemula, Angular 4 mungkin sulit untuk dipelajari karena merupakan framework yang kompleks.
2. Opsi SEO terbatas
Angular menawarkan opsi SEO yang terbatas dan aksesibilitas yang buruk ke search engine crawler.
3. Migrasi
Salah satu alasan mengapa perusahaan tidak sering menggunakan Angular adalah kesulitan dalam mem-porting kode berbasis js/jquery lama ke arsitektur Angular. Selain itu, setiap rilis versi baru dapat menyulitkan pengguna, dan beberapa di antaranya tidak kompatibel dengan versi sebelumnya.
4. Verbose dan Kompleks
Masalah umum dalam komunitas Angular adalah verbositas dari framework. Ini juga cukup kompleks dibandingkan dengan alat front-end lainnya.
Mau Berita Terbaru Lainnya dari Warta Ekonomi? Yuk Follow Kami di Google News dengan Klik Simbol Bintang.
Penulis: Patrick Trusto Jati Wibowo
Editor: Alfi Dinilhaq
Tag Terkait: