0% menganggap dokumen ini bermanfaat (0 suara)
48 tayangan9 halaman

Modul Ajar OOP untuk SMK DPK

Modul ajar ini membahas konsep dasar pemrograman berorientasi objek (OOP) dengan fokus pada class, objek, dan method, serta penerapannya dalam pengembangan perangkat lunak dan gim. Peserta didik diharapkan memiliki pemahaman awal tentang OOP dan akan belajar melalui pendekatan praktis, termasuk penggunaan Java sebagai bahasa pemrograman. Tujuan pembelajaran mencakup kemampuan merancang dan menerapkan struktur class dan objek secara efisien, serta mengembangkan keterampilan kolaborasi dan komunikasi dalam konteks pemrograman.

Diunggah oleh

Paeri
Hak Cipta
© All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
48 tayangan9 halaman

Modul Ajar OOP untuk SMK DPK

Modul ajar ini membahas konsep dasar pemrograman berorientasi objek (OOP) dengan fokus pada class, objek, dan method, serta penerapannya dalam pengembangan perangkat lunak dan gim. Peserta didik diharapkan memiliki pemahaman awal tentang OOP dan akan belajar melalui pendekatan praktis, termasuk penggunaan Java sebagai bahasa pemrograman. Tujuan pembelajaran mencakup kemampuan merancang dan menerapkan struktur class dan objek secara efisien, serta mengembangkan keterampilan kolaborasi dan komunikasi dalam konteks pemrograman.

Diunggah oleh

Paeri
Hak Cipta
© All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd

MODUL AJAR DEEP LEARNING

MATA PELAJARAN: DASAR-DASAR PENGEMBANGAN PERANGKAT LUNAK


DAN GIM
ELEMEN: PEMROGRAMAN BERORIENTASI OBJEK
MATERI: KONSEP CLASS, OBJECT, DAN METHOD PADA PEMROGRAMAN
BERORIENTASI OBJEK (OOP)

A. IDENTITAS MODUL
Nama Sekolah : SMK NEGERI 4 BOJONEGORO
Nama Penyusun : .....................................................................................
Mata Pelajaran : Dasar-Dasar Pengembangan Perangkat Lunak dan Gim
Kelas / Fase /Semester : X/ E / Ganjil
Alokasi Waktu : 51 Jam Pelajaran (1 Pertemuan @ 3 JP)
Tahun Pelajaran : 2025 / 2026

B. IDENTIFIKASI KESIAPAN PESERTA DIDIK


● Pengetahuan Awal: Peserta didik diharapkan memiliki pemahaman dasar tentang
konsep dasar perograman berorientasi objek (sebagaimana yang sudah dibahas pada bab
sebelumnya). Ini meliputi kemampuan dalam memahami konsep pemrograman
berorientasi objek, yang terdiri dari 4 elemen dasar, diantaranya yaitu: class, objek,
method, dan atribut pada pemrograman berorientasi objek. Beberapa mungkin sudah
memiliki pengalaman menggunakan analogi yang terdapat di lingkungn sekitar.
● Minat: Minat terhadap pemrograman sangat bervariasi. Pendekatan yang mengaitkan
pemrograman dengan pembuatan aplikasi yang mereka gunakan sehari-hari (game
sederhana dan kalkulator), atau pemecahan masalah yang relevan dengan hobi mereka,
akan meningkatkan minat. Penggunaan platform pemrograman Java dapat membuat
pengalaman awal lebih menyenangkan.
● Latar Belakang: Peserta didik berasal dari latar belakang yang beragam dalam hal akses
dan paparan terhadap teknologi dan pemrograman. Beberapa mungkin sudah memiliki
komputer pribadi dan koneksi internet yang stabil, sementara yang lain mungkin terbatas.
Beberapa mungkin sudah pernah mencoba coding secara otodidak, sementara yang lain
sama sekali belum. Perlu pendekatan berdiferensiasi untuk menjembatani kesenjangan
ini.
● Kebutuhan Belajar:
○ Visual: Membutuhkan contoh diagram class, contoh kode dengan highlighting
sintaks, video tutorial langkah demi langkah, dan simulasi eksekusi kode,
○ Auditori: Membutuhkan penjelasan lisan yang jelas tentang konsep class, objek,
method, dan atribut, diskusi kelompok untuk memecahkan bug, atau mendengarkan
penjelasan dari guru/teman.
○ Kinestetik: Membutuhkan praktik langsung menganalisis class, objek, method, dan
atribut pada lingkungan sekitar.
○ Beberapa peserta didik mungkin memerlukan bimbingan ekstra dalam memhami,
mengaplikasikan, dan menganalisis class, objek, method, dan atribut pada
pemrograman berorientasi objek. sementara yang lain mungkin siap untuk tantangan
proyek yang lebih besar dan mandiri.

C. KARAKTERISTIK MATERI PELAJARAN


● Jenis Pengetahuan yang Akan Dicapai: Pengetahuan konseptual mengenai
pemrograman berorientasi objek, mencakup definisi dan implementasi class, object,
dan method. Peserta didik akan memahami konsep atribut dan perilaku objek,
enkapsulasi, serta cara mendefinisikan dan menggunakan method dalam suatu class.
Selain itu, akan dibahas bagaimana membuat dan mengelola instance dari class, serta
keterkaitan antar objek. Pengetahuan prosedural mencakup cara menuliskan struktur
class dengan benar, memanggil method dari objek, dan debugging program OOP
sederhana. Pengetahuan metakognitif berupa kemampuan merancang struktur class
yang efisien dan sesuai kebutuhan program.
● Relevansi dengan Kehidupan Nyata Peserta Didik: Materi ini sangat relevan
karena konsep OOP banyak digunakan dalam pengembangan aplikasi modern
(aplikasi mobile, web, desktop). Pemahaman terhadap class dan object akan
mempermudah peserta didik dalam memahami struktur program dunia nyata, seperti
model data pengguna, produk, atau transaksi. Keterampilan ini juga mendorong
pemikiran logis, kreatif, serta kemampuan problem-solving berbasis objek.
● Tingkat Kesulitan: Tingkat kesulitan tergolong menengah, terutama bagi peserta
didik yang baru pertama kali mengenal konsep OOP. Konsep class dan object dapat
dipahami dengan mudah jika diberikan analogi yang tepat. Namun, pemahaman
tentang relasi antar class (inheritance, dependency) dan penggunaan method
memerlukan latihan berulang dan pemikiran logis yang kuat. Diperlukan latihan
terus-menerus agar terbiasa menyusun program modular dengan pendekatan objek.
● Struktur Materi: Materi dimulai dengan pengenalan konsep OOP secara umum,
kemudian dilanjutkan dengan pemahaman tentang class dan object (atribut dan
method). Selanjutnya, peserta didik akan belajar cara membuat objek dari class,
memanggil method, serta memahami visibilitas (akses modifier) dan enkapsulasi.
Latihan diberikan secara bertahap, mulai dari membuat class sederhana hingga
program yang terdiri dari banyak class yang saling berinteraksi.
● Integrasi Nilai dan Karakter:
○ Penalaran Kritis: Mengembangkan kemampuan menganalisis hubungan antar
class dan object, merancang struktur program OOP yang logis, serta menemukan
dan memperbaiki kesalahan logika dalam penggunaan method atau atribut objek.
○ Kreativitas: Mendorong peserta didik untuk merancang struktur class yang
inovatif dan efisien, serta mengimplementasikan method yang dapat
menyelesaikan permasalahan secara elegan dalam berbagai skenario aplikasi.
○ Kolaborasi: Melatih kemampuan bekerja sama dalam merancang sistem OOP
berbasis banyak class, membagi peran dalam pembuatan class, object, dan testing
antar method melalui kerja [Link] kemampuan bekerja sama dalam
kelompok untuk merancang algoritma, menulis kode, dan melakukan debugging.
○ Kemandirian: Mendorong peserta didik untuk mandiri dalam mengembangkan
program berbasis objek, mencari solusi dari kesalahan dalam pemanggilan
method, dan memperbaiki struktur class secara mandiri melalui eksplorasi dan
praktik.
○ Ketelitian: Menekankan pentingnya ketelitian dalam mendefinisikan atribut dan
method, memastikan akses modifier digunakan dengan tepat, serta menjaga alur
logika antar objek agar program berjalan sesuai harapan. Menekankan pentingnya
sintaks yang benar dan logika yang presisi dalam pemrograman.
○ Inovatif: Mendorong peserta didik menciptakan struktur class dan method yang
reusable dan scalable untuk menyelesaikan berbagai kebutuhan program secara
efisien dan kreatif.
○ Komunikasi: Melatih peserta didik menjelaskan rancangan class, relasi antar
object, dan alur kerja method kepada rekan sekelompok, baik secara lisan
maupun tertulis, dalam kegiatan presentasi atau diskusi tim.

D DIMENSI PROFIL LULUSAN


Berdasarkan tujuan pembelajaran, dimensi profil lulusan yang akan dicapai adalah:
● Penalaran Kritis: Peserta didik mampu merancang class dan object yang tepat sesuai
kebutuhan program, menganalisis kesalahan logika dalam method, serta
mengoptimalkan struktur OOP untuk efisiensi dan skalabilitas.
● Kreativitas: Peserta didik mampu merancang struktur class dan method secara kreatif
untuk memenuhi kebutuhan program dan menyelesaikan masalah dengan pendekatan
OOP yang inovatif.
● Kolaborasi: Peserta didik mampu bekerja sama dalam kelompok untuk membagi
peran dalam membuat class, saling mengintegrasikan objek, dan melakukan
debugging antar modul program [Link] didik mampu bekerja sama dengan
teman dalam merancang algoritma, menulis kode, dan melakukan debugging bersama.
● Kemandirian: Peserta didik menunjukkan inisiatif dan ketekunan dalam memahami
konsep objek, mencoba implementasi berbagai method, serta menyelesaikan proyek
berbasis OOP secara mandiri.
● Komunikasi: Peserta didik mampu menjelaskan rancangan class, object, dan method
serta hubungan antar objek dengan jelas kepada rekan tim atau saat presentasi.
DESAIN PEMBELAJARAN

A. CAPAIAN PEMBELAJARAN (CP) NOMOR : 32 TAHUN 2024


Pada akhir Fase E, peserta didik mampu menerapkan proses berpikir efektif dan efisien
dalam menyelesaikan persoalan melalui pendekatan algoritmik berorientasi objek. Peserta
didik dapat merancang solusi dalam bentuk struktur class, object, dan method untuk data
dan instruksi yang dijalankan sistem komputer secara efisien. Peserta juga mampu
menerapkan berpikir kritis dalam menyusun relasi antar objek agar menghasilkan
program yang modular dan mudah dikembangkan. Selain itu, peserta memahami
pentingnya peran profesi informatika, serta tanggung jawab sebagai warga digital yang
memahami aspek hukum dan etika pemrograman.
Elemen Deskripsi Capaian Pembelajaran
Pemrograman Meliputi penggunaan Menerapkan konsep dasar
Berorientasi prosedur dan fungsi, class, pemrograman berorientasi objek
Objek objek, method, package, pada proyek sederhana
access modifier, enkapsulasi, pengembangan perangkat lunak dan
interface, pewarisan, dan Gim, serta menganalisis dan
polymorphism. memecahkan masalah dengan
memanfaatkan prinsip enkapsulasi,
pewarisan, dan polymorphism untuk
menghasilkan Solusi pemrograman
yang tepat.

B. LINTAS DISIPLIN ILMU


● Matematika: Logika, aljabar, diskrit, fungsi, bilangan. Banyak masalah
pemrograman yang memerlukan pemahaman matematis.
● Bahasa Inggris: Banyak istilah dan sintaks dalam pemrograman berasal dari Bahasa
Inggris.

C. TUJUAN PEMBELAJARAN
Pertemuan 1: Konsep class dan objek pada pemrograman berorientasi objek
Setelah kegiatan pembelajaran, peserta didik diharapkan mampu:
● Menjelaskan konsep class dan objek pada pemrograman berorientasi objek.
● Menganalisis class pada lingkungan sekitar.
● Mengenal lingkungan pengembangan (IDE/editor online) untuk bahasa
pemrograman yang digunakan (misal: Java).
● Menulis syntaks class dan objek pada program sederhana untuk mencetak teks.
Pertemuan 2: Konsep atribut dan method pada pemrograman berorientasi objek
Setelah kegiatan pembelajaran, peserta didik diharapkan mampu:
● Mendefinisikan atribut dan method dan menjelaskan pentingnya dalam
pemrograman.
● Mengidentifikasi atribut dan method pada objek dalam bahasa pemrograman yang
digunakan.
● Menulis program sederhana yang melibatkan atribut dan method pada pemrograman
berorientasi objek.

D. TOPIK PEMBELAJARAN KONTEKSTUAL


● Program sederhana: Membuat program sederhana dengan berbagai topik meliputi
(kendaraan, hewan, dan buah)

E. KERANGKA PEMBELAJARAN
1. PRAKTIK PEDAGOGIK:
○ Model Pembelajaran: Project-Based Learning (PjBL) untuk membuat aplikasi
sederhana.
○ Strategi Pembelajaran:
■ Mindful Learning: Fokus pada pemahaman setiap baris kode dalam class dan
method, latihan tracing interaksi antar object, eksplorasi pemanggilan method,
serta debugging kesalahan logika antar object sebagai proses reflektif dan
peluang belajar.
■ Meaningful Learning: Mengaitkan konsep OOP dengan kasus nyata (misalnya:
mengapa kita butuh banyak object dalam aplikasi e-commerce?), menyusun
program sederhana berbasis objek, dan mendorong peserta didik membuat
program yang relevan dengan minat dan kebutuhan mereka.
■ Joyful Learning: Tantangan coding yang kompetitif seperti siapa tercepat
menyusun relasi antar class dalam skenario nyata, permainan debugging logika
antar objek, membuat game OOP sederhana dengan memanfaatkan object reuse,
menggunakan platform visual seperti diagram UML class, dan sesi pair
programming untuk membangun dan menguji method bersama.
○ Metode Pembelajaran: Praktikum dan demonstrasi langsung (live coding), latihan
terstruktur.
2. KEMITRAAN PEMBELAJARAN:
○ Lingkungan Sekolah: Guru RPL/komputer sebagai fasilitator, pengelola lab
komputer. Anggota klub pemrograman atau ekstrakurikuler IT sebagai mentor
sebaya.
○ Lingkungan Luar Sekolah: Narasumber (programmer dan software developer,)
untuk berbagi pengalaman dan inspirasi (melalui kelas industri). Komunitas online
coding sebagai sumber belajar dan dukungan.
○ Masyarakat: Mengidentifikasi masalah sehari-hari di lingkungan sekitar yang
berpotensi diselesaikan dengan program sederhana.
3. LINGKUNGAN BELAJAR:
○ Ruang Fisik: Laboratorium komputer dengan perangkat yang memadai dan koneksi
internet stabil. Jika tidak ada, laptop/tablet pribadi peserta didik yang dapat diakses.
Meja yang cukup luas untuk kerja kelompok. Proyektor untuk demonstrasi guru.
○ Ruang Virtual: Platform Google Classroom untuk berbagi materi (slide, link IDE
online, video tutorial), penugasan coding, dan pengumpulan proyek. IDE online
(misal: Java) sebagai lingkungan coding.
○ Budaya Belajar: Lingkungan yang mendukung eksperimen dan mencoba hal baru.
Mendorong peserta didik untuk tidak takut membuat kesalahan (bug), melainkan
melihatnya sebagai bagian alami dari proses belajar. Menekankan kolaborasi dan
berbagi pengetahuan.
4. PEMANFAATAN DIGITAL:
○ Forum Diskusi Daring: LMS, WhatsApp, Google Classroom atau platform lain
untuk memposting bug yang ditemui, meminta bantuan, atau berbagi ide kode.
○ Penilaian Daring: Kuis sintaks atau konsep dasar melalui Google Form.
Pengumpulan laporan hasil praktikum melalui Google Classroom.
○ Alat Interaktif:
■ IDE Online/Platform Coding: Java, One compiler, codiva, dan OnlineGDB
sebagai lingkungan untuk menulis dan menjalankan kode.
■ Situs Tutorial Interaktif: Codecademy, freeCodeCamp, W3Schools untuk
belajar sintaks dan konsep dasar secara interaktif.
■ YouTube: Menonton video tutorial pemrograman dan live coding.

F. LANGKAH-LANGKAH PEMBELAJARAN
PERTEMUAN 1: KONSEP CLASS DAN OBJEK PADA PEMROGRAMAN
BERORIENTASI OBJEK
KEGIATAN PENDAHULUAN (15 MENIT)
○ Mindful Learning: Guru memulai dengan pertanyaan: " "Apa yang membuat suatu
objek dalam dunia nyata bisa direpresentasikan dalam program?” “Bagaimana kita
bisa memerintahkan suatu objek untuk melakukan sesuatu?” Guru mengarahkan
peserta didik untuk fokus pada ide "objek sebagai representasi nyata dalam kode"
dan "class sebagai cetak biru objek."
○ Joyful Learning: Guru menampilkan video singkat tentang objek dalam dunia nyata
(misalnya “teknologi dan komputer”) dan bertanya:
"Kalau kamu ingin membuat program tentang sepeda atau robot, apa saja yang harus
dimiliki objek itu?"
○ Meaningful Learning: Guru mengaitkan ide “objek nyata” dengan konsep dalam
OOP yaitu “class, objek, dan method”.
Guru menyampaikan tujuan pembelajaran hari ini:
 Mengenal konsep class dan objek
 Memahami bagaimana objek memiliki atribut dan method
 Mempelajari dasar membuat dan memanggil method
 Guru juga memperkenalkan bahasa pemrograman yang digunakan (misalnya
“Java”) sebagai media pembelajaran OOP yang sesuai.

KEGIATAN INTI (60 MENIT)


○ Memahami (20 menit):
 Guru menjelaskan perbedaan antara class dan objek dalam paradigma
pemrograman berbasis objek (OOP), termasuk konsep atribut (data) dan metode
(perilaku).
 Guru memberikan analogi nyata, misalnya:
 Class sebagai cetakan kue.
 Objek sebagai kue hasil cetakan.
 Guru menampilkan contoh class sederhana dalam bahasa pemrograman (misalnya
class Mahasiswa) beserta objeknya (mhs1 = Mahasiswa()).
 Guru mendemonstrasikan lingkungan pemrograman (IDE Java), dan menunjukkan
cara menulis class dan membuat objek serta mencetak data dari objek.
○ Mengaplikasi (25 menit):
 Peserta didik bekerja secara individu atau berpasangan untuk:
 Menulis class sederhana, contoh: class Mobil dengan atribut merk dan warna.
 Membuat objek dari class tersebut, mengisi atribut, dan mencetak nilainya.
 Contoh Tantangan Tambahan (Diferensiasi):
 Tambahkan metode seperti tampilkan_info().
 Buat lebih dari satu objek dengan data berbeda.
 Guru memberikan soal eksplorasi ringan, seperti:
 Buat class Buku dengan atribut judul, pengarang, dan tahun_terbit, lalu buat dua
objek dari class tersebut dan tampilkan datanya."
o Merefleksi (15 menit):
 Peserta didik diminta menuliskan di kolom komentar Google Classroom:
 “Apa pemahaman barumu tentang class dan objek setelah membuatnya
sendiri?”
 “Apa yang paling menantang saat menulis class dan membuat objek?”
 Beberapa peserta didik diminta membagikan pengalamannya ke depan kelas.

KEGIATAN PENUTUP (15 MENIT)


 Umpan Balik Konstruktif
 Guru memberikan apresiasi atas keberanian dan kreativitas peserta didik dalam
mencoba menulis class dan membuat objek.
 Guru menyoroti beberapa kesalahan umum (misalnya, salah tulis nama class, lupa
tanda kurung saat membuat objek, kesalahan pada method.
 Menyimpulkan Pembelajaran
 Peserta didik menyimpulkan secara kolaboratif bahwa:
 Class adalah blueprint, dan Objek adalah hasil nyata dari blueprint tersebut.
 Pemrograman berorientasi objek mempermudah pengelompokan data dan
fungsionalitas dalam satu kesatuan.
 Perencanaan Pembelajaran Selanjutnya
 Guru memberikan pengantar materi selanjutnya: atribut dan method pada
pemrograman berorientasi objek
 Tugas eksplorasi:
 "Carilah contoh penggunaan class dan objek dalam kehidupan sehari-hari di bidang
teknologi atau aplikasi."

G. ASESMEN PEMBELAJARAN
Asesmen akan dilakukan secara komprehensif untuk mengukur pencapaian kompetensi
peserta didik.

ASSESSMENT AS LEARNING (AS): (PERLU MEMBUAT JURNAL REFLEKSI)


○ Self-Assessment: Peserta didik mengisi jurnal refleksi setelah sesi praktik coding,
mencakup:
 Pemahaman tentang perbedaan class dan objek.
 Kesulitan dalam membuat class atau objek.
 Bug yang ditemui (contoh: error saat pemanggilan method, kesalahan atribut),
serta cara mengatasinya.
 Strategi belajar dan sumber referensi yang [Link] refleksi setelah setiap
sesi coding tentang pemahaman konsep, bug yang ditemui dan cara mengatasinya,
serta strategi belajar pemrograman yang efektif.
○ Peer Assessment: Code Review berpasangan atau kelompok kecil:
 Peserta didik menilai kode program teman (contoh: class Mahasiswa, Mobil,
Buku) dengan memperhatikan struktur class, pembuatan objek, dan keterbacaan
kode.
 Memberikan masukan konstruktif: misalnya "Sebaiknya nama method lebih
deskriptif" atau "Bisa ditambahkan method tampilkan_info() agar lebih interaktif."
 Menilai kerja sama tim saat diskusi tugas kelompok..
○ Diskusi Kode: Guru mengamati partisipasi aktif saat diskusi:
 Menjelaskan peran atribut dan method dalam class.
 Memberikan pendapat dalam pemecahan bug terkait objek.
 Berbagi solusi dalam pembuatan objek dari berbagai [Link] partisipasi
aktif dalam diskusi tentang logika kode, debugging, dan berbagi solusi.

ASSESSMENT FOR LEARNING (AFL):


○ Kuis Singkat/Tanya Jawab Lisan: Menguji pemahaman sintaks dasar, definisi
class dan objek (menggunakan Google Form).
○ Latihan Coding Harian/Mingguan: Memberikan tugas coding singkat sebagai
latihan untuk mengidentifikasi pemahaman dan kesulitan siswa secara formatif, serta
memberikan umpan balik langsung.
○ Umpan Balik Guru: Memberikan umpan balik langsung saat praktikum, saat
debugging bersama, atau saat mengoreksi program.
○ Observasi: Guru mengamati kemampuan peserta didik dalam merancang class dan
objek, menulis kode, mengidentifikasi bug, dan menerapkan konsep pemrograman.

ASSESSMENT OF LEARNING (AOL):


○ Tes Tertulis: Soal-soal yang mencakup:
 Menulis pseudocode atau flowchart untuk class sederhana.
 Menganalisis kode class dan memprediksi output-nya.
 Menemukan dan memperbaiki bug pada kode class dan objek
 Menjelaskan konsep-konsep dasar OOP: class dan objek
○ Penilaian Kinerja/Proyek Pemrograman:
■ Proyek Akhir: Penilaian terhadap program yang dihasilkan (berfungsi dengan
benar, memenuhi spesifikasi, kode bersih/terbaca, efisien) dan presentasinya
(kemampuan menjelaskan class dan objek, proses debugging, dan interpretasi
hasil).
○ Tantangan Debugging:
 Guru memberikan program dengan kesalahan logika/class (misalnya method tidak
terpanggil, error parameter).
 Peserta didik diberi waktu untuk memperbaiki dan menjelaskan proses
perbaikannya.
o Portofolio Digital: Kumpulan semua program yang telah dibuat, laporan proyek,
dan jurnal refleksi yang menunjukkan perkembangan kompetensi peserta didik.

Anda mungkin juga menyukai