# Membangun Aplikasi Perbankan Bagian 1: Template HTML dan Rute dalam Aplikasi Web Ketika komputer panduan Apollo 11 menavigasi ke bulan pada tahun 1969, ia harus beralih antara berbagai program tanpa memulai ulang seluruh sistem. Aplikasi web modern bekerja dengan cara yang serupa – mereka mengubah apa yang Anda lihat tanpa memuat ulang semuanya dari awal. Hal ini menciptakan pengalaman yang mulus dan responsif seperti yang diharapkan pengguna saat ini. Berbeda dengan situs web tradisional yang memuat ulang seluruh halaman untuk setiap interaksi, aplikasi web modern hanya memperbarui bagian yang perlu diubah. Pendekatan ini, seperti bagaimana pusat kendali beralih antara berbagai tampilan sambil mempertahankan komunikasi yang konstan, menciptakan pengalaman yang lancar seperti yang kita harapkan. Inilah yang membuat perbedaannya begitu dramatis: | Aplikasi Multi-Halaman Tradisional | Aplikasi Satu Halaman Modern | |------------------------------------|-----------------------------| | **Navigasi** | Muat ulang halaman penuh untuk setiap layar | Pergantian konten instan | | **Performa** | Lebih lambat karena unduhan HTML lengkap | Lebih cepat dengan pembaruan parsial | | **Pengalaman Pengguna** | Kilatan halaman yang mengganggu | Transisi mulus seperti aplikasi | | **Berbagi Data** | Sulit antar halaman | Manajemen status yang mudah | | **Pengembangan** | Banyak file HTML untuk dikelola | Satu HTML dengan template dinamis | **Memahami evolusi:** - **Aplikasi tradisional** membutuhkan permintaan server untuk setiap tindakan navigasi - **SPA modern** hanya dimuat sekali dan memperbarui konten secara dinamis menggunakan JavaScript - **Ekspektasi pengguna** sekarang lebih menyukai interaksi yang instan dan mulus - **Manfaat performa** termasuk pengurangan bandwidth dan respons yang lebih cepat Dalam pelajaran ini, kita akan membangun aplikasi perbankan dengan beberapa layar yang mengalir bersama secara mulus. Seperti bagaimana para ilmuwan menggunakan instrumen modular yang dapat dikonfigurasi ulang untuk eksperimen yang berbeda, kita akan menggunakan template HTML sebagai komponen yang dapat digunakan kembali yang dapat ditampilkan sesuai kebutuhan. Anda akan bekerja dengan template HTML (cetakan yang dapat digunakan kembali untuk berbagai layar), routing JavaScript (sistem yang beralih antara layar), dan API riwayat browser (yang menjaga tombol kembali berfungsi seperti yang diharapkan). Teknik-teknik ini adalah dasar yang sama yang digunakan oleh kerangka kerja seperti React, Vue, dan Angular. Pada akhirnya, Anda akan memiliki aplikasi perbankan yang berfungsi yang menunjukkan prinsip aplikasi satu halaman profesional. ## Kuis Pra-Pelajaran [Kuis pra-pelajaran](https://ff-quizzes.netlify.app/web/quiz/41) ### Apa yang Anda Butuhkan Kita memerlukan server web lokal untuk menguji aplikasi perbankan kita – jangan khawatir, ini lebih mudah daripada yang Anda pikirkan! Jika Anda belum memilikinya, cukup instal [Node.js](https://nodejs.org) dan jalankan `npx lite-server` dari folder proyek Anda. Perintah praktis ini akan menjalankan server lokal dan secara otomatis membuka aplikasi Anda di browser. ### Persiapan Di komputer Anda, buat folder bernama `bank` dengan file bernama `index.html` di dalamnya. Kita akan memulai dari [boilerplate HTML](https://en.wikipedia.org/wiki/Boilerplate_code) ini: ```html Bank App ``` **Inilah yang disediakan oleh boilerplate ini:** - **Menetapkan** struktur dokumen HTML5 dengan deklarasi DOCTYPE yang benar - **Mengonfigurasi** pengkodean karakter sebagai UTF-8 untuk dukungan teks internasional - **Mengaktifkan** desain responsif dengan tag meta viewport untuk kompatibilitas seluler - **Menetapkan** judul deskriptif yang muncul di tab browser - **Membuat** bagian body yang bersih tempat kita akan membangun aplikasi kita > πŸ“ **Pratinjau Struktur Proyek** > > **Pada akhir pelajaran ini, proyek Anda akan berisi:** > ``` > bank/ > β”œβ”€β”€ index.html > β”œβ”€β”€ app.js > └── style.css > ``` > > **Tanggung jawab file:** > - **index.html**: Berisi semua template dan menyediakan struktur aplikasi > - **app.js**: Menangani routing, navigasi, dan manajemen template > - **Template**: Mendefinisikan UI untuk login, dashboard, dan layar lainnya --- ## Template HTML Template menyelesaikan masalah mendasar dalam pengembangan web. Ketika Gutenberg menemukan pencetakan tipe bergerak pada tahun 1440-an, ia menyadari bahwa daripada mengukir seluruh halaman, ia dapat membuat blok huruf yang dapat digunakan kembali dan mengaturnya sesuai kebutuhan. Template HTML bekerja dengan prinsip yang sama – daripada membuat file HTML terpisah untuk setiap layar, Anda mendefinisikan struktur yang dapat digunakan kembali yang dapat ditampilkan sesuai kebutuhan. Pikirkan template sebagai cetak biru untuk berbagai bagian aplikasi Anda. Seperti seorang arsitek yang membuat satu cetak biru dan menggunakannya beberapa kali daripada menggambar ulang ruangan yang identik, kita membuat template sekali dan menggunakannya sesuai kebutuhan. Browser menyimpan template ini tersembunyi sampai JavaScript mengaktifkannya. Jika Anda ingin membuat beberapa layar untuk halaman web, salah satu solusinya adalah membuat satu file HTML untuk setiap layar yang ingin Anda tampilkan. Namun, solusi ini memiliki beberapa ketidaknyamanan: - Anda harus memuat ulang seluruh HTML saat beralih layar, yang bisa lambat. - Sulit untuk berbagi data antara layar yang berbeda. Pendekatan lain adalah memiliki hanya satu file HTML, dan mendefinisikan beberapa [template HTML](https://developer.mozilla.org/docs/Web/HTML/Element/template) menggunakan elemen `