Logo Python

Belajar Flask - Bagian 14
Kapan Sebaiknya Memakai Flask?

oleh: Suryo Adhy Chandra, ST

Setelah tiga belas bagian sebelumnya membahas cara memakai Flask, bagian ini membahas pertanyaan yang justru sering datang belakangan: kapan sebenarnya Flask menjadi pilihan yang tepat, dan kapan sebaiknya memilih yang lain. Pertanyaan ini penting karena memilih perkakas yang keliru di awal proyek biasanya baru terasa akibatnya berbulan-bulan kemudian.

1. Apa yang sebenarnya diberikan Flask

Flask disebut microframework. Kata micro di sini bukan berarti hanya untuk proyek kecil, melainkan berarti Flask hanya menyediakan inti yang paling dasar: menerima permintaan dari browser, mencocokkannya dengan alamat tertentu, lalu mengembalikan jawaban. Selebihnya diserahkan kepada kita.

from flask import Flask app = Flask(__name__) @app.route('/') def beranda(): return 'Halo, ini halaman pertama saya' if __name__ == '__main__': app.run(debug=True)

Delapan baris di atas sudah menjadi aplikasi web yang bisa dijalankan. Tidak ada berkas konfigurasi yang harus diisi lebih dulu, tidak ada struktur folder yang wajib diikuti, dan tidak ada perintah pembuatan project. Inilah daya tarik utama Flask.

2. Keadaan yang membuat Flask menjadi pilihan tepat

a. Membuat API yang tugasnya spesifik. Kalau yang dibutuhkan hanya beberapa alamat yang mengembalikan data JSON, misalnya layanan yang menghitung ongkos kirim atau memeriksa status suatu nomor, Flask memberi hasil paling cepat dengan kode paling sedikit.

@app.route('/api/ongkir/') def ongkir(kota): daftar = {'semarang': 9000, 'solo': 12000, 'jakarta': 20000} return {'kota': kota, 'ongkir': daftar.get(kota.lower(), 0)}

b. Membuat prototipe atau membuktikan ide. Saat sebuah gagasan masih perlu ditunjukkan cepat kepada calon pengguna, kecepatan membuat lebih penting daripada kerapian struktur. Flask memungkinkan satu berkas Python menjadi aplikasi yang bisa didemokan hari itu juga.

c. Belajar cara kerja aplikasi web. Karena Flask tidak menyembunyikan banyak hal, alur permintaan dan jawaban terlihat jelas. Bagi yang sedang belajar, ini justru menguntungkan: kita tahu persis apa yang terjadi, bukan sekadar mengikuti perintah yang sudah disiapkan framework.

d. Menempelkan antarmuka web pada program yang sudah ada. Misalnya sudah ada skrip Python untuk mengolah berkas Excel, lalu ingin dijalankan lewat browser oleh staf lain. Membungkusnya dengan Flask jauh lebih ringan daripada memindahkannya ke framework besar.

Pola yang sama berlaku pada proyek pengolahan data dan kecerdasan buatan. Model yang sudah dilatih sering dibungkus dengan Flask agar bisa dipanggil oleh aplikasi lain, tanpa perlu membangun sistem web yang utuh.

3. Keadaan yang membuat Flask kurang cocok

Kebebasan Flask menjadi beban ketika aplikasinya tumbuh. Beberapa tanda yang biasanya muncul:

Perlu ditegaskan, semua kebutuhan itu tetap bisa dikerjakan dengan Flask. Masalahnya bukan pada kemampuannya, melainkan pada berapa banyak keputusan yang harus kita ambil dan pelihara sendiri. Semakin besar aplikasinya, semakin banyak keputusan itu menumpuk.

4. Perbandingan singkat dengan pilihan lain

Kebutuhan Pilihan yang biasanya paling pas Alasannya
Satu atau beberapa API sederhana Flask Ringan, cepat dibuat, tanpa struktur wajib
API dengan validasi data ketat dan dokumentasi otomatis FastAPI Validasi tipe data dan dokumentasi dibuatkan otomatis
Aplikasi berisi banyak data, pengguna, dan hak akses Django ORM, migrasi, login, dan halaman admin sudah tersedia
Prototipe cepat untuk menunjukkan ide Flask Satu berkas sudah cukup untuk didemokan
Situs yang isinya jarang berubah HTML statis Tidak memerlukan server aplikasi maupun database

5. Kalau proyek Flask terlanjur membesar

Tidak perlu langsung menulis ulang semuanya. Ada beberapa langkah yang biasanya sudah cukup menahan kerumitan:

from flask import Blueprint siswa_bp = Blueprint('siswa', __name__, url_prefix='/siswa') @siswa_bp.route('/') def daftar(): return 'Daftar siswa' # di berkas utama app.register_blueprint(siswa_bp)

Kalau setelah semua itu aplikasinya masih terus tumbuh dan mulai memerlukan halaman pengelolaan data serta pengaturan hak akses yang rumit, barulah pindah ke Django menjadi pertimbangan yang masuk akal.

6. Ringkasnya

Pakailah Flask kalau ruang lingkupnya jelas dan tidak akan tumbuh liar, kalau yang dibutuhkan adalah layanan kecil atau prototipe, atau kalau kamu memang ingin memahami cara kerja aplikasi web dari dekat. Pilihlah framework yang lebih lengkap kalau aplikasimu berisi banyak data, banyak jenis pengguna, dan direncanakan dipakai jangka panjang.

Yang perlu diingat, memilih framework bukan soal mana yang lebih hebat. Flask dan Django sama-sama dipakai di aplikasi besar yang berjalan bertahun-tahun. Yang membedakan hanyalah seberapa banyak keputusan yang ingin kamu ambil sendiri, dan seberapa banyak yang ingin sudah diambilkan.

Latihan: tuliskan satu ide aplikasi, lalu jawab tiga hal ini. Berapa banyak jenis data yang perlu disimpan? Apakah ada staf yang perlu mengelola data lewat halaman khusus? Apakah aplikasi ini akan dipakai lebih dari satu tahun? Kalau ketiganya dijawab dengan skala kecil, Flask sudah lebih dari cukup.
← Kembali Ke Daftar Pelajaran Flask