Pengenalan Modularisasi Program

Pengenalan Modularisasi Program | Informatika Kelas 9
Informatika · SMP/MTs Kelas IX · Fase D

Pengenalan Modularisasi Program

Belajar memecah program menjadi modul yang bisa dipakai berulang — seperti merakit robot dari blok kayu. Materi ini disusun sederhana, interaktif, dan siap dipraktikkan di Scratch.

Bab II · Berpikir Komputasional Pemrograman Visual Blok Scratch · My Blocks 1 pertemuan inti + LKPD
Capaian pembelajaran

Setelah belajar, kamu mampu…

1. Menjelaskanarti modularisasi program dengan bahasa sendiri, lengkap dengan analogi kehidupan sehari-hari.
2. Mengidentifikasimodul, parameter, dan modul utama pada program visual berbasis blok.
3. Merancangmodul Scratch (My Blocks) yang menerima masukan dan menghasilkan keluaran.
4. Mengujiprogram modular untuk menyelesaikan persamaan linear, lalu membandingkan hasil manual dengan hasil program.

Kata kunci

modularisasi modul reusable code parameter My Blocks modul utama library pemrograman visual
Peta materi

Di mana posisi topik ini?

Berpikir komputasional
Library & kode yang dapat dipakai ulang
Modularisasi program
Function & procedure

Hari ini kita fokus pada pengenalan modularisasi. Konsep function dan procedure akan lebih mudah dipahami setelah fondasi ini kuat.

Siap-siap belajar

Kode yang ditulis berulang = pekerjaan dobel

Bayangkan kamu mengoreksi nilai tiga siswa. Tanpa modul, blok “jika nilai ≥ 75 katakan Lulus” harus disalin tiga kali. Kalau aturannya berubah menjadi 80, kamu harus memperbaiki tiga tempat. Gampang terlewat, gampang salah.

Tanpa modul

jika nilai1 > 75 maka
katakan Lulus
jika nilai2 > 75 maka
katakan Lulus
jika nilai3 > 75 maka
katakan Lulus

Kode sama disalin berulang. Sulit dirawat.

Dengan modul

define cekLulus nilai
jika nilai > 75 maka
katakan Lulus
cekLulus nilai1
cekLulus nilai2
cekLulus nilai3

Aturan ditulis sekali, dipakai berkali-kali.

Ayo mengingat kembali

Dari kelas VII: fungsi, sekarang lebih dalam

Di kelas VII kamu sudah bertemu fungsi. Sekarang fungsi itu dikembangkan menjadi cara menata seluruh program: memecah pekerjaan besar menjadi modul-modul kecil yang saling bekerja sama.

Pemanasan 1 — Pilih jawaban terbaik

Kamu diminta menghitung rata-rata nilai 5 siswa, lalu program yang sama akan dipakai lagi untuk 40 siswa. Langkah berpikir komputasional yang paling tepat adalah…

Mengapa kita belajar ini dulu? Sebelum menulis program visual atau tekstual yang panjang, pahami dulu library, modularisasi, serta alur flowchart/pseudocode. Program jadi lebih efisien, rapi, dan mudah digunakan kembali.
A. Mengembangkan library · 1. Modularisasi

Program itu seperti robot dari blok kayu

Tubuh robot tersusun dari beberapa blok. Ada yang berbeda (kepala, badan), ada yang bisa dipakai ulang: tangan kanan mirip tangan kiri, kaki kanan mirip kaki kiri.

Blok yang ditulis sekali lalu dipasang berulang disebut modul.

Klik bagian robot di kiri untuk melihat analoginya di program.

Apa itu modul?

Menurut KBBI, modul adalah komponen dari suatu sistem yang berdiri sendiri, tetapi menunjang program dari sistem tersebut.

Dalam pemrograman, modul adalah potongan kode yang:

MANDIRI

Punya tugas jelas, misalnya “hitung nilai x” atau “tampilkan hasil”.

DIPAKAI ULANG

Ditulis sekali, dipanggil berkali-kali. Inilah reusable code.

BISA MENERIMA DATA

Data yang dikirim ke modul disebut parameter.

Ibarat menulis pesan di selembar kertas, lalu memfotokopinya 100 kali — kamu tidak menulis ulang 100 pesan. Cukup satu naskah, banyak salinan.

Mengapa program perlu dimodularisasi?

01 RINGKAS

Kode tidak menggandakan diri. Program lebih pendek dan mudah dibaca.

02 RAPI

Setiap modul punya satu tanggung jawab. Mencari kesalahan jadi lebih cepat.

03 LENTUR

Ingin mengubah rumus? Cukup perbaiki di satu modul, semua pemanggilan ikut berubah.

04 SIAP DIPAKAI LAGI

Modul bagus bisa dikumpulkan menjadi library untuk proyek berikutnya.

Istilah yang wajib hafal

Potongan program mandiri yang mengerjakan satu tugas. Di Scratch, modul dibuat lewat menu My Blocks.
“Lubang isian” pada modul. Contoh: modul linear1 punya parameter k1, k2, dan k3. Nilainya diisi saat modul dipanggil.
Perintah agar modul dijalankan. Selama belum dipanggil, isi modul diam saja — seperti resep yang belum dimasak.
Titik awal berjalannya program. Modul utama biasanya memanggil modul-modul lain. Di banyak bahasa tekstual, namanya main.
Kumpulan modul/kode siap pakai. Setelah kamu piawai membuat modul, kumpulan modul itulah benih sebuah library.
Aktivitas IX-BK-AP-A01 · Panduan

Membuat modul di Scratch

Ikuti enam langkah. Klik nomor untuk berpindah. Kamu bisa menirunya langsung di scratch.mit.edu.

Tutorial membuat modularisasi program selengkapnya silahkan simak video berikut:

Jenis isian saat Make a Block

NUMBER OR TEXT

Untuk angka atau tulisan, misalnya k1, nama, atau sisi.

BOOLEAN

Untuk kondisi benar/salah, misalnya “apakah lulus?”.

LABEL

Teks penjelas di dalam nama blok agar mudah dibaca, misalnya “dengan sisi”.

Tips penamaan. Pakai nama yang menjelaskan tugasnya: linear1, hitungRata, utama. Hindari nama seperti blok1 atau aaa.
Studi kasus

Menyelesaikan persamaan linear dengan dua modul

Perhatikan persamaan:

4x − 5 = 15

LANGKAH 1 · IDENTIFIKASI

4 = konstanta 1 (k1)
x = nilai yang dicari
5 = konstanta 2 (k2)
15 = konstanta 3 (k3)

LANGKAH 2 · ISOLASI X

4x = 15 + 5
x = (15 + 5) / 4
Umum: x = (k3 + k2) / k1

Kita butuh dua modul: linear1 menghitung x, dan utama mengisi parameter lalu memanggil linear1.

Susunan blok yang kamu buat

Modul linear1 — pekerja rumus

define linear1 k1 k2 k3
set nilai x to (k3 + k2) / k1
katakan nilai x adalah nilai x

Modul utama — pemberi perintah

define utama
linear1 4 5 15

Menjalankan program

utama

Letakkan blok utama di area kerja, lalu klik. Sprite akan berkata: “nilai x adalah 5”.

Alur pemanggilan

utama
memanggil →
linear1(4, 5, 15)
menghitung →
x = 5
menampilkan →
“nilai x adalah 5”

Ayo berpikir kritis

Jika linear1 sudah dibuat tetapi utama belum dipanggil, apa yang terjadi di layar?

Simulator mini — coba rumusnya

Isi k1, k2, k3 untuk persamaan k1 · x − k2 = k3. Bandingkan dengan perhitungan manualmu.

KELUARAN MODUL linear1
nilai x adalah
5
x = (15 + 5) / 4

Tabel eksperimen dari buku — hitung dulu secara manual, lalu cocokkan dengan simulator atau Scratch.

Nok1k2k3ManualProgram
12416(16+4)/2 = 1010
23423(23+4)/3 = 99
35525(25+5)/5 = 66

Tantangan berikutnya: f(x, y) = ax + by

Setelah berhasil membuat linear1, kamu merancang sendiri dua modul baru tanpa panduan blok:

  1. Modul persamaanLinear menerima a, b, x, y lalu menghitung f = a·x + b·y.
  2. Modul utama mengisi keempat parameter dan menampilkan hasil.
abxyf(x,y)
323213
103023110
Simpan berkas Scratch dengan format:
IX-BK-AP-A01-I-<No.Absen>-<Nama>.sb3 dan IX-BK-AP-A02-I-<No.Absen>-<Nama>.sb3
Uji pemahaman

Kuis 8 soal · umpan balik langsung

Pilih satu jawaban, lalu tekan Cek semua di bawah.

Yang perlu dibawa pulang

Rangkuman

  1. Modularisasi memecah program menjadi potongan mandiri yang saling menunjang.
  2. Modul ditulis sekali, dipanggil berkali-kali (reusable code).
  3. Parameter adalah data yang diserahkan saat pemanggilan.
  4. Di Scratch, modul = My Blocks → Make a Block.
  5. Program butuh modul utama sebagai titik start. Belum dipanggil = belum berjalan.
  6. Kumpulan modul yang rapi adalah langkah awal membuat library.
Lanjut ke tab LKPD untuk praktik di Scratch. Kerjakan berurutan dari kegiatan 1 sampai 4.
Lembar kerja peserta didik

Praktik Modularisasi di Scratch

Isi identitas, kerjakan di komputer/laptop yang sudah membuka Scratch, lalu tulis hasilnya di sini. File terpisah siap cetak juga tersedia: lkpd-modularisasi-scratch.html.

Kegiatan 1 — Mengenal My Blocks (15 menit)

Buka Scratch → buat proyek baru → pilih sprite apa saja. Centang jika sudah dilakukan.

Masuk tab Code → kategori My BlocksMake a Block.
Buat blok bernama sapa tanpa parameter. Isinya: katakan “Halo, ini modul pertamaku!” selama 2 detik.
Panggil blok sapa dari event “ketika bendera hijau diklik”.
Tambahkan parameter teks nama, lalu ubah ucapan menjadi “Halo, (nama)!”.

Tuliskan dengan kalimatmu sendiri: apa bedanya modul sebelum dan sesudah dipanggil?

Kegiatan 2 — Modul linear1 dan utama (25 menit)

Persamaan: k1 · x − k2 = k3x = (k3 + k2) / k1

  1. Buat variabel nilai x.
  2. Buat modul linear1 dengan 3 input angka: k1, k2, k3.
  3. Di dalam linear1: set nilai x ke (k3 + k2) / k1, lalu katakan gabungan “nilai x adalah” + nilai x.
  4. Buat modul utama yang memanggil linear1 4 5 15.
  5. Letakkan blok utama di area kerja dan jalankan.

Hasil yang muncul di layar:

Isi tabel eksperimen. Hitung manual dulu, baru jalankan program.

Nok1k2k3ManualProgramSesuai?
12416
23423
35525

Kesimpulan eksperimen:

Nama file: IX-BK-AP-A01-I-…sb3

Kegiatan 3 — f(x, y) = ax + by (20 menit)

Tanpa menyalin blok dari contoh, buat:

  • Modul persamaanLinear berparameter a, b, x, y.
  • Modul utama yang memanggilnya dan menampilkan f(x, y).
abxyManualProgramSesuai?
201032
301543
402054

Nama file: IX-BK-AP-A02-I-…sb3

Kegiatan 4 — Tantangan kontekstual (opsional, nilai plus)

Buat program “Kalkulator Dua Bangun” berisi minimal tiga modul:

  1. luasPersegiPanjang (p, l)
  2. luasSegitiga (alas, tinggi)
  3. utama yang menanyakan pilihan pengguna, memanggil modul yang sesuai, dan menampilkan hasil.

Sketsa ide modulmu (nama + parameter + rumus):

Refleksi

1. Apa keuntungan membuat modul dibanding menyalin blok berulang kali?

2. Kapan sebuah program wajib dipecah menjadi modul?

3. Satu hal yang masih membingungkan dan akan kamu tanyakan ke guru: