(PBO)
Dibuat Oleh :
Nurfiyah (20212205005)
Mifta Khuljanna (20212205007)
Nurfaizal (20212205016)
Asrullah (20212205018)
St Nuralisah (20212205150)
Pada tahun 1980-an, bahasa pemrograman seperti C++ dan Smalltalk muncul dan
menjadi populer sebagai bahasa pemrograman berorientasi objek. C++ dikembangkan
oleh Bjarne Stroustrup pada tahun 1983, sementara Smalltalk dikembangkan oleh Alan
Kay dan timnya pada Xerox PARC.
1. Kelas (class)
Kelas (class) merupakan penggambaran satu set objek yang memiliki atribut
yang sama. Kelas mirip dengan tipe data ada pemrograman non objek, akan tetapi
lebih komprehensif karena terdapat struktur sekaligus karakteristiknya. Kelas
baru dapat dibentuk lebih spesifik dari kelas ada umumnya.kelas merupakan
jantung dalam pemrograman berorientasi objek.
2. Objek (Object)
Objek merupakan teknik dalam menyelesaikan masalah yang kerap muncul
dalam pengembangan perangkat lunak. Teknik ini merupakan teknik yang efektif
dalam menemukan cara yang tepat dalam membangun sistem dan menjadi
metode yang paling banyak dipakai oleh para pengembang perangkat lunak.
Orientasi objek merupakan teknik pemodelan sistem riil yang berbasis objek.
Objek adalah entitas yang memiliki atribut, karakter dan kadang kala disertai
kondisi. Objek mempresentasikan sesuai kenyataan seperti siswa,
mempresentasikan dalam bentuk konsep seperti merek dagang, juga bisa
menyatakan visualilasi seperti bentuk huruf (font).
3. Abstaksi (Abstraction)
Kemampuan sebuah program untuk melewati aspek informasi yang diolah
adalah kemampuan untuk fokus pada inti permasalahan. Setiap objek dalam
sistem melayani berbagai model dari pelaku abstrak yang dapat melakukan kerja,
laporan dan perubahan serta berkomunikasi dengan objek lain dalam sistem,
tanpa harus menampakkan kelebihan diterapkan.
4. Enkapsulasi (pembungkus)
Pembungkusan merupakan penggabungan potongan-potongan informasi dan
perilaku-perilaku spesifik yang bekerja pada informasi tersebut, kemudian
mengemasnya menjadi sesuatu yang disebut objek (Nugroho,2005).
Enkapsulasi adalah proses memastikan pengguna sebuah objek tidak dapat
menggantikan keadaan dari sebuah objek dengan cara yang tidak sesuai prosedur.
Artinya, hanya metode yang terdapat dalam objek tersebut yang diberi izin untuk
mengakses keadaan yang diinginkan. Setiap objek mengakses interface yang
menyabutkan bagaimana objek lainnya dapat berintegrasi dengannya. Objek
lainnya tidak akan mengetahui dan tergantung kepada representasi dalam objek
tersebut.
5. Polimorfisme
Polimorfise merupakan suatu fungsionalitas yang diimplikasikan dengan
berbagai cara yang berbeda. Pada program berorientasi objek, pembuat program
dapat memiliki berbagai implementasi untuk sebagian fungsi tertentu.
6. Inheritas (Pewarisan)
Konsep inheritas mempunyai fungsi mengatur polimorfise dan enkapsulasi
dengan mengizinkan objek didefinisikan dan diciptakan dengan jenis khusus dari
objek yang sudah ada. Objek-objek ini dapat membagi dan memperluas perilaku
mereka tanpa mengimplementasikan perilaku tersebut.
1. Modularitas
Keuntungan saat bekerja dengan bahasa OOP adalah Anda akan tahu persis ke
mana harus mencari ketika terjadi kesalahan. Saat skenario ini terjadi, pemecahan
masalah merupakan proses yang panjang karena beberapa pengembang
menelusuri kode baris demi baris untuk melihat apa yang salah.
Namun, saat mempraktikkan OOP, Anda menggunakan prinsip enkapsulasi.
Objek-objek di sini berdiri sendiri, dan masing-masing fungsi melakukan
fungsinya sendiri sambil membiarkan bit lainnya sendiri.
Karena enkapsulasi memungkinkan objek menjadi mandiri, proses
pemecahan masalah dan pengembangan kolaboratif menjadi lebih mudah dan
lancar.
4. Pemecahan masalah
Mengatasi masalah adalah tugas umum di antara para profesional di luar
angkasa, baik pengembang internal, lepas pantai, atau dekat pantai . Namun yang
membedakan yang terbaik dari yang lain adalah pendekatan mereka dalam
mengatasi masalah ini. Menangani serangkaian masalah yang rumit dan
mengubahnya menjadi bagian yang lebih kecil adalah praktik yang ditampilkan di
OOP.
Dalam paradigma ini, Anda memecah kode perangkat lunak menjadi bagian
yang lebih kecil. Kemudian potongan-potongan ini dapat digunakan kembali
dalam solusi untuk berbagai masalah yang kompleks dan sederhana. Mereka juga
dapat digantikan oleh modul masa depan yang berhubungan dengan antarmuka
yang sama dengan detail implementasi.
5. Fleksibilitas polimorfisme
Polimorfisme, menurut definisi, berarti kemampuan suatu objek untuk
mengambil banyak bentuk. Saat digunakan dalam OOP, ini adalah konsep bahwa
Anda dapat mengakses objek dari berbagai jenis melalui antarmuka yang
sama. Ini memungkinkan satu fungsi untuk beradaptasi dengan kelas tempatnya
ditempatkan.
1. John Dewey dan William Kilpatrick: Menentukan proyek yang bermakna dan
relevan dengan kehidupan nyata siswa. Menurut Dewey dan Kilpatrick, proyek
yang baik adalah proyek yang terkait dengan masalah atau kebutuhan nyata dalam
kehidupan siswa.
2. Helen Parkhurst: Mengatur pembelajaran berbasis proyek dalam rangkaian yang
teratur dan sistematis. Parkhurst menekankan pentingnya mengatur proyek secara
terstruktur dengan memperhatikan tujuan, proses, dan hasil akhir yang jelas.
3. Howard Gardner: Memberikan dukungan dan arahan yang cukup bagi siswa
selama proses pembelajaran berbasis proyek. Gardner menyoroti pentingnya
memastikan siswa memiliki sumber daya dan arahan yang cukup untuk mengatasi
tantangan dan hambatan yang muncul dalam proses pembelajaran.
4. David Kolb: Mendorong siswa untuk merefleksikan pengalaman dan hasil
pembelajaran mereka. Kolb menekankan pentingnya merefleksikan pengalaman
dan hasil pembelajaran untuk memperkuat keterampilan siswa dan meningkatkan
kesadaran diri.
5. Linda Darling-Hammond: Menggunakan teknologi dan sumber daya pendukung
lainnya yang dapat membantu siswa dalam mengembangkan proyek mereka.
Darling-Hammond menyoroti pentingnya memanfaatkan teknologi dan sumber
daya pendukung lainnya dalam memfasilitasi pembelajaran siswa dan
memperkuat keterampilan mereka
6. Seymour Papert: Memberikan ruang dan waktu yang cukup bagi siswa untuk
mengeksplorasi ide-ide dan konsep-konsep baru yang terkait dengan proyek
mereka. Papert menekankan pentingnya memberikan kebebasan dan fleksibilitas
kepada siswa untuk mengembangkan ide dan konsep mereka sendiri dalam proyek
mereka.
7. Grant Wiggins dan Jay McTighe: Menerapkan penilaian yang berfokus pada
keterampilan dan kompetensi siswa yang dikembangkan selama proses
pembelajaran berbasis proyek. Wiggins dan McTighe menekankan pentingnya
menggunakan penilaian yang mengukur keterampilan dan kompetensi yang
dikembangkan siswa selama proses pembelajaran, bukan hanya hasil akhir
proyek.
C. Sumber Referensi
https://media.neliti.com/media/publications/234372-pembelajaran-pemrograman-
berorientasi-ob-745fe077.pdf
https://www.apollotechnical.com/why-object-oriented-programming-matters/?
external_link=true
https://www.edutopia.org/project-based-learning-guide-importance
https://www.edutopia.org/project-based-learning-guide-planning-preparation
https://www.edutopia.org/project-based-learning-guide-supporting-students
https://www.edutopia.org/project-based-learning-guide-technology-integration
https://www.edutopia.org/project-based-learning-guide-student-driven
https://www.bie.org/object/document/pbl_teachers_planning_pack