O
B J ECTORIEN TED
O
B J ECTORIEN TED
P
ROGRAMMIN GD D a y 1 :
Ko n s e p P e m ro gra m a n B e ro rie n ta s i Ob je ct
T
UJ UANb k l b l k h
| Mem berikan latar belakan g serta pem aham an ten tan g kon sep pem rogram an berorien tasi obyek dan perban din gan n ya den gan pem rogram an
dan perban din gan n ya den gan pem rogram an prosedural.
T
OPIKd l
| Pem rogram an prosedural vs pem rogram an berorien tasi obyek
M i i j di 6l t
| Men gorganisasi program m en jadi e6lem en t yan g disebut sebagai class, dan bagaim an a class in i digun akan un tuk m em buat obyek
digun akan un tuk m em buat obyek.
| Struktur class: tin gkah laku (behavior) dan atribut (attributes).
(attributes).
| Kon sep OOP
| Pen gen alan J ava | Pen gen alan J ava
| Cara kom pile dan m en jalan kan aplikasi J ava
B
AH ASAP
ROSEDURALS k i t di l ik d l b t k | Seran gkaian tugas diselesaikan dalam ben tuk
fun gsi atau prosedur.
| Cara pan dan g Æ program adalah suatu urutan | Cara pan dan g Æ program adalah suatu urutan
in struksi.
| Program er harus m e-break down suatu problem g p m en jadi sub problem yan g lebih sim ple.
| Fun gsi dan prosedur m en jadi fokus utam a.
d d d k k
| Fun gsi dan prosedur digun akan un tuk m em an ipulasi data.
P
EMROGRAMAN
B
ERORIENTASI
O
BYEK
d d b k d d h l
| Fun gsi dan data bukan m en jadi dua hal yan g terpisah.
F i d d t j di t k t
| Fun gsi dan data m en jadi satu kesatuan yan g disebut sebagai obyek aktif.
| Cara pan dan g Æ program adalah seran gkaian | Cara pan dan g Æ program adalah seran gkaian obyek yan g bekerjasam a un tuk m en yelesaikan suatu problem .
suatu problem .
P
ROCEDURAL VSOOP
h h k
| Focusin g on the way a com puter han dles tasks
A
PAKAHO
BYEK?
b d d d d d
| Sem ua ben da yan g ada di dun ia n yata dapat dian ggap sebagai obyek.
C t h h bil d t l | Contoh : rum ah, m obil, sepeda m otor, gelas,
kom puter, m eja dll.
K
ARAKTERISTIKO
BYEKb k l k b b ( )
| Setiap obyek m em iliki atribut sebagai status (state).
| Setiap obyek m em iliki tin gkah laku (behavior)
| Con toh: obyek sepeda
y Mem iliki atribut (state) Æ: pedal, roda, jeruji, j l h d
warn a, jum lah roda.
y Mem iliki tin gkah laku (behavior) Æ :
K
ARAKTERISTIKO
BYEKb b b k
| Pen ggam baran pem rogram an berorien tasi obyek = pen ggam baran pada dun ia n yata.
P d b i t i b k
| Pada pem rogram an berorien tasi obyek:
y State disim pan pada Æ variabel
Ti k h l k di i d Æ h d
y Tin gkah laku disim pan pada Æ m ethod
A
PAKAHC
LASS?
D fi i i l k t l t t k b t | Definisi class: m erupakan tem plate un tuk m em buat
obyek.
| Defin isi class: m erupakan prototipe / blue prin ts | Defin isi class: m erupakan prototipe / blue prin ts
yan g m en defin isikan variabel – variabel dan m ethod – m ethod secara um um .
| Obyek m erupakan hasil in stan siasi dari suatu kelas.
| Proses pem ben tukan obyek dari suatu class disebut de ga i n s t a n t i a t i o n
dengan i n s t a n t i a t i o n.
A
TTRIBUTESf b d l h d b d k
| Defin isi atribut : adalah d a ta yan g m em bedakan an tara obyek satu den gan yan g lain .
C t h V l R b t Æ A l i l ti | Contoh: Volcan oRobot Æ A volcanic exploration
vehicle, m em pun yai atribut sebagai berikut:
y Status Æ explorin g m ovin g return in g hom e
y Status Æ explorin g, m ovin g, return in g hom e
y Speed Æ in m iles per hour
Tem perature in Fahren heit degrees
y Tem perature, in Fahren heit degrees
| Dalam class atribut disebut sebagai va ria b e l
A
TTRIBUTESI t i bl d l h t ib t t k ti b k | In stan ce variable: adalah atribut un tuk tiap obyek
dari class yan g sam a.
| Tiap obyek m em pun yai dan m en yim pan n ilai | Tiap obyek m em pun yai dan m en yim pan n ilai
atributn ya sen diri.
| J adi tiap obyek dari class yang sam a boleh p y y g m em pun yai n ilai yan g sam a atau beda.
l bl d l h b k b k
| Class variable: adalah atribut un tuk sem ua obyek yan g dibuat dari class yan g sam a.
| Sem ua obyek m em pun yai n ilai atribut yan g sam a | Sem ua obyek m em pun yai n ilai atribut yan g sam a.
B
EH AVIOR| B h i / ti k h l k d l h h l h l bi | Behavior / tin gkah laku adalah hal – hal yan g bisa
dilakukan oleh obyek dari suatu class.
| Behavior dapat digun akan un tuk m en gubah n ilai p g g atribut suatu obyek, m en erim a in form asi dari obyek lain , dan m en girim in form asi ke obyek lain un tuk m elakukan suatu task.
| Con toh: Volcan oRobot
y Check curren t tem perature i
y Begin a survey
y Report its curren t location
| Dalam class behavior disebut juga sebagai | Dalam class, behavior disebut juga sebagai
m e th o d s.
B
EH AVIORh d d l h k d l
| Methods: adalah seran gkaian statem en ts dalam suatu class yan g m en ghan dle suatu task terten tu. C b k b k ik i d b k l i
C
ONTOH:
CLASS,
,
OBJ ECT,
,
ATTRIBUTTES,
,
DAN BEH AVIORn a m a cla s s
in s ta n ce va ria b le
K
ONSEPD
ASAROOP
k l ( l )
| En kapsulasi (En capsulation )
| Abstraksi Data (Data Abstraction )
| Pen urun an (In heritan ce)
| Polim orfism e (Polym orphism )
E
NKAPSULASI(P
EMBUNGKUSAN)
b l d h d d b k
| Variabel dan m ethod yan g dipun yai suatu obyek, bisa diten tukan hak aksesn ya.
D fi i i k l i P b k i b l d | Definisi en kapsulasi: Pem bun gkusan variabel dan
m ethod dalam sebuah obyek yan g terlin dun gi.
| Defin isi en kapsulasi: m en yem bun yikan cara kerja | Defin isi en kapsulasi: m en yem bun yikan cara kerja
E
NKAPSULASIh
| Con toh: jam tan gan
y Pen tin g sekali un tuk m en getahui waktu.
y Cara jam m en catat waktu den gan baik an tara jam berten aga baterai atau berten aga gerak tidaklah pen tin g kita ketahui
tidaklah pen tin g kita ketahui.
| Dalam OOP, kon sep en kapsulasi seben arn ya
m erupakan perluasan dari struktur dalam bahasa m erupakan perluasan dari struktur dalam bahasa C.
A
BSTRAKSID
ATAb k d d l h b kk
| Abstraksi data adalah m en gabstrakkan atau m en yam arkan data-data yan g ada.
C t h j t
| Contoh : jam tan gan
y Oran g tidak perlu tahu bagaim an a cara jam m en gatur dan m erubah detik kem en it atau m en gatur dan m erubah detik kem en it, atau m en it ke jam .
y Oran g tidak perlu tahu siapa yan g bertan ggun g
P
EWARISAN(I
NH ERITANCE)
f ( l ) k b d
| Defin isi (class): m erupakan pewarisan atribut dan m ethod pada sebuah class.
D fi i i ( b k) k b k t k | Definisi (obyek): kem am puan obyek un tuk
m ewarisi ciri-ciri obyek lain n ya.
| Class yan g m ewarisi Æ superclass | Class yan g m ewarisi Æ superclass
| Class yan g diwarisi Æ subclass
| S b l bi b l k b i l b i l | Subclass bisa berlaku sebagai superclass bagi class
lain ya.
P
EWARISAN(I
NH ERITANCE)
C t h t d t l d d d
Contoh : terdapat class sepeda dan sepeda gun un g.
y Sepeda Æ superclass
Sepeda gun un g Æ subclass
y Sepeda gun un g Æ subclass
y Sepeda gun un g m em iliki variabel dan m ethod yan g dim iliki oleh sepeda.
yan g dim iliki oleh sepeda.
| Prin sip : Persam aan -persam aan yan g dim iliki oleh beberapa kelas dapat digabun gkan dalam sebuah
l i d k hi i k l
class induk sehin gga setiap kelas yan g
diturun kan n ya m em uat hal-hal yan g spesifik un tuk kelas yan g bersan gkutan .
P
EWARISAN(I
NH ERITANCE)
S e p e d a
S e p e d a S e p e d a S e p e d a S e p e d a
Gu n u n g
S e p e d a B a la p
S e p e d a Mo to r
P
EWARISAN(I
NH ERITANCE) - K
EUNTUNGANb l d k / b h
| Subclass m en yediakan state/ behaviour yan g spesifik yan g m em bedakan den gan superclass Æ m em un gkin kan program m er un tuk m en ggun akan m em un gkin kan program m er un tuk m en ggun akan ulan g source code dari superclass yan g telah ada.
| Program m er dapat m en defin isikan superclass | Program m er dapat m en defin isikan superclass
S
INGLE DAN MULTIPLE INH ERITANCEl l h
| C Æ m ultiple in heritan ce
| Suatu class diperbolehkan un tuk m em pun yai lebih d i t l
dari satu superclass.
| Variabel dan m ethod yan g diwariskan m erupakan kom bin asi dari superclass n ya
kom bin asi dari superclass-n ya.
J Æ i l i h it
| J ava Æ sin gle inheritan ce
| Suatu class han ya boleh m em pun yai satu superclass
superclass.
M
ULTILEVEL INH ERITANCEb l b d l b l
P
OLIMORFISMEf d d k k b k
| Defin isi: satu n am a dapat digun akan un tuk ban yak tujuan yan g berbeda n am un berhubun gan satu sam a lain
sam a lain .
| Tujuan : m em un gkin kan kita m em berikan n am a yan g sam a bagi segolon gan aksi atau tugas yan g yan g sam a bagi segolon gan aksi atau tugas yan g m irip.
| Con toh: luas bidan g | Con toh: luas bidan g
| Polim orfism e Æ m ethod overloadin g
T
EKNOLOGIJ
AVA2P
LATFORMd ( )
| En terprise Edition (J 2EE)
| Stan dard Edition (J 2SE)
P
ERBANDINGANJ
AVA DANB
AH ASAL
AINP
ERBANDINGANJ
AVA DANB
AH ASAL
AINW
H AT IS TH EJ
AVAT
ECH NOLOGY?
l
| A program m in g lan guage
| A developm en t en viron m en t
| An application en viron m en t
A
PROGRAMMING LANGUAGEk b h d
| Sin tak bahasa pem rogram an java m irip den gan bahasa C++
A
DEVELOPMENT ENVIRONMENTk l d k k l
A
N APPLICATION ENVIRONMENTk d l d k
| Merupakan stan dalon e program yan g tidak m em erlukan web browser un tuk m en geksekusi program (applet)
program (applet).
A
DEPLOYMENT ENVIRONMENTd d l
| Terdapat 2 deploym en t en viron m en t utam a:
y J RE (J ava Run tim e En viron m en t) yan g
di k l l t i d l
m en yediakan class-class yan g tersim pan dalam package-package, kom pon en GUI class, dan Collection API
Collection API.
y Web browser Æ ban yak web browser kom ersial yang m en yediakan lin gkungan J ava Techn ology
y g y g g J gy
T
UJ UAN UTAMAJ
AVAT
ECH NOLOGY(1)
| M di k b h d h di k | Men yediakan bahasa yan g m udah digun akan
- Men ghin dari pitfall yan g serin g terjadi di bahasa pem rogram an lain
p g
- Berorien tasi object
- Mem udahkan pen gkodean efisien dan jelas
M di k li k i k
| Men yediakan lin gkun gan in terpreter un tuk :
- Men in gkatkan kecepatan pen gem ban gan program - Protabilitas kode
- Protabilitas kode | Multithreadin g
T
UJ UAN UTAMAJ
AVAT
ECH NOLOGY(2)
l l d
| Pem an ggilan class secara din am is
| Men dukun g adan ya perubahan program secara di i l ti d l k k
din am is selam a runtim e den gan m elakukan
pem an ggilan class-class dari sum ber yan g berbeda.
F
ITURJ
AVAT
ECH NOLOGYl h ( )
| J ava Virtual Machin e (J VM)
| Garbage Collection
| Sekuritas kode
J
AVAV
IRTUALM
ACH INE(J VM)
d k f k h d l f
| Men yediakan spesifikasi hardware platform
| Mem baca byte code yan g sudah terkom pilasi yan g d k lti l tf
m en dukun g m ultiplatform
| Diim plem en tasikan sebagai software atau hardware
Dii l ik di J h l l
G
ARBAGEC
OLLECTIONk d b hk d k
| Men gecek dan m em bersihkan m em ory yan g tidak lagi terpakai
Dil k k t ti | Dilakukan otom atis
S
EKURITASK
ODES
EKURITASK
ODEJ
AVAR
UNTIMEE
NVIRONMENT| Men an gan i 3 tugas utam a, yaitu :
- Melakukan pem an ggilan kode - Mem verifikasi kode
O
PERASI DARIJ RE
C
ONTOHS
EDERH ANA:
C
ON OS
N:
Kelas TestGreetin g
C
ONTOHC
OMPILEE
RRORC
ONTOHR
UNTIMEE
RROR