1.
Pengertian Metode Berorientasi
Objek ...
Jawaban
: Pemrograman
berorientasi objek (object-oriented Programming disingkat OOP) merupakan paradigma pemrograman yang
berorientasikan kepada objek. Semua data dan fungsi di dalam paradigma ini
dibungkus dalam kelas-kelas atau objek-objek. Bandingkan dengan
logika pemrograman terstruktur. Setiap objek dapat menerima pesan, memproses data, dan mengirim pesan ke objek lainnya,
2.
Apa Itu Objek ?
Jawaban : pembungkus data
dan fungsi bersama menjadi suatu unit dalam sebuah program komputer; objek merupakan dasar
dari modularitas dan struktur dalam sebuah
program komputer berorientasi objek.
3. Apa Itu Kelas ?
Jawaban : kumpulan atas definisi data dan fungsi-fungsi dalam
suatu unit untuk suatu tujuan tertentu. Sebagai contoh 'class of dog' adalah
suatu unit yang terdiri atas definisi-definisi data dan fungsi-fungsi yang
menunjuk pada berbagai macam perilaku/turunan dari anjing. Sebuah class adalah
dasar dari modularitas dan struktur dalam pemrograman berorientasi object. Sebuah class secara tipikal sebaiknya
dapat dikenali oleh seorang non-programmer sekalipun terkait dengan domain
permasalahan yang ada, dan kode yang terdapat dalam sebuah class sebaiknya (relatif)
bersifat mandiri dan independen (sebagaimana kode tersebut digunakan jika tidak
menggunakan OOP). Dengan modularitas, struktur dari sebuah program akan terkait
dengan aspek-aspek dalam masalah yang akan diselesaikan melalui program
tersebut. Cara seperti ini akan menyederhanakan pemetaan dari masalah ke sebuah
program ataupun sebaliknya.
4.
Apa Itu Pembungkusan atau Encapsulation
?
Jawaban
: emastikan pengguna sebuah objek tidak
dapat mengganti keadaan dalam dari sebuah objek dengan cara yang tidak layak;
hanya metode dalam objek tersebut yang diberi izin untuk mengakses keadaannya.
Setiap objek mengakses interface yang menyebutkan bagaimana objek
lainnya dapat berinteraksi dengannya. Objek lainnya tidak akan mengetahui dan
tergantung kepada representasi dalam objek tersebut.
5.
Apa Itu Pewarisan atau Inheritance
?
Jawaban
: Inheritance adalah teknik yang
menyatakan bahwa anak dari objek akan mewarisi data/atribut dan metode dari
induknya langsung. Atribut dan metode dari objek dari objek induk diturunkan
kepada anak objek, demikian seterusnya. Inheritance mempunyai arti bahwa
atribut dan operasi yang dimiliki bersama di anatara kelas yang mempunyai
hubungan secara hirarki. Suatu kelas dapat ditentukan secara umum,
kemudian ditentukan spesifik menjadi subkelas. Setiap subkelas mempunyai
hubungan atau mewarisi semua sifat yang dimiliki oleh kelas induknya, dan
ditambah dengan sifat unik yang dimilikinya. Kelas Objek dapat didefinisikan
atribut dan service dari kelas Objek lainnya. Inheritance menggambarkan
generalisasi sebuah kelas.
6.
Apa Itu
Generalisasi/Spesialisasi ?
Jawaban : Generalisasi adalah pendefinisian subclass-subclass
yang disatukan menjadi entitas superclass tunggal
berdasarkan karakteristik umum. Disamping proses desain top-down (dari
inisial entitas ke level lebih rendah (subgrup)), desain juga dapat dilakukan
dengan proses bottom-up, yaitu banyak entitas disintesiskan menjadi
entity yang lebih tinggi berdasarkan kesamaan feature-nya.
Spesialisasi adalah proses yang memperhatikan perbedaan setiap anggota dari sebuah
entitas sehingga anggota dari sebuah entitas bisa dikelompokkan ke dalam
kelompok yang lebih kecil.
7.
Apa Ito Polimorfisme ?
Jawaban
: melalui pengiriman pesan. Tidak
bergantung kepada pemanggilan subrutin, bahasa orientasi objek dapat mengirim
pesan; metode tertentu yang berhubungan dengan sebuah pengiriman pesan
tergantung kepada objek tertentu di mana pesa tersebut dikirim. Contohnya, bila
sebuah burung menerima pesan "gerak cepat", dia akan menggerakan
sayapnya dan terbang. Bila seekor singa menerima pesan yang sama, dia akan
menggerakkan kakinya dan berlari. Keduanya menjawab sebuah pesan yang sama,
namun yang sesuai dengan kemampuan hewan tersebut. Ini disebut polimorfisme
karena sebuah variabel tungal dalam program dapat memegang berbagai jenis objek
yang berbeda selagi program berjalan, dan teks program yang sama dapat
memanggil beberapa metode yang berbeda di saat yang berbeda dalam pemanggilan
yang sama. Hal ini berlawanan dengan bahasa fungsional yang mencapai polimorfisme melalui
penggunaan fungsi kelas-pertama.
8.
Apa Itu UML ?
Jawaban
: merupakan standard modeling language yang terdiri dari kumpulan-kumpulan
diagram, dikembangkan untuk membantu para pengembang sistem dansoftware agar
bisa menyelesaikan tugas-tugas seperti :
§
Spesifikasi
§
Visualisasi
§
Desain arsitektur
§
Konstruksi
§
Simulasi dan testing
§
Dokumentasi
9.
Jelaskan Semua Diagram &
Notasi UML !
Jawaban :
Use Case Diagram
Use case diagram menggambarkan
fungsionalitas yang diharapkan dari sebuah sistem. Yang ditekankan adalah “apa”
yang diperbuat sistem, dan bukan “bagaimana”. Sebuah use case merepresentasikan
sebuah interaksi antara aktor dengan sistem. Use case merupakan
sebuah pekerjaan tertentu, misalnya login ke sistem, meng- create sebuah
daftar belanja, dan sebagainya. Seorang/sebuah aktor adalah sebuah entitas
manusia atau mesin yang berinteraksi dengan sistem untuk melakukan
pekerjaan-pekerjaan tertentu. Use case diagram dapat sangat
membantu bila kita sedang menyusun requirement sebuah sistem,
mengkomunikasikan rancangan dengan klien, dan merancangtest case untuk
semua feature yang ada pada sistem. Sebuah use casedapat
meng- include fungsionalitas use case lain
sebagai bagian dari proses dalam dirinya. Secara umum diasumsikan bahwa use
case yang di- include akan dipanggil setiap kali use
case yang meng- includedieksekusi secara normal. Sebuah use
case dapat di- include oleh lebih dari satu use
case lain, sehingga duplikasi fungsionalitas dapat dihindari dengan
cara menarik keluar fungsionalitas yang common . Sebuah use
case juga dapat meng- extend use case lain denganbehaviour -nya
sendiri. Sementara hubungan generalisasi antar use case menunjukkan
bahwa use case yang satu merupakan spesialisasi dari yang
lain.
Class Diagram
Class adalah
sebuah spesifikasi yang jika diinstansiasi akan menghasilkan sebuah objek dan
merupakan inti dari pengembangan dan desain berorientasi objek. Class menggambarkan
keadaan (atribut/properti) suatu sistem, sekaligus menawarkan layanan untuk
memanipulasi keadaan tersebut (metoda/fungsi). Class diagrammenggambarkan
struktur dan deskripsi class, package dan objek beserta
hubungan satu sama lain seperti containment , pewarisan,
asosiasi, dan lain-lain.
Class memiliki
tiga area pokok :
1. Nama (dan stereotype)
2. Atribut
3. Metoda
Atribut dan metoda dapat memiliki salah
satu sifat berikut :
·
Private ,
tidak dapat dipanggil dari luar class yang bersangkutan
·
Protected ,
hanya dapat dipanggil oleh class yang bersangkutan dan
anak-anak yang mewarisinya
·
Public ,
dapat dipanggil oleh siapa saja
Class dapat
merupakan implementasi dari sebuah interface , yaitu classabstrak
yang hanya memiliki metoda. Interface tidak dapat langsung
diinstansiasikan, tetapi harus diimplementasikan dahulu menjadi sebuah class. Dengan
demikian interface mendukung resolusi metoda pada saat run-time .
Statechart Diagram
Statechart diagram menggambarkan transisi
dan perubahan keadaan (dari satu state ke state lainnya) suatu objek pada
sistem sebagai akibat dari stimuli yang diterima. Pada umumnya statechart
diagrammenggambarkan class tertentu (satu class dapat memiliki lebih dari satu statechart
diagram ).
Dalam UML, state digambarkan berbentuk segiempat
dengan sudut membulat dan memiliki nama sesuai kondisinya saat itu. Transisi
antar state umumnya memiliki kondisiguard yang merupakan syarat
terjadinya transisi yang bersangkutan, dituliskan dalam kurung siku. Action yang dilakukan sebagai akibat
darievent tertentu dituliskan dengan
diawali garis miring. Titik awal dan akhir digambarkan berbentuk lingkaran
berwarna penuh dan berwarna setengah.
Activity Diagram
Activity diagrams menggambarkan berbagai
alir aktivitas dalam sistem yang sedang dirancang, bagaimana masing-masing alir
berawal,decision yang mungkin terjadi, dan
bagaimana mereka berakhir. Activity diagram juga dapat menggambarkan proses
paralel yang mungkin terjadi pada beberapa eksekusi. Activity
diagram merupakan state
diagram khusus,
di mana sebagian besar state adalah action dan sebagian besar transisi di- trigger oleh selesainya state sebelumnya (internal processing ). Oleh karena itu activity
diagram tidak
menggambarkan behaviour internal sebuah sistem (dan interaksi antar subsistem)
secara eksak, tetapi lebih menggambarkan proses-proses dan jalur-jalur
aktivitas dari level atas secara umum. Sebuah aktivitas dapat direalisasikan
oleh satu use case atau lebih. Aktivitas
menggambarkan proses yang berjalan, sementara use casemenggambarkan
bagaimana aktor menggunakan sistem untuk melakukan aktivitas. Sama seperti state , standar UML menggunakan
segiempat dengan sudut membulat untuk menggambarkan aktivitas.Decision digunakan untuk menggambarkan
behaviour pada kondisi tertentu. Untuk mengilustrasikan proses-proses paralel ( fork dan join ) digunakan titik sinkronisasi
yang dapat berupa titik, garis horizontal atau vertikal. Activity
diagram dapat
dibagi menjadi beberapa object swimlane untuk menggambarkan objek mana
yang bertanggung jawab untuk aktivitas tertentu.
Sequence Diagram
Sequence diagram mengga
mbarkan interaksi
antar objek di dalam dan di sekitar sistem (termasuk pengguna, display , dan sebagainya) berupa message yang digambarkan terhadap
waktu. Sequence diagramterdiri
atar dimensi vertikal (waktu) dan dimensi horizontal (objek-objek yang
terkait). Sequence diagram biasa digunakan untuk
menggambarkan skenario atau rangkaian langkah-langkah yang dilakukan sebagai
respons dari sebuah event untuk menghasilkanoutput tertentu. Diawali dari apa yang
men- trigger aktivitas tersebut, proses dan
perubahan apa saja yang terjadi secara internal danoutput apa yang dihasilkan.
Masing-masing objek, termasuk aktor, memiliki lifeline vertikal. Message digambarkan sebagai garis
berpanah dari satu objek ke objek lainnya. Pada fase desain berikutnya,message akan dipetakan menjadi operasi/metoda
dari class . Activation
bar menunjukkan
lamanya eksekusi sebuah proses, biasanya diawali dengan diterimanya sebuah
message.
Untuk objek-objek yang memiliki sifat khusus, standar UML
mendefinisikan icon khusus untuk objek boundary,
controller danpersistent entity .
Collaboration Diagram
Collaboration diagram juga menggambarkan
interaksi antar objek seperti sequence diagram , tetapi lebih menekankan pada
peran masing-masing objek dan bukan pada waktu penyampaian message . Setiap message memiliki sequence
number , di
mana message dari level tertinggi memiliki
nomor 1. Messages dari level yang sama memiliki prefiks yang sama.
Component Diagram
Component diagram menggambarkan struktur
dan hubungan antar komponen piranti lunak, termasuk ketergantungan ( dependency ) di antaranya. Komponen
piranti lunak adalah modul berisi code , baik berisi source
code maupun binary
code , baik library maupun executable , baik yang muncul pada compile
time, link time ,
maupun run time . Umumnya komponen terbentuk
dari beberapa class dan/atau package , tapi dapat juga dari
komponen-komponen yang lebih kecil. Komponen dapat juga berupa interface , yaitu kumpulan layanan yang
disediakan sebuah komponen untuk komponen lain.
Deployment Diagram
Deployment/physical diagram menggambarkan detail
bagaimana komponen di- deploy dalam infrastruktur sistem, di
mana komponen akan terletak (pada mesin, server atau piranti keras apa),
bagaimana kemampuan jaringan pada lokasi tersebut, spesifikasi server, dan
hal-hal lain yang bersifat fisikal Sebuah node adalah server, workstation , atau piranti keras lain yang
digunakan untuk men- deploy komponen dalam lingkungan
sebenarnya. Hubungan antar node (misalnya TCP/IP) dan requirement dapat juga didefinisikan dalam
diagram ini.
Kesimpulan
:
Dengan menggunakan OOP maka dalam
melakukan pemecahan suatu masalah kita tidak melihat bagaimana cara
menyelesaikan suatu masalah tersebut (terstruktur) tetapi objek-objek apa yang
dapat melakukan pemecahan masalah tersebut. Sebagai contoh anggap kita memiliki
sebuah departemen yang memiliki manager, sekretaris, petugas administrasi data
dan lainnya. Misal manager tersebut ingin memperoleh data dari bag administrasi
maka manager tersebut tidak harus mengambilnya langsung tetapi dapat menyuruh
petugas bag administrasi untuk mengambilnya. Pada kasus tersebut seorang
manager tidak harus mengetahui bagaimana cara mengambil data tersebut tetapi
manager bisa mendapatkan data tersebut melalui objek petugas adminiistrasi.
Jadi untuk menyelesaikan suatu masalah dengan kolaborasi antar objek-objek yang
ada karena setiap objek memiliki deskripsi tugasnya sendiri.
http://harmiprasetyo.wordpress.com/2006/09/26/pengantar-uniifiied-modelliing-language-uml/