Pilih bahasa Anda
Kursus Belajar Flask Python
Lebih dari 2 juta pelajar di seluruh dunia

Kursus Belajar Flask Python

4

Kuasai Flask dari dasar dan bangun aplikasi web Python nyata yang aman, dapat diskalakan, dan siap produksi. Kursus ini mencakup segalanya mulai dari routing dan template hingga basis data, autentikasi, REST API, dan deployment. Anda akan memperoleh keterampilan praktis yang benar-benar dicari oleh pemberi kerja dan klien pada pengembang Python back-end.

Dedika untuk bisnis

Apa yang akan Anda pelajari:

Anda akan mempelajari cara menyiapkan lingkungan pengembangan Flask yang profesional dan menyusun proyek untuk keberlanjutan jangka panjang. Kursus ini mencakup routing dinamis, templating Jinja2, validasi formulir, dan manajemen basis data menggunakan SQLAlchemy. Anda akan mengimplementasikan autentikasi pengguna dengan Flask-Login, membangun RESTful API dengan keamanan berbasis token, dan menulis pengujian otomatis dengan pytest. Topik lanjutan mencakup tugas latar belakang dengan Celery, fitur waktu nyata dengan Flask-SocketIO, dan kontainerisasi dengan Docker. Pada akhirnya, Anda akan mengetahui cara mengonfigurasi pencatatan log, menerapkan praktik terbaik keamanan, dan men-deploy aplikasi Flask yang berfungsi penuh ke server langsung.

Bagaimana Anda belajar secara praktis Kursus Belajar Flask Python

Bagaimana Anda berlatih Kursus Belajar Flask Python

Untuk Anda yang memiliki perusahaan dan ingin melatih tim

Di Dedika untuk perusahaan, kursus dilengkapi dengan latihan dan contoh yang disesuaikan dengan bisnis Anda dan kebutuhan perusahaan Anda.

Klik di sini

Konten kursus

8 Bab • 40 PelajaranDurasi antara 4 dan 360 jam (Anda yang menentukan)

Bab 1Lihat detail

Fondasi Flask dan Pengaturan Lingkungan

  • Pelajaran 1 • Lingkungan Python dan Lingkungan Virtual

    Konfigurasikan Python, pip, dan lingkungan virtual terisolasi untuk proyek Flask. Isolasi yang tepat mencegah konflik dependensi antar proyek.

  • Pelajaran 2 • Manajemen Konfigurasi

    Muat dan alihkan antar konfigurasi pengembangan, pengujian, dan produksi. Konfigurasi yang dieksternalisasi menjaga kerahasiaan (secrets) tetap aman dari kode sumber.

  • Pelajaran 3 • Aplikasi Flask Pertama Anda

    Tulis dan jalankan aplikasi Flask minimal untuk memahami pola factory aplikasi. Siswa melacak permintaan dari browser ke fungsi Python dan kembali lagi.

  • Pelajaran 4 • Menginstal dan Mengonfigurasi Flask

    Instal Flask dan verifikasi instalasi dengan aplikasi minimal. Ini membangun rantai alat dasar untuk semua bab selanjutnya.

  • Pelajaran 5 • Struktur Proyek Flask

    Atur file dan folder mengikuti konvensi Flask untuk proyek yang dapat diskalakan. Struktur yang baik mengurangi gesekan saat aplikasi tumbuh.

Bab 2Lihat detail

Routing, Tampilan, dan Pembangunan URL

  • Pelajaran 1 • Dasar-dasar Rute dan Metode HTTP

    Definisikan rute dengan dekorator @app.route dan batasi ke metode HTTP tertentu. Ini menghubungkan pola URL ke logika tampilan.

  • Pelajaran 2 • Blueprint untuk Organisasi Rute

    Kelompokkan rute terkait ke dalam Blueprint untuk memodulari aplikasi besar. Blueprint adalah fondasi arsitektur Flask yang skalabel.

  • Pelajaran 3 • Pembangunan URL dengan url_for

    Hasilkan URL dari nama endpoint alih-alih menuliskan string secara keras. url_for menjaga konsistensi tautan saat rute berubah.

  • Pelajaran 4 • Parameter URL Dinamis

    Tangkap segmen variabel dalam URL dan ubah menjadi nilai Python yang diketik. Rute dinamis memungkinkan desain URL berbasis sumber daya.

  • Pelajaran 5 • Redirect dan Penanganan Error

    Keluarkan redirect HTTP dan daftarkan halaman error kustom untuk respons 404 dan 500. Penanganan error yang tepat meningkatkan pengalaman pengguna dan kemampuan debug.

Bab 3Lihat detail

Template dan Mesin Jinja2

  • Pelajaran 1 • Merender Template dengan render_template

    Lewatkan data Python ke file HTML menggunakan render_template dan sintaksis Jinja2. Template memisahkan presentasi dari logika bisnis.

  • Pelajaran 2 • Pewarisan Template dan Blok

    Definisikan template tata letak dasar dan perluas di template anak menggunakan tag blok. Pewarisan memberlakukan struktur yang konsisten di seluruh situs.

  • Pelajaran 3 • Struktur Kontrol Jinja2

    Gunakan blok if/else dan perulangan for di dalam template untuk menghasilkan HTML kondisional dan berulang. Struktur kontrol menghilangkan markup yang berlebihan.

  • Pelajaran 4 • Makro, Include, dan Komponen yang Dapat Digunakan Kembali

    Enkapsulasi fragmen HTML berulang sebagai makro atau parsial yang disertakan. Komponen yang dapat digunakan kembali mengurangi duplikasi di banyak halaman.

  • Pelajaran 5 • Filter dan Tes Template

    Ubah nilai keluaran dengan filter bawaan dan tulis filter kustom untuk pemformatan khusus proyek. Filter menjaga logika tetap di luar template.

Bab 4Lihat detail

Formulir, Validasi, dan Input Pengguna

  • Pelajaran 1 • Validator dan Pesan Error

    Terapkan validator bawaan seperti DataRequired dan Email, dan tampilkan pesan error dalam template. Validator menegakkan integritas data sebelum diproses.

  • Pelajaran 2 • Unggahan File

    Terima unggahan file, validasi jenis file, dan simpan file dengan aman ke server. Penanganan unggahan yang aman mencegah path traversal dan eksekusi file berbahaya.

  • Pelajaran 3 • Perlindungan CSRF

    Aktifkan dan verifikasi token CSRF di setiap pengiriman formulir untuk mencegah cross-site request forgery. Perlindungan CSRF bersifat wajib untuk formulir yang mengubah status.

  • Pelajaran 4 • Pengaturan Flask-WTF dan WTForms

    Instal Flask-WTF, konfigurasikan kunci rahasia, dan definisikan kelas formulir dengan bidang yang diketik. Kelas formulir memusatkan aturan validasi dan definisi bidang.

  • Pelajaran 5 • Menangani Data Formulir Mentah

    Baca nilai formulir yang dikirimkan dari request.form dan request.args tanpa library formulir. Memahami akses mentah memperjelas apa yang diabstraksikan oleh alat tingkat tinggi.

Bab 5Lihat detail

Basis Data dengan Flask-SQLAlchemy

  • Pelajaran 1 • Mendefinisikan Model dan Relasi

    Buat kelas model yang memetakan ke tabel basis data dan definisikan relasi satu-ke-banyak dan banyak-ke-banyak. Model adalah definisi skema untuk aplikasi.

  • Pelajaran 2 • Kueri Lanjutan dan Pagination

    Tulis kueri kompleks dengan join, agregat, dan pengurutan, kemudian paginasi kumpulan hasil yang besar. Kueri yang efisien mengurangi beban basis data dan meningkatkan waktu respons.

  • Pelajaran 3 • Migrasi Basis Data dengan Flask-Migrate

    Gunakan Flask-Migrate untuk menghasilkan dan menerapkan migrasi skema tanpa kehilangan data. Migrasi memungkinkan evolusi skema yang aman dan berversi di produksi.

  • Pelajaran 4 • Menyiapkan Flask-SQLAlchemy

    Instal Flask-SQLAlchemy, konfigurasikan URI basis data, dan inisialisasi objek db. Objek db adalah antarmuka pusat untuk semua operasi basis data.

  • Pelajaran 5 • Operasi CRUD

    Sisipkan, kueri, perbarui, dan hapus catatan menggunakan API sesi SQLAlchemy. Operasi CRUD adalah blok bangunan dari setiap fitur berbasis data.

Bab 6Lihat detail

Autentikasi dan Manajemen Sesi

  • Pelajaran 1 • Pengaturan Flask-Login dan User Loader

    Instal Flask-Login, konfigurasikan LoginManager, dan implementasikan callback user_loader. user_loader merekonstruksi pengguna saat ini dari sesi pada setiap permintaan.

  • Pelajaran 2 • Hashing Kata Sandi dan Model Pengguna

    Hash kata sandi dengan Werkzeug dan simpan hanya nilai hash di basis data. Menyimpan kata sandi teks biasa adalah kerentanan keamanan yang kritis.

  • Pelajaran 3 • Melindungi Rute dengan login_required

    Batasi akses ke tampilan menggunakan dekorator @login_required dan arahkan pengguna yang tidak terautentikasi. Perlindungan rute menegakkan otorisasi di lapisan tampilan.

  • Pelajaran 4 • Kontrol Akses Berbasis Peran

    Tetapkan peran ke pengguna dan batasi tampilan berdasarkan keanggotaan peran. RBAC memisahkan apa yang diizinkan untuk dilakukan oleh berbagai jenis pengguna.

  • Pelajaran 5 • Tampilan Registrasi dan Login

    Bangun formulir registrasi dan login yang membuat akun dan mengautentikasi pengguna. Tampilan ini adalah titik masuk ke bagian aplikasi yang terautentikasi.

Bab 7Lihat detail

Membangun API RESTful dengan Flask

  • Pelajaran 1 • Prinsip REST dan Desain API

    Terapkan batasan REST untuk mendesain skema URL berorientasi sumber daya dan pilih kata kerja HTTP yang benar. Desain API yang baik mengurangi kompleksitas sisi klien.

  • Pelajaran 2 • Mengembalikan Respons JSON

    Serialisasikan objek Python ke JSON menggunakan jsonify dan atur header respons yang sesuai. Serialisasi yang konsisten memastikan interoperabilitas dengan klien API.

  • Pelajaran 3 • Penanganan Error API dan Dokumentasi

    Kembalikan respons error JSON terstruktur dan dokumentasikan endpoint dengan docstring atau spesifikasi OpenAPI. Pesan error dan dokumentasi yang jelas mengurangi gesekan integrasi.

  • Pelajaran 4 • Autentikasi API dengan Token

    Lindungi endpoint API menggunakan autentikasi berbasis token dengan Flask-HTTPAuth atau JWT. Auth token stateless adalah standar untuk REST API.

  • Pelajaran 5 • Memproses Permintaan JSON Masuk

    Baca dan validasi payload JSON dari request.get_json() dan tangani input yang salah bentuk dengan baik. Validasi input mencegah pemrosesan data yang rusak atau berbahaya.

Bab 8Lihat detail

Pengujian, Penerapan, dan Kesiapan Produksi

  • Pelajaran 1 • Variabel Lingkungan dan Manajemen Rahasia

    Suntikkan rahasia dan konfigurasi melalui variabel lingkungan dan gunakan file .env untuk pengembangan lokal. Mengeksternalisasi rahasia mencegah kredensial masuk ke dalam kontrol versi.

  • Pelajaran 2 • Logging, Monitoring, dan Pelacakan Error

    Konfigurasikan logging Python, keluaran log terstruktur, dan integrasikan layanan pelacakan error. Observabilitas memungkinkan diagnosis cepat masalah produksi.

  • Pelajaran 3 • Server WSGI dan Reverse Proxy

    Ganti server pengembangan dengan Gunicorn dan tempatkan Nginx di depan sebagai reverse proxy. Server WSGI produksi menangani konkurensi yang tidak dapat ditangani oleh server pengembangan.

  • Pelajaran 4 • Fixture Pengujian dan Cakupan Kode

    Gunakan fixture pytest untuk menyiapkan dan membersihkan status pengujian, dan ukur cakupan kode dengan pytest-cov. Metrik cakupan mengungkapkan jalur kode yang tidak teruji.

  • Pelajaran 5 • Pengujian Unit dan Integrasi dengan pytest

    Tulis pengujian berbasis pytest untuk fungsi tampilan, model, dan validasi formulir menggunakan klien pengujian Flask. Pengujian otomatis menangkap regresi sebelum penerapan.

Sertifikasi

Sertifikat valid Anda setelah menyelesaikan

Kursus ini cocok untuk Anda:

  • Pembuat skrip Python: siap mengubah kode menjadi aplikasi web yang nyata.

  • Pengalih karier: berpindah dari pekerjaan non-teknologi ke pengembangan web backend.

  • Analis data: ingin mengekspos model dan hasil melalui antarmuka web.

  • Pengembang lepas: membutuhkan Python stack yang andal untuk proyek web klien.

  • Mahasiswa CS: yang ingin menjembatani pengetahuan Python akademis dengan kerangka kerja praktis.

  • Pengembang junior: membuat proyek portofolio untuk mendapatkan peran backend pertama.

Apa kata para siswa kami

Kelasnya sangat sempurna. Saya membeli paket satu tahun dan akhirnya memiliki kesempatan untuk mengikuti berbagai topik yang saya minati tanpa perlu berganti platform... terima kasih atas semua yang kalian lakukan, saya sudah merekomendasikan kalian kepada orang lain...
Giulio Carlo
Giulio CarloSiswa Marketing Digital
Saya suka bagaimana pelajarannya langsung pada intinya dan bagaimana saya bisa berpindah bab dan melewati konten yang tidak saya butuhkan.
Mariana Ferres
Mariana FerresSiswa Fotografi
Saya suka kontennya dan cara presentasi serta transkripsi videonya, yang mempercepat prosesnya!
Luciana Alvarenga
Luciana AlvarengaSiswa Desain Kuku
Platformnya cepat, mudah digunakan. Keragaman konten dan video pelengkapnya sangat membantu dalam pembelajaran.
André Felipe
André FelipeSiswa Prompt Engineering

Pelatihan utama

FAQ

Siapa itu Dedika?

Apakah sertifikat ini berlaku di Indonesia?

Apakah kursusnya gratis?

Berapa beban belajar kursusnya?

Bagaimana bentuk kursusnya?

Bagaimana cara kerja kursusnya?

Berapa lama durasi kursusnya?

Berapa biaya atau harga kursusnya?

Apa itu kursus EAD atau online dan bagaimana cara kerjanya?

Kursus PDF