Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
1
Konsep Pemrograman berorientasi Objek
Sistem Komputer IST AKPRIND Yogyakarta 2017/2018
2
PENDAHULUAN Konsep pemrograman telah berubah dari pendekatan pemrograman prosedural mengarah ke pendekatan pemrograman berorientasi obyek (Object Orientated Programming/OOP) Pemrograman prosedural permasalahan diselesaikan dg serangkaian langkah prosedural yg bisa berupa proses berurutan, perulangan, dan kondisi.
3
Gambar Pendekatan Pemrograman Prosedural
Gambar Pendekatan Pemrograman OOP PROGRAM APLIKASI Data global fungsi metoda data
4
Pendahuluan Berorientasi Objek berarti mengorganisasi perangkat lunak sebagai kumpulan objek tertentu yang memiliki struktur data dan perilakunya. Perbedaan dengan pemrograman konvesional adalah struktur data dan perilaku hanya berhubungan secara terpisah.
5
Cara menentukan karakteristik dalam pendekatan berorientasi objek secara umum
Identifikasi Klasifikasi Polymorphism (polimorfisme) Inherintance (pewarisan) Encapsulation (pengkapsulan) Information Hiding
6
Karakteristik dari Objek
Identitas berarti bahwa data diukur mempunyai nilai tertentu yang membedakan entitas dan disebut objek Contoh objek : -suatu paragraf dari dokumen -suatu windows dari workstation -raja putih dari buah catur
7
Lanjutan...... Objek dapat kongkrit, seperti arsip dalam sistem, atau konseptual seperti kebijakan penjadualan dalam multiprocessing pada sistem operasi. Setiap objek mempunyai sifat yang melekat pada identitasnya. Dua objek dapat berbeda walaupun bila semua nilai atributnya identik.
8
Lanjutan...... Dalam dunia nyata, suatu objek berada secara sederhana, tapi dalam pemrograman mempunyai penanganan dengan referensi yang unik Penanganan mungkin dinyatakan dengan berbagai cara, seperti alamat, indeks dari array atau nilai unik dari atribut Referensi objek seragam dan independen dari isi objek, memperbolehkan campuran kumpulan dari objek yang dibuat, seperti suatu file dalam direktori yang berisi file dan subdirektori
9
Lanjutan...... Klasifikasi berarti bahwa suatu kegiatan mengumpulkan data (atribut) dan perilaku (operasi) yang mempunyai struktur data sama ke dalam satu grup yang disebut kelas. Kelas merupakan abtraksi yang menjelaskan sifat penting pada suatu aplikasi dan mengabaikan yang lain. Setiap kelas menunjukkan suatu kumpulan infinite yang mungkin dari objek.
10
Suatu objek dapat dikatakan sebagai instans dari kelas.
Lanjutan...... Suatu objek dapat dikatakan sebagai instans dari kelas. Setiap instans dari kelas mempunyai nilai individu untuk setiap nama atribut dan operasi, tetapi memiliki bersama atribut dan operasi dengan instans lain dalam kelas.
11
Objek Poligon Kelas Poligon
Atribut titik sudut batas warna Operasi gambar hapus translasi Gambar di atas menunjukkan kelas dengan beberapa instans yang berhubungan dengannya
12
Pengembangan berorientasi objek merupakan cara berpikir baru tentang perangkat lunak berdasarkan abstraksi yang terdapat dalam dunia nyata. Dalam konteks pengembangan menunjuk pada bagian awal dari siklus hidup pengembangan sistem, yaitu : survei, analisis, desain, implementasi dan pemeliharaan sistem. Hal yang lebih penting dalam pengembangan berorientasi objek adalah konsep mengidentifikasi dan mengorganisasi domain aplikasi dibandingkan dengan fokus penggunaan bahasa pemrograman, berorientasi objek atau tidak.
13
Konsep Pemodelan Kebanyakan usaha akhir dalam lingkungan berorientasi objek dipusatkan pada bahasa pemrograman Pada saat ini banyak literatur yang mengutamakan implementasi dibandingkan dengan analisis dan desain. Pemrograman berorientasi objek sangat bermanfaat untuk menghilangkan keterbatasan, yang sebenarnya tidak fleksibel dalam bahasa pemrograman tradisional
14
Lanjutan Konsep Pemodelan
Pengembangan berorientasi objek dalam proses konseptual terpisah dengan bahasa pemrograman sampai tahap terakhir Pengembangan berorientasi objek secara mendasar merupakan cara berpikir baru dan bukan suatu teknik pemrograman Hal ini dapat berfungsi sebagai media spesifikasi, analisis, dokumentasi dan interface seperti halnya pemrograman
15
Metodologi Berorientasi Objek
Metodologi berorientasi objek dikenalkan pada tahun1980, menggunakan perangkat kerja dan teknik-teknik yang dibutuhkan dalam pengembangan sistem, yaitu : dynamic dan static object oriented model, state transition diagram dan case scenario Fokus utama metodologi ini pada objek, dengan melihat suatu sistem terdiri dari objek yang saling berhubungan Objek dapat digambarkan sebagai benda, orang, tempat dan sebagainya yang mempunyai atribut dan metode
16
Lanjutan Metodologi Berorientasi Objek
Metodologi terdiri dari pembuatan model dari domain aplikasi, kemudian menambahkan rincian implementasi pada saat pembuatan desain dari suatu sistem Tahap-tahap metodologi berdasarkan Sistem Development Life Cycle (SDLC) digunakan dengan memperhatikan karakteristik khusus berorientasi objek.
17
Lanjutan Metodologi Berorientasi Objek
a. Analisis Berorientasi Objek (Object-Oriented Analysis/OOA) Dimulai dengan menyatakan suatu masalah, analis membuat model situasi dari dunia nyata, menggambarkan sifat penting Dalam menganalisa suatu sistem, analis harus bekerja dengan pihak yang membutuhkan sistem untuk memahami masalah tersebut dengan jelas
18
Lanjutan Analisis Berorientasi Objek
Model analisis adalah abstraksi yang ringkas dan tepat dari apa yang harus dilakukan oleh sistem, dan bagaimana melakukannya Objek dalam model harus merupakan konsep domain dari aplikasi, dan bukan merupakan implementasi komputer seperti struktur data Model yang baik harus dipahani dan ditanggapi oleh ahli aplikasi Empat kesulitan yang merupakan gangguan utama dalam pengembangan sistem : memahami problem domain, komunikasi antara pihak yang berkaitan, perubahan kontinyu, dan reuse (penggunaan kembali)
19
Lanjutan Metodologi Berorientasi Objek
b. Desain berorientasi objek (Object-oriented design/OOD) Tahap lanjutan setelah analisis dengan tujuan sistem diorganisasi ke dalam sub-sistem berdasar struktur analisis dan arsitektur yang dibutuhkan Desainer sistem (System designer) menentukan karakteristik penampilan secara optimal, menentukan strategi memecahkan masalah, dan menentukan pilihan alokasi sumber daya.
20
Lanjutan Desain berorientasi objek
Contoh : desainer sistem mungkin menentukan perubahan pada screen untuk workstation yang memerlukan kecepatan serta resolusi lebih tinggi. Desain model yang digunakan berdasarkan model analisis dengan dilengkapi rincian untuk implementasi. Fokus dari desain objek (object design) adalah perencanaan struktur data dan algoritma yang diperlukan untuk implementasi setiap kelas. Objek domain aplikasi dan objek domain komputer dijelaskan dengan menggunakan konsep dan notasi berorientasi objek yang sama
21
Lanjutan Metodologi Berorientasi Objek
c. Implementasi Kelas, objek dan relasinya dikembangkan dalam tahap pembuatan desain objek yang pada akhirnya diterjemahkan ke dalam bahasa pemrograman, basis data, dan implementasi perangkat keras Hal yang penting dalam tahap implementasi adalah mengikuti penggunaan perangkat lunak yang baik
22
Lanjutan Implementasi
Konsep berorientasi objek dapat berlaku pada siklus kehidupan dari analisis sampai implementasi Kelas yang sama dipergunakan dari satu tahap ke tahap lain tanpa perubahan notasi, walaupun menambahkan rincian implementasi pada tahap akhir Beberapa kelas tidak merupakan bagian dari analisis, tetapi baru dikenali pada tahap desain atau implementasi. Contoh : struktur data seperti tree dan linked list jarang digambarkan dalam dunia nyata.
23
Karakteristik Metodologi Berorientasi Objek
Metodologi pengembangan sistem berorientasi objek mempunyai tiga karakteristik utama, yaitu : 1. Encapsulation (pengkapsulan) 2. Inheritance (pewarisan) 3. Polymorphism (polimorfisme)
24
1. Encapsulation (pengkapsulan)
Adalah proses pemaketan data bersama dengan fungsi Merupakan dasar untuk pembatasan ruang lingkup program terhadap data yang diproses Data dan prosedur atau fungsi dikemas bersama-sama dalam suatu objek, sehingga prosedur atau fungsi lain dari luar tidak dapat mengaksesnya Data terlindung dari prosedur atau objek lain kecuali prosedur yang berada dalam objek itu sendiri Pengkapsulan (juga information hiding) terdiri dari pemisahan
25
Lanjutan encapsulation
Pengkapsulan (juga information hiding) terdiri dari pemisahan aspek eksternal dari suatu objek, dimana dapat diakses oleh objek lain. Pengkapsulan melindungi program dari saling keterkaitan sehingga kesempatan kecil mempunyai akibat penyimpangan Pengkapsulan tidak unik terhadap bahasa berorientasi objek, tetapi kemampuan untuk mengkombinasikan struktur data dengan perilaku dalam satu entitas membuat pengkapsulan jelas dan mempunyai kekuatan lebih dari pada dalam bahasa konvensional yang memisahkan data dengan perilaku.
26
Lanjutan encapsulation
Contoh : mobil, sebagai pengendara mobil kita tidak perlu mengetahui secara rinci tentang mobil, misal berap katup yang ada di mesin, bagaimana proses pembakaran bahan bakar dan lain-lain yang mungkin kurang begitu relevan bagi kita sebagai pengguna. Hal yang penting bagi kita adalah bagaimana mengendarai mobil dengan benar. Istilah lain dari pengkapsulan atau enkapsulasi adalah penyembunyian informasi (information hiding )
27
Lanjutan encapsulation
Dalam pemrograman, enkapsulasi memberi dua keuntungan : 1. Penyembunyian implementasi (implementation hiding) menyatakan suatu proteksi terhadap implementasi internal suatu objek. Suatu objek tersusun atas antar muka public dan bagian yang private yang dapat berupa kombinasi antara data dan fungsi internal (adalah bagian objek yang tidak dapat diakses dari luar objek). Keuntungannya bahwa bagian ini dapat diubah-ubah tanpa memberi pengaruh pada program yang menggunakan objek ini.
28
Lanjutan encapsulation
2. Modularitas menyatakan suatu objek dapat dipelihara secara independent terhadap objek-objek yang lain. Karena kode program (source code) bagian internal dipelihara secara terpisah dari antar muka, kita secara bebas dapat melakukan perubahan dan perubahan itu tidak akan mengakibatkan terjadinya masalah (problem)
29
2. Inheritance (pewarisan)
Adalah teknik yang menyatakan bahwa anak dari objek akan mewarisi data/atribut dan metode dari induknya langsung. Objek baru turunan selalu mewarisi sifat-sifat moyangnya. Keuntungan dari sifat pewarisan ini adalah penggunaan bersama data dan kode-kode umum yang dimiliki objek (polimorfisme).
30
Lanjutan Inheritance Gambar berikut memperlihatkan contoh pewarisan objek buah. Dalam hal ini Buah adalah moyang semua buah, termasuk Apel dan Pisang. Tentunya Apel dan Pisang mewarisi sifat Buah. Demikian pula dengan Apel Merah dan Pisang Raja misalnya. Buah Apel Pisang Pisang Ambon Pisang Raja Apel Merah Apel Hijau
31
Ancestor, Descendant Ancestor moyang / asal dari suatu komponen. Descendant keturunan suatu komponen / komponen yang dibentuk/diturunkan dari komponen lain. Keduanya erat kaitannya dalam pembentukan komponen atau kelas baru. Semua kelas yang mewariskan sifat-sifatnya pada komponen disebut moyang. Kelas untuk menurunkan sebuah komponen disebut moyang langsung. Setiap komponen mewarisi sifat dari moyang langsungnya dan juga sifat dari moyang-moyang sebelumnya secara berurutan. Komponen adalah keturunan moyangnya.
32
3. Polymorphism (polimorfisme)
Yaitu konsep yang menyatakan bahwa sesuatu yang sama dapat mempunyai bentuk dan perilaku berbeda Mempunyai arti bahwa operasi yang sama mungkin mempunyai perbedaan dalam kelas yang berbeda Operasi move mungkin mempunyai perbedaan dalam kelas windows atau kendaraan bermotor Suatu implementasi yang spesifik dari suatu operasi dari kelas tertentu disebut metode. Karena operator berorientasi objek adalah bersifat polimorfisme, mungkin dapat mempunyai lebih dari satu metode
33
Perbedaan dengan metodologi Non Objek
Penggunaan alat, metodologi non objek menggunakan beberapa alat untuk menggambarkan model seperti data flow diagram, entity relationship diagram dan structure chart. Sedangkan metodologi berorientasi objek menggunakan satu jenis model dari tahap analisis sampai imlementasi, yaitu object diagram (diagram objek)
34
Perbedaan dengan metodologi Non Objek
Data dan proses, metodologi non objek, data dan proses dianggap sebagai dua komponen yang berlainan, sedangkan pada metodologi berorientasi objek, data dan proses merupakan satu kesatuan, yaitu bagian dari objek Bahasa pemrograman, metodologi non objek dipergunakan untuk melengkapi pemrograman terstruktur pada bahasa generasi ketiga, sedangkan metodologi berorientasi objek dipergunakan untuk pemrograman berorientasi objek dan bahasa generasi keempat –’—
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.