KuloDev
1 Hari
0 XP
beginner15 menitModul: 06-algorithms-problem-solving

Computational Thinking: 4 Pilar Pemecahan Masalah

Bagaimana engineer senior mendekati masalah rumit: Dekomposisi, Pengenalan Pola, Abstraksi, dan Desain Algoritma.

1. Apa itu Computational Thinking?

Menulis kode (coding) hanyalah tahap akhir dari pemrograman. 80% pekerjaan seorang software engineer adalah berpikir dan memecah masalah (Problem Solving). Computational Thinking adalah metode terstruktur untuk merumuskan masalah sehingga solusinya dapat dieksekusi oleh komputer secara efisien.

4 Pilar Computational Thinking
1. **Decomposition (Dekomposisi)**: Memecah masalah raksasa yang menakutkan menjadi potongan-potongan sub-tugas kecil yang mudah dikelola. 2. **Pattern Recognition (Pengenalan Pola)**: Mencari kesamaan atau keteraturan dari masalah sebelumnya yang pernah diselesaikan. 3. **Abstraction (Abstraksi)**: Mengabaikan detail yang tidak relevan dan fokus hanya pada informasi inti yang esensial. 4. **Algorithm Design (Desain Algoritma)**: Menyusun langkah-langkah instruksi langkah demi langkah (step-by-step) yang logis dan tidak ambigu.

2. Studi Kasus: Membangun Sistem Antrian Rumah Sakit

Bagaimana kita menerapkan 4 pilar ini saat diminta membuat sistem pemanggilan antrian pasien?

Algoritma Prioritas Antrian Pasien
javascript
1// Dekomposisi: Pasien Darurat (IGD) vs Pasien Reguler
2function tentukanUrutanPanggil(antrianPasien) {
3 // Abstraksi: Kita hanya peduli pada isEmergency dan jamKedatangan
4 return antrianPasien.sort((a, b) => {
5 if (a.isEmergency && !b.isEmergency) return -1; // Prioritaskan darurat
6 if (!a.isEmergency && b.isEmergency) return 1;
7 return a.jamKedatangan - b.jamKedatangan; // FIFO jika prioritas sama
8 });
9}
Kuis Pemahaman
+10 XP

Memecah fitur checkout e-commerce menjadi: 1) Hitung total keranjang, 2) Hitung ongkos kirim, 3) Potong voucher, 4) Buat tagihan pembayaran—merupakan contoh dari pilar apa?

Selesaikan Materi Ini?

Dapatkan +25 XP dan simpan progres belajarmu.