konsep pemrograman berorientasi obyek€¦ · konsep pemrograman berorientasi obyek. 2 tujuan...
Post on 16-Nov-2020
25 Views
Preview:
TRANSCRIPT
1
Konsep PemrogramanBerorientasi Obyek
2
Tujuan
Memberikan latar belakang sertapemahaman tentang konseppemrograman berorientasi obyek danperbandingannya dengan pemrogramanprosedural.
3
Topik
Pemrograman prosedural vs pemrogramanberorientasi obyek
Mengorganisasi program menjadi elementyang disebut sebagai class, dan bagaimanaclass ini digunakan untuk membuat obyek.
Struktur class: tingkah laku (behavior) danatribut (attributes).
Konsep OOP Cara kompile dan menjalankan aplikasi Java
4
Bahasa Prosedural Serangkaian tugas diselesaikan dalam bentuk
fungsi atau prosedur. Cara pandang program adalah suatu
urutan instruksi. Programer harus me-break down suatu
problem menjadi sub problem yang lebihsimple.
Fungsi dan prosedur menjadi fokus utama. Fungsi dan prosedur digunakan untuk
memanipulasi data. Data bersifat pasif.
5
Pemrograman Berorientasi Obyek
Fungsi dan data bukan menjadi dua halyang terpisah.
Fungsi dan data menjadi satu kesatuanyang disebut sebagai obyek aktif.
Cara pandang program adalahserangkaian obyek yang bekerjasamauntuk menyelesaikan suatu problem.
6
Procedural vs OOP
Focusing on the waya computer handlestasks
Focusing on the taskyou are using thecomputer for
7
Apakah Obyek?
Semua benda yang ada di dunia nyatadapat dianggap sebagai obyek.
Contoh : rumah, mobil, sepeda motor,gelas, komputer, meja dll.
8
Karakteristik Obyek
Setiap obyek memiliki atribut sebagai status(state).
Setiap obyek memiliki tingkah laku (behavior) Contoh: obyek sepeda
Memiliki atribut (state) : pedal, roda, jeruji,warna, jumlah roda.
Memiliki tingkah laku (behavior) : kecepatanyamenaik, kecepatannya menurun, perpindahan gigisepeda.
9
Karakteristik Obyek
Penggambaran pemrogramanberorientasi obyek = penggambaranpada dunia nyata.
Pada pemrograman berorientasi obyek: State disimpan pada variabel Tingkah laku disimpan pada method
10
Apakah Class? Definisi class: merupakan template untuk
membuat obyek. Definisi class: merupakan prototipe / blue
prints yang mendefinisikan variabel – variabeldan method – method secara umum.
Obyek merupakan hasil instansiasi dari suatukelas.
Proses pembentukan obyek dari suatu classdisebut dengan instantiation.
Obyek disebut juga instances.
11
Attributes
Definisi atribut : adalah data yangmembedakan antara obyek satu dengan yanglain.
Contoh: VolcanoRobot A volcanicexploration vehicle, mempunyai atributsebagai berikut: Status exploring, moving, returning home Speed in miles per hour Temperature, in Fahrenheit degrees
Dalam class atribut disebut sebagai variabel.
12
Attributes Instance variable: adalah atribut untuk tiap obyek
dari class yang sama. Tiap obyek mempunyai dan menyimpan nilai
atributnya sendiri. Jadi tiap obyek dari class yang sama boleh
mempunyai nilai yang sama atau beda.
Class variable: adalah atribut untuk semua obyekyang dibuat dari class yang sama.
Semua obyek mempunyai nilai atribut yang sama. Jadi semua obyek dari class yang sama mempunyai
hanya satu nilai yang value nya sama.
13
Behavior Behavior / tingkah laku adalah hal – hal yang
bisa dilakukan oleh obyek dari suatu class. Behavior dapat digunakan untuk mengubah
nilai atribut suatu obyek, menerima informasidari obyek lain, dan mengirim informasi keobyek lain untuk melakukan suatu task.
Contoh: VolcanoRobot Check current temperature Begin a survey Report its current location
Dalam class, behavior disebut juga sebagaimethods.
14
Behavior
Methods: adalah serangkaianstatements dalam suatu class yangmenghandle suatu task tertentu.
Cara obyek berkomunikasi denganobyek lain adalah denganmenggunakan method.
15
Contoh: class, object, attributtes,dan behavior(methods)
nama class
instance variable
methods
16
Contoh: lanjutan
17
Konsep Dasar OOP
Enkapsulasi (Encapsulation) Penurunan (Inheritance) Polimorfisme (Polymorphism)
18
Enkapsulasi
Definisi enkapsulasi: Pembungkusanvariabel dan method dalam sebuahobyek yang terlindungi sertamenyediakan interface untukmengakses variabel tersebut.
Variabel dan method yang dipunyaisuatu obyek, bisa ditentukan hakaksesnya.
19
Enkapsulasi
Contoh: jam tangan Penting sekali untuk mengetahui waktu. Cara jam mencatat waktu dengan baik
antara jam bertenaga baterai ataubertenaga gerak tidaklah penting kitaketahui.
Dalam OOP, konsep enkapsulasisebenarnya merupakan perluasan daristruktur dalam bahasa C.
20
Pewarisan
Definisi : merupakan pewarisan atributdan method dari sebuah class ke classlainnya.
Class yang mewarisi superclass Class yang diwarisi subclass Subclass bisa berlaku sebagai
superclass bagi class lainya multilevel inheritance.
21
PewarisanContoh : terdapat class sepeda dan sepeda
gunung. Sepeda superclass Sepeda gunung subclass Sepeda gunung memiliki variabel dan method
yang dimiliki oleh sepeda. Prinsip : Persamaan-persamaan yang dimiliki
oleh beberapa kelas dapat digabungkandalam sebuah class induk sehingga setiapkelas yang diturunkannya memuat hal-halyang spesifik untuk kelas yang bersangkutan.
22
PewarisanSepeda
SepedaGunung
SepedaBalap
SepedaMotor
23
Keuntungan pewarisan
Subclass menyediakan state/behaviour yangspesifik yang membedakan dengansuperclass memungkinkan programmeruntuk menggunakan ulang source code darisuperclass yang telah ada.
Programmer dapat mendefinisikan superclasskhusus yang bersifat generik, yang disebutabstract class, untuk mendefinisikan classdengan tingkah laku dan state secara umum.
24
Single dan multiple inheritance
C multiple inheritance Suatu class diperbolehkan untuk mempunyai
lebih dari satu superclass. Variabel dan method yang diwariskan
merupakan kombinasi dari superclass-nya.
Java single inheritance Suatu class hanya boleh mempunyai satu
superclass.
25
Multilevel inheritance
Suatu subclass bisa menjadi superclassbagi class yang lain.
26
Polimorfisme
Definisi: Kemampuan suatu obyekuntuk mempunyai lebih dari satubentuk .
27
Teknologi Java2Platform
Enterprise Edition(J2EE) Standard Edition (J2SE) Micro Edition (J2ME)
28
What is the Java Technology?
A programming language A development environment An application environment A deployment environment
29
A programming language
Sintak bahasa pemrograman java miripdengan bahasa C++
30
A development environment
Teknologi java menyediakan: kompiler,interpreter, documentation generator,class file packaging.
31
An application environment
Merupakan standalone program yangtidak memerlukan web browser untukmengeksekusi program (applet).
32
A deployment environment
Terdapat 2 deployment environmentutama: JRE (Java Runtime Environment) yang
menyediakan class-class yang tersimpandalam package-package, komponen GUIclass, dan Collection API.
Web browser banyak web browserkomersial yang menyediakan lingkunganJava Technology interpreter dan runtime.
33
TUGAS
Cari artikel tentang program prosedural(terstruktur) dan program OOP, disertaicontoh programnya (bebas). Buatanalisa perbedaan antara keduanya!(dikumpulkan sebelum UAS)
top related