Pertemuan 9a-apbo-obyek-dan-klass1

26
OBJECT & CLASS E. Haodudin Nurkifli Universitas Ahmad Dahlan Pertemuan :

Transcript of Pertemuan 9a-apbo-obyek-dan-klass1

Page 1: Pertemuan 9a-apbo-obyek-dan-klass1

OBJECT & CLASSE. Haodudin Nurkifli

Universitas Ahmad Dahlan

Pertemuan :

Page 2: Pertemuan 9a-apbo-obyek-dan-klass1

2

Review

Class - Name

attribute-name-1 : data-type-1 = default-value-1attribute-name-2 : data-type-2 = default-value-2

operation-name-1 ( argument-list-1) : result-type-1operation-name-2 ( argument-list-2) : result-type-2

responsibilities

Page 3: Pertemuan 9a-apbo-obyek-dan-klass1

PENAMAAN

Umumnya , nama kelas adalah kata atau frasa benda sederhana yang diambil dari vocabulary sistem yang dimodelkan

Umumnya nama kelas ditulis dengan huruf kapital di setiap huruf awal kataContoh: Customer TemperatureSensor.

3

Page 4: Pertemuan 9a-apbo-obyek-dan-klass1

ATRIBUT Attribute (atribut) menunjukkan beberapa

properti dari suatu hal yang dimodelkan untuk dibagi dengan semua objek pada kelas tersebut

Sebuah kelas dapat memiliki berapa pun jumlah atribut

Umumnya, nama atribut adalah kata atau frasa benda sederhana yang menunjukkan beberapa properti untuk menggambarkan kelas.

Umumnya nama kelas ditulis dengan huruf kapital di setiap huruf awal kata (kecuali kata pertama)Contoh: loadBearing. 4

Page 5: Pertemuan 9a-apbo-obyek-dan-klass1

PENENTUAN ATRIBUTAtribut ditentukan berdasarkan: Karakteristik alamiah yang dimiliki objek Pengetahuan yang harus diketahui hanya

oleh objek tersebutHarus hati-hati: Menentukan apakah atribut atau kelas Menentukan apakah atribut milik kelas atau

atribut asosiasi

5

Page 6: Pertemuan 9a-apbo-obyek-dan-klass1

MENENTUKAN ATRIBUT Deskripsi atribut:

Informasi yang dibutuhkan saat instansiasi Representasi dari state Informasi yang didapat dari asosiasi Informasi tambahan yang dibutuhkan saat

implementasi Semua informasi yang perlu dipelihara oleh objek

Property atribut: Changeable

bisa dimodifikasi dengan bebas AddOnly

untuk atribut dengan multiplicity >1, nilai bisa ditambahn, tetapi nilai yang ada tidak dapat diubah atau dihapus

Frozen nilai atribut tidak bisa diubah sejak objek diinisialisasi 6

Page 7: Pertemuan 9a-apbo-obyek-dan-klass1

CONTOH

7

Page 8: Pertemuan 9a-apbo-obyek-dan-klass1

METHOD

Menggambarkan implementasi operasi Tujuan

Mendefinisikan aspek spesial dari implementasi operasi

Yang harus diperhatikan:Algoritma khususObjek atau operasi lain yang digunakanBagaimana atribut dan parameter

diimplemntasikan dan digunakanBagaimana relasi diimplementasikan dan

digunakan 8

Page 9: Pertemuan 9a-apbo-obyek-dan-klass1

OPERASI Semua operasi dan atribut harus mendukung

minimal sebuah use case Membuat sebuah operasi untuk setiap

responsibility gunakan deskripsi responsibility sebagai deskripsi awal

Dari realisasi use case Kebutuhan khusus pada realisasi use case Lain-lain:

Inisialisasi objek Test apakah dua objek ekivalen atau tidak Membuat copy dari objek Dibutuhkan untuk sebuah mekanisme khusus

contoh: garbage collection

9

Page 10: Pertemuan 9a-apbo-obyek-dan-klass1

OPERASI operation (operasi)

merupakan implementasi dari layanan yang dapat diminta dari objek pada kelas tersebut

Dengan kata lain, operasi adalah abstrak dari sesuatu yang dapat kita lakukan terhadap objek dan dimiliki oleh semua objek kelas tersebut

10

Page 11: Pertemuan 9a-apbo-obyek-dan-klass1

CONTOH

11

Page 12: Pertemuan 9a-apbo-obyek-dan-klass1

VISIBILITY

DefinisiVisibility merupakan kemampuan suatu obyek untuk melihat atau berhubungan dengan obyek lain.

12

Page 13: Pertemuan 9a-apbo-obyek-dan-klass1

VISIBILITY BETWEEN OBJECTS

Untuk mengirim pesan dari satu obyek ke obyek lain, obyek penerima harus visible terhadap pengirim.

Jadi, pengirim harus memiliki pointer ke penerima.

Contoh:B visible terhadap A, berarti A dapat mengirim pesan pada B.

13

Page 14: Pertemuan 9a-apbo-obyek-dan-klass1

VISIBILITY BETWEEN OBJECTS

14

Page 15: Pertemuan 9a-apbo-obyek-dan-klass1

JENIS VISIBILITY

Bagaimana visibility dapat terbangun dari obyek A ke obyek B:

Attribute visibility - B merupakan atribut dari A Parameter visibility - B adalah parameter dari

method di A Local visibility - B adalah local object dari method

di A Global visibility - B visible secara global

15

Page 16: Pertemuan 9a-apbo-obyek-dan-klass1

ATTRIBUTE VISIBILITY

Attribute visibility dari A ke B terjadi jika B adalah atribut dari A Relatif permanen, karena visibility terjadi selama

obyek A dan B ada Contoh:

public class Register{…

private ProductCatalog Catalog;…

}

16

Page 17: Pertemuan 9a-apbo-obyek-dan-klass1

ATTRIBUTE VISIBILITY

17

Page 18: Pertemuan 9a-apbo-obyek-dan-klass1

LOCAL VISIBILITY

Local visibility dari A ke B terjadi jika B dideklarasikan sebagai local object dalam method di A.

Bersifat temporary karena hanya ada dalam lingkup method.

18

Page 19: Pertemuan 9a-apbo-obyek-dan-klass1

LOCAL VISIBILITY

Create local instance baru dan assign sebagai local variable.

Assign returning object dari suatu method menjadi local variable.

19

Page 20: Pertemuan 9a-apbo-obyek-dan-klass1

LOCAL VARIABLE VISIBILITY Apakah objek penerima adalah sebuah

temporary object yang dibuat pada operasi? Jika ya, definisikan dependensi antara objek

pengirim dan penerima Pada diagram kolaborasi, kualifikasikan sebagai local

20

Page 21: Pertemuan 9a-apbo-obyek-dan-klass1

PARAMETER VISIBILITY

Parameter visibility dari A ke B terjadi jika B merupakan parameter dari method di A. Bersifat temporary karena hanya ada dalam

lingkup method

21

Page 22: Pertemuan 9a-apbo-obyek-dan-klass1

PARAMETER VISIBILITY

22

Page 23: Pertemuan 9a-apbo-obyek-dan-klass1

PARAMETER TO ATTRIBUTE VISIBILITY Transformasi parameter visibility menjadi

attribute visibility.

23

Page 24: Pertemuan 9a-apbo-obyek-dan-klass1

PARAMETER VISIBILITY Apakah pengacuan terhadap objek penerima

diimplementasikan sebagai operasi? Jika ya, definisikan dependensi antara objek pengirim

dan penerima Jika memakai diagram kolaborasi, kualifikasikan sebagai

parameter

24

Page 25: Pertemuan 9a-apbo-obyek-dan-klass1

GLOBAL VISIBILITY Global visibility dari A ke B terjadi jika B global

terhadap A. Bersifat permanen karena visibility terjadi selama

obyek A dan B ada.

Cara global visibility: Assign suatu instance menjadi global variable. Menggunakan Singleton pattern

25

Page 26: Pertemuan 9a-apbo-obyek-dan-klass1

GLOBAL VISIBILITY Instans visible karena didefinisikan global

Jika ya, definisikan dependensi antara objek pengirim dan penerima

Jika memakai diagram kolaborasi, kualifikasikan sebagai global

26