Kerangka latar belakang node meliputi: 1. Koa, kerangka web Node sumber terbuka yang menggunakan Generator untuk mengimplementasikan kontrol proses middleware dan coba/tangkap untuk meningkatkan penanganan pengecualian; 2. Nest, server Node sumber terbuka yang digunakan untuk membangun server Node yang efisien dan terukur . Kerangka kerja untuk aplikasi klien; 3. Socket, kerangka kerja yang digunakan untuk membuat komunikasi dua arah secara real-time antara klien dan server; 4. Sails, kerangka kerja Node yang sangat solid yang menyediakan segala yang dibutuhkan untuk membangun aplikasi web dalam skala apa pun .
Lingkungan operasi tutorial ini: sistem Windows 7, nodejs versi 16, komputer DELL G3.
Node adalah platform aplikasi web sisi server yang paling gesit karena memberikan kemudahan bagi perusahaan pengembang aplikasi untuk membangun platform web bahasa pemrograman tunggal yang dapat diskalakan. Ini adalah salah satu kerangka runtime JavaScript open source paling populer dan memiliki properti lintas platform, memungkinkan kita menjalankan kode di luar browser.
1. Koa
Koa lebih seperti "kerangka kerja" karena terlalu sederhana dan sangat gratis. Koa menggunakan Generator untuk mengimplementasikan kontrol proses middleware, dan menggunakan try/catch untuk meningkatkan penanganan pengecualian. Pada saat yang sama, Anda tidak dapat lagi melihat callback yang rumit dalam kerangka Koa. Kerangka kerja Koa sendiri sangat kecil dan hanya mengemas beberapa fungsi yang diperlukan. Tidak ada manajemen proses dan perlu digunakan dengan paket pihak ketiga.
Koa.js dapat digunakan untuk:
Sistem front-end
Sistem back-end
Sistem hybrid
Fitur utama Koa.js:
Mewakili modernitas dan masa depan
, ukurannya lebih kecil dari semua kerangka kerja Node.js.
Ada penangkap kesalahan bawaan untuk mencegah kerusakan situs web.
Gunakan objek konteks, yang menampung objek permintaan dan respons.
2. Nest
Nest adalah kerangka kerja untuk membangun aplikasi sisi server Node.js yang efisien dan dapat diskalakan. Kerangka kerja tingkat industri yang benar-benar lengkap. Ini menggunakan JavaScript Progresif, memiliki dukungan bawaan dan penuh untuk TypeScript (tetapi masih memungkinkan pengembang untuk menulis kode dalam JavaScript murni) dan menggabungkan elemen OOP (Pemrograman Berorientasi Objek), FP (Pemrograman Fungsional) dan FRP (Pemrograman Reaktif Fungsional) . Memberikan solusi lengkap, mulai dari pemisahan kode, modul, hingga model layanan mikro. Dan platform HTTP yang mendasari kerangka kerjanya diimplementasikan berdasarkan Express secara default, jadi tidak perlu khawatir tentang kurangnya perpustakaan pihak ketiga. Ini juga menyediakan arsitektur aplikasi out-of-the-box yang memungkinkan pengembang dan tim untuk membuat aplikasi yang sangat mudah diuji, dapat diskalakan, digabungkan secara longgar, dan mudah dipelihara.
Nest.js dapat digunakan untuk:
Menulis kode yang lebih bersih dan dapat digunakan kembali.
Menulis kode dengan struktur tingkat yang lebih tinggi seperti interseptor, filter, pipa, dll.;
menulis aplikasi yang dapat diskalakan, dapat diuji, dan longgar.
Fitur utama Nest.js
mudah diperluas: dapat digunakan dengan perpustakaan lain.
Memungkinkan pengembang membuat kode sepenuhnya dalam JavaScript murni.
Ini menggabungkan karakteristik pemrograman fungsional, pemrograman berorientasi objek, dan pemrograman reaktif.
Buka API kerangka kerja untuk membantu pengembang menggunakan berbagai modul pihak ketiga di berbagai platform.
Ini memiliki dokumentasi yang rinci dan terpelihara dengan baik.
3. Total
Total.js adalah kerangka kerja yang baik untuk membantu Anda membuat Node.js, halaman Web/aplikasi, dan juga mendukung arsitektur MVC.
4. Socket
Socket.io adalah kerangka kerja yang digunakan untuk menciptakan komunikasi dua arah secara real-time antara klien dan server. Untuk melakukan ini, klien perlu menginstal http://Socket.io di browser, dan server perlu mengintegrasikan paket http://Socket.io. Hal ini memungkinkan data untuk dibagikan dalam jutaan bentuk. Namun, metode yang paling populer tetaplah JSON.
Socket.io terdiri dari dua bagian berikut:
Layanan JavaScript: Node.js
Pustaka klien JavaScript: Node.js
Catatan: Socket.io juga kompatibel dengan banyak bahasa lain, seperti Java, C+, Swift, Dart, .Net, dan Python .
Socket.io dapat digunakan untuk:
Berbagai namespace
Penanganan acara
siaran
Penanganan kesalahan
Logging dan debugging
Aplikasi
obrolan
Fitur utama Socket.io internal:
Menyandikan informasi ke dalam peristiwa bernama JSON atau biner.
Tambahkan kemampuan "waktu nyata" ke aplikasi Anda.
Mendukung koneksi ulang otomatis
Kecepatan dan keandalan luar biasa
Pesan instan dan obrolan
5. Sails
Sails adalah kerangka kerja Node.js yang sangat solid yang menyediakan semua fitur yang diperlukan untuk membangun aplikasi web dalam berbagai ukuran. Kerangka kerja Express digunakan di bagian bawah untuk menyediakan pemrosesan permintaan HTTP, dan kerangka Socket.IO digunakan untuk memproses permintaan WebSocket. Ini juga mengimplementasikan fungsionalitas ORM, memungkinkan aplikasi Anda beralih dari satu database backend ke database backend lainnya tanpa melakukan modifikasi besar. Sails sangat cocok untuk mengembangkan aplikasi yang memiliki persyaratan tinggi untuk pembaruan data waktu nyata, dan anotasinya sangat detail sehingga Anda mungkin tidak tahu cara menggunakannya. Framework yang peduli pada pengembang bisa bertahan lama.
6. Egg
Egg didasarkan pada Koa, membatasi dan menstandardisasi pengembangan tim. Intinya adalah membantu tim pengembangan dan pengembang mengurangi biaya pengembangan dan pemeliharaan. Ini memberikan kemampuan untuk menyesuaikan kerangka lapisan atas berdasarkan Egg, mekanisme plug-in yang sangat skalabel, manajemen multi-proses bawaan,
kinerja luar biasa, dan kerangka kerja yang stabil. Ini telah digunakan di banyak lini produk Alibaba, yang dapat membuktikan keamanan dan keandalannya, jadi jangan ragu untuk menggunakannya.
7. Hapi.js
Hapi.js melanjutkan semua keunggulan Express.JS dan menambahkan beberapa fitur. Pengembang tidak perlu lagi membuang waktu untuk membangun infrastruktur dan dapat menggunakan waktu ini untuk menulis logika aplikasi yang dapat digunakan kembali. Beberapa keuntungannya: memperbaiki bug dan menambahkan fitur baru tidak memakan waktu, membangun API untuk berbagai jenis klien, arsitektur berbasis plugin membuat penskalaan menjadi mudah, kontrol yang lebih baik atas bagaimana permintaan diproses.
Hapi.js dapat digunakan untuk:
Situs Web
Layanan API
Aplikasi Proxy HTTP
Fitur Utama Hapi.js:
Pencatatan
Validasi Input
Penanganan Kesalahan
Kode Dapat Digunakan Kembali
Caching
Tidak ada ketergantungan eksternal
Fungsi berbasis
Kerangka Integrasi: Menyediakan autentikasi komprehensif dalam kerangka Node dan dukungan API otorisasi.