Anda di halaman 1dari 52

BAB 1

Konsep PemROGRAMAN
Modul Berorientasi Objek
Pemrograman Berorientasi Objek
-2- Kelas XI
KOMPETENSI
Pengetahuan
DASAR 3.1 Memahami konsep pemrograman berorientasi objek

Keterampilan
4.1 Mempresentasikan konsep pemrograman berorientasi objek
Pengetahuan
3.1.1 Menjelaskan konsep dasar pemrograman berorientasi obyek.
3.1.2 Menjelaskan prosedur pemrograman berorientasi obyek.
3.1.3 Menjelaskan perbandingan antara pemrograman berorientasi obyek
dengan pemrograman struktural.

Keterampilan
4.1.1 Mempresentasikan konsep pemrograman berorientasi obyek.

Indikator Pencapaian
Kompetensi
materi pertemuan 2
4jp/ 2minggu
Keunggulan Pemrograman Beorientasi Objek :
• Pemrograman Tidak Terstruktur
• Pemrograman Prosedural
• Pemrograman Terstruktur
• Pemrograman Berorientasi Objek

Perbandingan pemrograman berorientasi objek dengan pemrograman prosedural


• Peserta didik dapat menjelaskan
keunggulan pemrograman berorientasi objek dengan
Tujuan tepat
pembelajaran • Peserta didik dapat menganalisis perbedaan keunggulan
pemrograman berorientasi objek dengan tepat
Masih ingatkah kamu materi pertemuan sebelumnya ?

Diharapkan materi pada pertemuan sebelumnya dapat


dijadikan bekal untuk mempelajari materi pertemuan hari
ini, karena materi pertemuan hari ini adalah kelanjutan
dari materi pertemuan sebelumnya
kamu akan mempelajari mengenai
Keunggulan Pemrograman Berorientasi Objek (PBO)
Bab ini membahas tentang keunggulan pemrograman berorientasi objek

Anda diharapkan dapat mengimplementasikan Keungguluan PBO dan


dapat membandingkan antara
✓ Pemrograman Tidak Terstruktur,
✓ Pemrograman Prosedural,
✓ Pemrograman Terstruktur,
✓ Pemrograman Berorientasi Objek

setelah mempelajari bab ini


Untuk dapat lebih memahami mengenai Keunggulan PBO,
perhatikanlah penjelasan istilah berikut ini!

Kata kunci yang sering digunakan adalah paradigma, dan


dalam paradigma ini terdapat :

Algoritma + Struktur Data


= Program
Agar kamu dapat lebih memahami
keunggulan PBO
ayo bersama-sama mempelajari materi
pada Bab I Modul ke 2 ini dengan penuh
semangat!
Sudah siap
semuanya ???
materi pertemuan 2
4jp/ 2minggu
Keunggulan Pemrograman Beorientasi Objek :
• Pemrograman Tidak Terstruktur
• Pemrograman Prosedural
• Pemrograman Terstruktur
• Pemrograman Berorientasi Objek

Perbandingan pemrograman berorientasi objek dengan pemrograman prosedural


Terdapat 4 Keunggulan PBO?
❖ Pemrograman Tidak Terstruktur
❖ Pemrograman Prosedural
❖ Pemrograman Terstruktur
❖ Pemrograman Berorientasi Objek

Apakah perbedaan dari 4 Pemrograman di atas?


Cobalah untuk mempelajari uraian materi berikut ini mengenai :
Keunggulan Pemrograman Berorientasi Objek
Pemrograman
Tidak Terstruktur
Pemrograman
Pemrograman tidak terstruktur atau monolithic
tidak terstruktur programing adalah paradigma pemrograman
yang paling awal dan secara historis mampu
menciptakan algoritma turing-complete.
Pemrograman tidak terstruktur
Secara garis besar, sebuah pemrograman tidak terstruktur yang mempunyai ciri sebagai berikut :
a. Seluruh permasalahan ini diselesaikan sebagai blok tunggal.
b. Semua data bersifat global dan tidak ada keamanan.
c. Banyak menggunakan perintah jump dan perintah go to pada saat melakukan prosedur
melompat.
d. Cocok untuk permasalah kecil
e. Sulit untuk melacak kesalahan program.
Pemrograman tidak terstruktur

Contoh bahasa pemrograman yang termasuk dalam pemrograman tidak terstruktur :

BASIC, ASSEMBLY LANGUAGE, FORTRAN, DAN COBOL


Pemrograman
Prosedural
Suatu pandangan tentang pemrograman yang didasari
PENGERTIAN konsep mesin Von Newman (konsep program tersimpan)
kumpulan tempat penyimpanan (memori) yang
Pemrograman dibedakan menjadi memori koordinasi dan masing-
masing memori dapat diberikan nilai, selanjutnya akan
Prosedural dieksekusi satu per satu oleh sequential melalui sebuah
proses tunggal.

Dapat dikatakan bahwa sebuah program itu terdiri dari


algoritma dan struktur data.
01 02 03
Diselesaikan dalam bentuk prosedur Program merupakan urut-urutan Fokus utama pada prosedur dan
atau fungsi. instruksi dan program dipecah-pecah fungsi. Fungsi dan prosedur digunakan
dalam subprogram yang lebih untuk memanipulasi data, sedangkan
sederhana. data sendiri bersifat pasif, ibaratnya
fokus pada bagaimana cara komputer
menangani masalah.

Ciri-ciri Pemrograman prosedural


Pemrograman Prosedural
Konsep pemrograman prosedural dapat dilihat pada tabel berikut.

Garis besar Konsep Pemrograman Prosedural Fitur Pemrograman Prosedural


Masalah yang diberikan dibagi dalam beberapa submasalah bergantung Program besar yang terbagi dalam fungsi kecil atau prosedur.
pada fungsinya.
Submasalah disebut prosedur atau metode. Menggunakan pendekatan pemrograman top-down.
Prosedur apa pun dapat dipanggil pada setiap saat selama pelaksanaan Data bergerak bebas dari satu fungsi ke yang lain.
program.
Program ini mempunyai variabel global dan lokal Sebagian besar fungsi berbagi data umum.
Penekanan diberikan untuk algoritma.
Pemrograman Prosedural
Kelebihan dan Kekurangan pemrograman prosedural dapat dilihat pada tabel berikut :
Kelebihan Pemrograman Prosedural Kekurangan dari Pemrograman Prosedural
Mempunyai algoritma pemecahan masalah yang sederhana, standar, Program sulit untuk proses perawatan.
dan efektif.
Penulisan program mempunyai struktur logika yang benar-benar Fungsi yang tersedia berusaha diubah tanpa harus mengaktifkan
mudah dipahami. sistem secara keseluruhan.
Program hanya terdiri atas tiga struktur dasar, yaitu struktur berurutan, Sulit untuk melacak kesalahan program.
struktur seleksi, dan struktur perulangan.
Mempunyai dokumentasi yang baik.
Menghindari penggunaan GOTO.
Contoh pemrograman prosedural adalah bahasa-bahasa pemrograman tingkat tinggi

C++ PASCAL DELPHI COBOL TURBO PROLOG BORLAND DELPHI


Pemrograman Prosedural

Keuntungan menggunakan metodologi berorientasi objek adalah sebagai berikut.


Meningkatkan produktivitas, Karena kelas dan objek yang ditemukan dalam suatu masalah masih dapat dipakai ulang untuk masalah lainnya yang
melibatkan objek itu sendiri.

Pengembangan software lebih cepat, Karena sistem yang dibangun dengan baik dan benar pada saat analisis dan perancangan akan menyebabkan
berkurangnya kesalahan pada saat pengodean.

Kemudahan pemeliharaan, Karena dengan model objek, pola-pola yang cenderung tetap dan stabil dapat dipisahkan, sedangkan pola-pola yang
mungkin sering berubah-ubah adanya konsistensi karena sifat pewarisan dan penggunaan notasi yang sama pada saat analisis, perancangan, maupun
pengodean.
Pemrograman Prosedural
Keuntungan menggunakan metodologi berorientasi objek adalah sebagai berikut.
Hasil produk lebih berkualitas, Karena kelas dan objek yang ditemukan dalam suatu masalah masih dapat dipakai ulang untuk masalah lain yang
melibatkan objek itu sendiri.

Pengembangan software lebih cepat, Karena sistem yang dibangun dengan baik dan benar pada saat analisis dan perancangan akan menyebabkan
berkurangnya kesalahan pada saat pengodean.

Kemudahan pemeliharaan, Karena Dengan model objek, pola yang digunakan akan tetap dan stabil serta dapat dipisahkan dan pola yang sifatnya sering
berubah-ubah. Adanya konsistensi karena sifat pewarisan dan penggunaan notasi yang sama pada saat analisis, perancangan, maupun pengodean.

Produk yang dihasilkan lebih berkualitas, Karena pendekatan pengembangan lebih dekat dengan dunia nyata dan adanya konsistensi pada saat
pengembangannya maka perangkat lunak yang dihasilkan akan mampu memenuhi kebutuhan pemakai.
Pemrograman
Terstruktur
merupakan suatu proses untuk menerapkan tata
Pemrograman urutan langkah dalam menyelesaikan masalah
Terstruktur dalam bentuk program atau juga dapat
didefinisikan sebagai aktivitas pemrograman
dengan memerhatikan urutan perintah secara
sistematis, logis, serta tersusun berdasarkan
algoritma sederhana dan mudah dipahami.
Bahasa pemrograman yang mendukung pemrograman terstruktur :

BORLAND DELPHI DELPHI PASCAL C


Pemrograman Terstruktur

Beberapa sifat yang dimiliki


oleh pemrograman terstruktur
adalah sebagai berikut :

Memuat teknis pemecahan Mempunyai dokumentasi yang


Program disusun dengan logika Memuat algoritma yang efisien,
masalah yang logis dan baik. Penggunaan perintah
yang sederhana. efektif, dan sederhana.
sistematis. GOTO dikurangi atau dihapus.
Pemrograman
Berorientasi Objek
Pemrograman berorientasi objek (PBO) atau object oriented
programming (OOP) merupakan sebuah paradigma
pemrograman yang berorientasikan kepada objek.
Pengertian • Semua data dan fungsi di dalamnya dibungkus dalam suatu kelas-kelas
Pemrograman atau objek-objek.
• Setiap objek dapat menerima pesan, memproses data, dan mengirim
Berorientasi pesan ke objek lainnya.

Objek • Saat ini, metode pemrograman berorientasi objek banyak dipilih karena
metode lama banyak menimbulkan masalah seperti adanya kesulitan saat
mentransformasi hasil dari satu tahap pengembangan ke tahap
berikutnya.
Contoh pemrograman berorientasi objek

VISUAL FOXPRO JAVA C++ PASCAL (BAHASA VISUAL BASIC.NET SIMULA SMALLTALK RUBY
PEMROGRAMAN)

PYTHON PHP C# DELPHI EIFFEL PERL ADOBE FLASH AS 3.0


Abstraksi
Enkapsulasi
Data
Karakteristik
dasar pemrograman
berorientasi objek.
Polimorfisme Inheritance
ABSTRAKSI DATA???

Merupakan cara melihat objek


dalam bentuk sederhana
Encapsulation???
Enkapsulasi (encapsulation),
merupakan pembungkusan atribut data dan
layanan yang dipunyai objek untuk
menyembunyikan implementasi dan objek
sehingga objek lain tidak mengetahui cara
kerjanya
inheritance ???

Pewarisan (inheritance),
merupakan mekanisme yang memungkinkan satu
objek mewarisi sebagian atau seluruh definisi dan
objek lain sebagai bagian dan dirinya
polymorphism ???

Polimorfisme (polymorphism),
merupakan kemampuan suatu objek untuk
digunakan di banyak tujuan yang berbeda dengan
nama yang sama sehingga menghemat baris
program.
Pemrograman Berorientasi Objek
Beberapa fasilitas yang dimiliki oleh pemrograman berorientasi objek di antaranya :
• Penekanan lebih banyak diberikan kepada data daripada prosedur
• Masalah dibagi menjadi objek
• Struktur data dirancang sedemikian rupa sehingga dapat mengatur objek
• Memungkinkan terjadi penyembunyian data
• Data baru dan fungsi dapat dengan mudah dibuat
• Objek dapat berkomunikasi satu sama lain dengan menggunakan fungsi
• Pendekatan bottom-up yang digunakan untuk membuat program
• Komunikasi antarobjek menggunakan fungsi.
Pemrograman Berorientasi Objek

Beberapa keuntungan yang dimiliki oleh pemrograman berorientasi objek adalah sebagai berikut :
• Maintainability, yaitu program lebih mudah dibaca dan dipahami, serta pemrograman berorientasi objek mengontrol
kerumitan program hanya dengan mengizinkan rincian yang dibutuhkan programmer.
• Extensibility, yaitu kemampuan untuk dapat diperluas
• Reusability, yaitu kemampuan untuk digunakan kembali, misalnya penggunaan kembali objek-objek yang sudah dibuat
sesering mungkin. Kita dapat menyimpan objek-objek yang dirancang dengan baik ke dalam sebuah toolkit rutin yang
bermanfaat yang dapat, disisipkan ke dalam kode yang baru dengan sedikit perubahan atau tanpa pengubahan sama
sekali pada kode program tersebut
Pemrograman Berorientasi Objek

Beberapa keuntungan yang dimiliki oleh pemrograman berorientasi objek adalah sebagai berikut :
• Pengubahan program (berupa penambahan atau penghapusan fitur tertentu) lebih mudah, yaitu perubahan yang dilakukan menyangkut
penambahan dan penghapusan database program.
• Dapat menyimpan objek-objek yang dirancang dengan baik ke dalam sebuah toolkit yang dapat disisipkan dalam kode yang baru
dengan sedikit perubahan atau tanpa perubahan kode.
Pemrograman Berorientasi Objek

Kelemahan Pemrograman Berorientasi Objek

• Memiliki memori lebih besar dibandingkan dengan program terstruktur.


• Mudah mengembalikan kode jadi menjadi kode sumber sehingga algoritma yang digunakan pun sulit untuk
disembunyikan dan mudah dibajak.
Perbandingan
pemrograman
berorientasi objek dengan
pemrograman prosedural
Beberapa contoh jenis pemrograman dapat diklasifikasikan
sebagai berikut :
Perbandingan antara
pemrograman Pemrograman Tingkat Rendah
berorientasi objek
dengan Pemrograman Tingkat Menengah

pemrograman lainnya
Pemrograman Tingkat Tinggi
Perbandingan antara pemrograman berorientasi objek dengan
pemrograman lainnya

Pemrograman Tingkat Rendah

Beberapa contoh jenis pemrograman dapat


diklasifikasikan sebagai berikut : Pemrograman tingkat Pemrograman tingkat
mesin (machine level rakitan (assembly level
programming). programming).
Perbandingan antara pemrograman berorientasi objek dengan pemrograman lainnya

Pemrograman Tingkat Menengah


Pemrograman seperti C, Pascal, FORTRAN, COBOL, dan sebagainya.
prosedural/terstruktur,

Beberapa contoh jenis pemrograman dapat


diklasifikasikan sebagai berikut : Pemrograman Pemrograman seperti LISP
berorientasi objek, fungsional,

seperti Smali Talk, Cet, dan sebagainya

Pemrograman seperti Prolog


logika,
Perbandingan antara pemrograman berorientasi objek dengan
pemrograman lainnya

Pemrograman Tingkat Tinggi

Beberapa contoh jenis pemrograman dapat


diklasifikasikan sebagai berikut :
Bahasa perintah Bahasa guery
seperti DCL di VAX, seperti SQL di RDBMS
pemrograman shell di UNIX,
dan sebagainya.
Dalam kasus jenis pemrograman pertama (pemrograman tingkat rendah),
pengguna bertanggung jawab untuk menentukan rincian tentang 'bagaimana' memecahkan masalah, dan
dalam kasus pengguna jenis pemrograman ketiga hanya perlu menentukan “apa yang harus" diselesaikan.
Dari sudut pandang aplikasi,
dua metodologi pemrograman terakhir, yaitu pekerjaan membosankan yang tinggi. Meskipun ada berbagai
metodologi dalam jenis pemrograman tingkat tinggi, pemrograman fungsional dan pemrograman logika
bersifat aplikasi spesifik, seperti untuk memecahkan masalah Al (Artificial Intelligence), pemrosesan teks,
dan lain-lain.
Fungsi dan data menjadi satu kesatuan yang disebut
Perbandingan objek dan dalam pemrograman berorientasi objek
pemrograman berorientasi objek bersifat aktif.
Dengan
pemrograman prosedural Program bukan urut-urutan instruksi, tetapi diselesaikan
Secara umum adalah : oleh objek-objek yang bekerja sama untuk
menyelesaikan masalah, ibaratnya fokus pada masalah
yang ditangani dengan menggunakan komputer.
Perbandingan

pemrograman berorientasi
objek
dengan
pemrograman prosedural
refleksi
1. Jelaskan perbedaan pemrograman prosedural dan pemrograman berorientasi objek!
2. Jelaskan keuntungan pemrograman berorientasi objek!
3. Jelaskan secara singkat proses kompilasi dan menjalan pemrograman berorientasi
objek!
4. Jelaskan secara singkat class, object, dan method!
5. Ilustrasikan contoh dalam dunia nyata apa yang dimaksud dengan Objek, Atribut,
Class, Method!

Anda mungkin juga menyukai