Framework adalah kerangka kerja software yang menyediakan struktur, komponen siap pakai, dan konvensi untuk membangun aplikasi. Dengan framework, developer tidak perlu memulai dari nol — mereka tinggal mengisi kerangka yang sudah ada.
Bayangkan framework seperti kerangka gedung yang sudah dibangun — developer tinggal membangun dinding, ruangan, dan interiornya sesuai kebutuhan.
Framework vs Library
| Library | Framework | |
|---|---|---|
| Siapa yang memanggil | Kode lo memanggil library | Framework yang memanggil kode lo |
| Kontrol | Lo yang kontrol alur | Framework yang kontrol alur (Inversion of Control) |
| Ukuran & scope | Biasanya lebih kecil, fokus | Lebih besar, menyediakan struktur keseluruhan |
| Contoh | React, NumPy, Axios | Django, Laravel, Spring |
Jenis-jenis Framework
Frontend (Web) Membangun tampilan antarmuka web yang dilihat pengguna.
- React (Meta) — library/framework paling populer untuk UI
- Vue.js — lebih mudah dipelajari, populer di Asia
- Angular (Google) — full-featured, banyak dipakai enterprise
Backend (Web) Membangun logika server, database, dan API.
- Laravel (PHP) — populer di Indonesia
- Django (Python) — cepat dan “batteries included”
- Express.js (Node.js) — minimalis, fleksibel
- Spring Boot (Java) — standar enterprise
Mobile
- React Native — satu kode untuk Android dan iOS
- Flutter (Google) — performa tinggi, bahasa Dart
AI/Data Science
- TensorFlow, PyTorch — training model Machine Learning dan Deep Learning
Mengapa Framework Penting?
Framework menghemat waktu development, memastikan konsistensi kode, menyediakan best practices bawaan, dan punya komunitas besar yang mendukung. Mayoritas aplikasi web dan mobile modern dibangun menggunakan framework.