Makalah Struktur Data
“Pesan”
Disusun Oleh:
Rhaiza Syarkawi ( 120471100001 / TMJ) Moh. Hidayatullah A.S ( 120471100010 / TMJ)
Teknik Multimedia Dan Jaringan
Fakultas Teknik
Universitas Trunojoyo Madura
2013
KATA PENGANTAR
Puji syukur kehadirat ALLAH SWT yang telah memberikan rahmat dan hidayah nya kepada kami. Dengan rahmat dan hidayat nya, Alhamdulillah Makalah Struktur Data yang berjudul “Pesan” ini dapat terselesaikan dengan baik tepat waktu. Makalah ini kami buat untuk memenuhi tugas final projek mata kuliah Struktur Data.
Terima kasih saya ucapkan kepada teman – teman yang telah membantu dalam bentuk materi dan saran, serta dibuat dengan segala masukan dan kekurangan yang telah diberikan pada kami sehingga makalah ini dapat terselesaikan.
Kami berharap kepada semua pihak dengan segala kritik dan saran yang bersifat membangun, sangat kami harapkan untuk bisa menyempurnakan makalah ini, sebab makalah ini masih banyak kekurangan.
Kamal, 16 Mei 2013
DAFTAR ISI
KATA PENGANTAR……….i DAFTAR ISI………...ii BAB I PENDAHULUAN………...1 1.1Latar Belakang………....1 1.2Rumusan Masalah………...1 1.3Tujuan………...1 BAB II PEMBAHASAN………2 2.1Operasi………....2 2.2Spesifikasi Operasi………..3 2.3Pengelompokan Operasi………..4 2.4Metode………5 2.5Contoh Program………..6BAB I
PENDAHULUAN
1.1 Latar Belakang
Objek yang bertindak sendiri jarang berguna, kebanyakan objek memerlukan objek – objek lain ubtuk melakukan banyak hal. Objek – objek itu saling berkolaborasi. Objek – objek memerl;ukan suatu tipe mekanisme komunikasi untuk berinteraksi. Objek – objek perangkat lunak saling berinteraksi dan berkomunikasi lewat pesan. Ketika berkomunikasi objek mengirim pesan untuk memberitahukan agar objek lain melakukan sesuatu yang diharapkannya. Sering pengiriman pesan disertai informasi untuk memperjelas apa yang dikehendaki. Informasi yang dilewatkan di pesan ini adalah parameter pesan. 1.2 Rumusan Masalah
Apa saja yang ada dalam pesan? 1.3 Tujuan
Dengan membaca makalah ini diharapkan dapat memahami isinya
Dengan membuat maklah ini kami menyumbangkan sedikit dari ilmu yang kami miliki.
BAB II
PEMBAHASAN
2.1 Operasi
Operasi adalah fungsi atau transformasi yang boleh diterapkan kea tau oleh objek – objek di satu kelas. Semua objek di satu kelas berbagai operasi – operasi yang sama. Tiap operasi mempunyai objek target sebagai argumen amplisit. Perilaku operasi bergantung kelas targetnya. Objek “mengetahui” kelasnya dan implementasi yang benar dari operasinya.
Operasi yang sama dapat diterapkan kebanyak kelas berbeda, disebut
polymorphic, yaitu operasi sama tapi mengambil cara berbeda pada kelas – kelas berbeda.
Pemilihan operasi didasarkan pada:
Reusalibility
Complexity
Applicability
Implementation knowledge 2.1.1 Pesan (Message)
Objek – objek hanya dapat diakses dapat diakses lewat antarmuka publiknya. Objek mengakses objek lain lewat pengiriman pesan. Pengiriman pesan seharusnya merupakan satu – satunya cara untuk mengakses objek lain.
2.1.2 Nama Pesan
Pesan berisi nama operasi dan argument – argument yang diperlukan operasi.
2.1.3 Metode
Ketika objek menerima pesan, objek melakukan operasi yang diminta dengan mengeksekusi metode. Metode merupakan algoritma yang dieksekusi sebagai tanggapan penerimaan pesan yang namanya cocok dengan nama metode.
2.1.4 Penanda (Signature)
Penanda (signature) merupakn salah satu konsep penting berkaitan dengan pengiriman pesan. Penanda adalah nama metode, tipe – tipe parameter – parameter, dan tipe objek yang dikirim metode. Penanda menspesifikasikan apa yang diperlukan untuk mengunakan metode.
Penanda merupakan hal penting dalam masalah overloading metode, yaitu beberapa nama operasi dapat mempunya argument – argumen yang berbeda sehingga membentuk penanda – penanda berbeda.
2.2 Spesifikasi Operasi
Operasi dapat dispesifikasikan dengan beragam cara, yaitu:
Prakondisi dan poskondisi
Fungsi – fungsi matematika seperti fungsi trigonometri, dan lain – lain.
Table nilai masukan dan keluaran untuk himpunan terbatas
Persamaan yang menspesifikasikan keluaran dalam argument masukan
Tabel – tabel keputusan
Pseudocode
Bahasa alami
Spesifikasi operasi terdiri dari:
• Penanda (signature)
Penanda mendefinisikan antarmuka operasi berupa nama, argumen yang diperlukan (jumlah, urutan, dan tipe) dan nilai yang dikirim
• Transformasi
Transformasi mendefinisikan efek – efek operasi: nilai – nilai keluaran adalah fungsi nilai – nilai masukan dan side – effects operasi pada objek – objek operan.
Tujuan spesifikasi operasi adalah mengindikasikan apa yang dilakukan operasi secara logic bukan bagaimana cara implementasi.
2.3 Pengelompokkan Operasi
Operasi menunjukkan layanan – layana yang diberikan satu kelas ke client – clientnya. Terdapat beragam pengelompokan operasi, misalnya
2.3.1 Pengelompokan Cara Pertama Ragam macam operasi antara lain: 1. Operasi pengaksesan
2. Query 3. Aksi 4. Aktivitas
Operasi Pengaksesan
Operasi pengaksesan merupakan operasi trival (sepele). Operasi membaca atau menulis atribut atau link objek. Selama perancangan, kita mungkin perlu mencatat operasi pengaksesan public dan private.
Operasi noninterval dapat dibagi menjadi tiga katagori yaitu:
Query
Aksi
Aktivitasi
Operasi Query
Operasi query adalah operasi tanpa dampak (side - effects) pada state objek. Operasi ini murni fungsi.selama pemodelan, kita membedakan operasi – operasi yang mempunyai side – effects dari operasi yang menghitung nilai fungsi tanpa memodifikasi objek.
Operasi Aksi
Secara logik aksi adalah operasi yang dilakukan secara instan. Karena state
objek didefinisikan atribut – atribut dan link – link, maka semua aksi dapat didefinisikan dalam bentuk pembaruan – pembaruan atribut – atribut dasar dan
Aksi – aksi ini dapat dideskripsikan dengan beragam cara, diantaranya:
Persamaan matematika
Pohon keputusan
Table keputusan
Enumerasi semua masukan yang mungkin
Kalkulus predikat
Bahasa alami
Spesifikasi harus jelas dan tidak ambigu, tidak harus formal.
Operasi Aktivitas
Aktivitas secara inheren mempunyai side – effects karena eksistensinya di dalam waktu. Aktivitas – aktivitas hanya berlaku untuk actor, objek yang membangkitkan operasi – operasi padanya karena objek pasif adalah penyimpanan data.
Rincian – rincian aktivitas dispesifikasikan model dinamis dan tidak dapat hanya dipertimbangkan sebagai transformasi.
2.3.2 Pengelompokan Kedua
Jenis operasi yang lain yang biasa terdapat:
Modifier
Operasi yang mendefinisikan state objek.
Selector
Operasi yang mengakses status objek, tapi tidak mencampuri state – nya.
Lterator
Operasi yang mengizinkan semua bagian objek diakses dengan suatu urutan yang terdefinisikan baik.
Constructor
Operasi yang menciptakan objek dan / atau menginisialisasi statusnya.
Operasi yang membebaskan state objek dan / atau menghancurkan objek itu sendiri.
2.3.3 Pengelompokan Ketiga
Bertrand Meyer [MEY97] mengelompokkan ragam operasi menjadi didua, yaitu:
+ Query, operasi tidak mengubah apa pun di kelas
+ Command, operasi melakukan perintah dan memodifikasi state. 2.3.4 Penyederhanaan Operasi – Operasi
Kita dapat menggunakan pewarisan agar dimungkinkan mereduksi jumlah operasi. Kita dapat memperkenalkan superkelas – superkelas baru bila diperlukan untuk menyederhanakan operasi – operasi yang disediakan superkelas – superkelas yang tidak alami (tidak berkorespondensi dengan kelas objek eksternal).
2.4 Metode
Metode adalah implementasi operasi di satu kelas. Semua metode secara logis melakukan tugas yang sama tetapi masing – masing metode diimplementasikan dengan potongan kode berbeda.
Terdapat dua katagori metode, yaitu:
1. Instance method
Metode ini adalah fungsi yang beroprasi di suatu objek dengan suatu cara. Metode ini dapat memanipulasi state objek atau hanya sekadar query. Pada bahasa C++ dan JAVA, instance method dapat ditulis sebagai fungsi anggota non statis (nonstatic member function)
2. Class / Static method
Metode ini adalah fungsi yang beroprasi di kelas, relevan terhadap kelas, tidak beroprasi pada suatu objek tertentu dari kelas. Contoh metode ini adalah untuk penciptaan instan yang baru, atau menyediakan fungsi utilitas untuk instan.
BAB III
PENUTUP
3.1 Kesimpulan
Pesan digunakan oleh objek untuk berkomunikasi dan memberitahukan agar objek yang lain melakukan sesuatu yang diharapkannya.