Backend Itu Apa?
Diperbarui 4 Nov 2026 · Backend Pakai Express
Kamu buka aplikasi belanja, pilih sepatu, lalu tekan tombol "Beli". Dua detik kemudian muncul tulisan "Pesanan berhasil". Stok berkurang, saldo terpotong, dan penjual dapat notifikasi.
Pertanyaannya: siapa yang mengerjakan semua itu? Tombolnya cuma gambar di layar. Pasti ada "seseorang" di balik layar yang bekerja keras dalam dua detik itu.
"Seseorang" itu namanya backend. Di buku ini, kamu akan belajar membuatnya sendiri.
- Menjelaskan beda frontend dan backend dengan bahasamu sendiri.
- Menjelaskan apa itu server dan kenapa ia harus selalu menyala.
- Menceritakan langkah demi langkah apa yang terjadi saat kamu klik "Beli".
- Menjalankan server mini pertamamu dengan Node.js.
Bayangkan sebuah restoran. Pembeli hanya melihat ruang makan: meja, menu, dekorasi, dan pelayan yang ramah. Itu frontend.
Di belakang ada dapur yang tidak pernah dilihat pembeli. Di sana koki memasak, mengecek stok bahan, mencatat pesanan, dan memastikan makanan aman dimakan. Itu backend. Ruang makan secantik apa pun tidak berguna kalau dapurnya tutup.
Frontend vs backend
Di Buku 2 kamu sudah kenal : bagian aplikasi yang tampil di layar. HTML, CSS, dan JavaScript berjalan di browser milik pengguna.
adalah bagian yang berjalan di komputer lain, jauh dari pengguna. Ia tidak punya tampilan. Tugasnya mengolah data, menjalankan aturan bisnis, dan menyimpan informasi.
| Frontend (ruang makan) | Backend (dapur) | |
|---|---|---|
| Berjalan di | Browser / HP pengguna | Server milik pembuat aplikasi |
| Dilihat pengguna? | Ya, langsung | Tidak, hanya hasilnya |
| Tugas utama | Menampilkan data, menerima klik dan ketikan | Mengolah, memeriksa, dan menyimpan data |
| Bisa dipercaya? | Tidak sepenuhnya, bisa diutak-atik pengguna | Ya, karena hanya kita yang mengendalikannya |
Baris terakhir tabel itu penting sekali. Kode frontend bisa dibuka dan diubah siapa saja lewat DevTools. Jadi keputusan penting, seperti "apakah saldo cukup?", harus diambil di backend.
Server: komputer yang tidak pernah tidur
sebenarnya cuma komputer biasa. Bedanya, ia menyala terus 24 jam dan tugasnya menunggu permintaan, lalu menjawabnya.
Kata "server" juga dipakai untuk program yang menunggu permintaan itu. Jadi kalau nanti kamu dengar "jalankan server-nya", artinya: jalankan program yang siap melayani.
Lawannya adalah , yaitu pihak yang meminta. Browser, aplikasi HP, bahkan program lain bisa jadi client. Pola ini disebut client–server: pembeli dan warung.
Request dan response
Client dan server berkomunikasi dengan cara yang sederhana. Client mengirim (pesanan). Server membalas dengan (makanan yang diantar). Satu request, satu response. Selalu berpasangan.
Bahasa yang mereka pakai untuk saling bicara namanya . Kita bedah isinya di bab berikutnya.
Apa yang terjadi saat kamu klik "Beli"?
Yuk kita ikuti perjalanan satu klik, pelan-pelan.
- Frontend menyiapkan pesanan. JavaScript di browser mengumpulkan data: ID produk, jumlah, alamat.
- Request dikirim. Data itu dibungkus jadi request HTTP dan dikirim lewat internet ke server toko.
- Backend memeriksa. Apakah kamu sudah login? Apakah stok masih ada? Apakah jumlahnya masuk akal?
- Backend bekerja. Ia mengurangi stok, membuat catatan pesanan di , dan meminta layanan pembayaran memotong saldo.
- Response dikirim balik. Server menjawab "berhasil, nomor pesanan 1234", atau "gagal, stok habis".
- Frontend menampilkan hasil. Browser membaca jawaban itu dan memunculkan pesan di layar.
Semua langkah 3 dan 4 itulah pekerjaan backend developer. Pengguna tidak melihatnya, tapi tanpa itu tidak ada yang bisa dibeli.
Tugas utama backend
- Menyimpan data supaya tidak hilang: akun, produk, pesanan.
- Menjalankan aturan bisnis: diskon hanya untuk member, stok tidak boleh minus.
- Menjaga keamanan: memastikan yang mengubah data memang orang yang berhak.
- Berbicara dengan layanan lain: pembayaran, pengiriman email, ongkos kirim.
Cara frontend "memesan" ke backend biasanya lewat , yaitu daftar layanan yang disediakan backend. Ingat analogi pelayan restoran: kamu tidak masuk dapur, kamu cukup pesan lewat pelayan.
Kenapa Node.js dan Express?
Backend bisa ditulis dengan banyak bahasa: Python, Go, PHP, Java, C#, dan lainnya. Semuanya bagus dan dipakai perusahaan besar.
Di buku ini kita pakai , karena kamu sudah belajar JavaScript di Buku 2. Satu bahasa untuk frontend dan backend artinya lebih sedikit hal baru yang harus dihafal.
Di atas Node.js kita pakai , sebuah framework kecil yang membuat pembuatan server jauh lebih ringkas. Buku ini memakai Express 5 dan Node.js 22 LTS atau lebih baru.
Mengintip server mini
Sebelum memakai Express, yuk lihat bahwa server itu memang "cuma program yang menunggu". Node.js punya modul bawaan bernama node:http. Simpan kode ini sebagai server.mjs:
import { createServer } from "node:http";
// Fungsi ini dipanggil SETIAP kali ada request masuk
const server = createServer((req, res) => {
console.log("Ada pesanan masuk:", req.method, req.url);
res.end("Halo dari dapur!");
});
// Buka "pintu warung" di nomor 3000, lalu tunggu
server.listen(3000, () => {
console.log("Server siap di http://localhost:3000");
});
$ node server.mjs
Buka http://localhost:3000 di browser. Kamu akan melihat tulisan Halo dari dapur!, dan di terminal muncul:
Server siap di http://localhost:3000
Ada pesanan masuk: GET /
Ada pesanan masuk: GET /favicon.ico
Perhatikan: programnya tidak selesai. Ia terus menunggu, seperti warung yang buka sepanjang hari. Tekan Ctrl + C untuk menutupnya. Request /favicon.ico itu dikirim otomatis oleh browser untuk mencari ikon tab.
Jangan pernah mengandalkan frontend untuk aturan penting. Menyembunyikan tombol "Hapus" di layar bukan pengamanan. Orang iseng tetap bisa mengirim request langsung ke server. Semua pemeriksaan penting wajib diulang di backend.
Sebenarnya lebih rumit dari ini…
Aplikasi besar jarang punya satu server saja. Biasanya ada banyak server yang dibagi tugasnya, ada penyeimbang beban yang membagi request, dan ada layanan cache supaya lebih cepat. Tapi pola dasarnya tetap sama: client minta, server jawab. Kalau kamu paham satu server, kamu sudah paham fondasinya.
- Jalankan
server.mjsdi atas. - Buka
http://localhost:3000/menudanhttp://localhost:3000/pesan. Lihat apa yang tercetak di terminal. - Ubah teks
"Halo dari dapur!", matikan server, jalankan lagi, lalu refresh browser. - Bonus: pilih satu aplikasi favoritmu. Tulis 3 hal yang menurutmu dikerjakan backend-nya.
- Frontend = ruang makan yang dilihat pembeli. Backend = dapur yang bekerja di belakang.
- Server = komputer/program yang selalu siap menjawab request dari client.
- Client mengirim request, server membalas response, lewat bahasa bernama HTTP.
- Aturan penting (stok, saldo, izin) wajib diperiksa di backend, bukan di frontend.
- Kita akan membangun backend dengan Node.js dan Express 5.
Di bab berikutnya, kita buka "amplop" request dan response untuk melihat isi surat yang dikirim lewat HTTP.
Bab 1 selesai!
Bab ini membantu?