PreTest OO
ANALISA PERANCANGAN SISTEM BERORIENTASI OBYEK (OOAD)
-Berorientasi Objek (Object Oriented) merupakan paradigma baru dalam rekayasa perangkat lunak yang memandang sistem sebagai sekumpulan objek-objek yang saling berinteraksi.
-Metoda Berorientasi-Objek memberikan sekumpulan teknik untuk menganalisis, mendekomposisi dan memodularisasi arsitektur sistem perangkat lunak.
-Sistem Berorientasi Objek
-Sistem sendiri didefinisikan sebagai kumpulan dari beberapa elemen (modul) yang saling berhubungan (berinteraksi) untuk mencapai suatu tujuan/output (output disesuaikan dengan kebutuhan pengguna).
-Sedangkan sistem yang berorientasi objek diurai kedalam sejumlah/sekumpulan obyek(konsep, abstrak, benda) dalam dunia nyata yang saling berkomunikasi dan melaksanakan sejumlah pelayanan secara desentralisasi.
-Berorientasi Objek (Object Oriented) merupakan paradigma baru dalam rekayasa perangkat lunak yang memandang sistem sebagai sekumpulan objek-objek yang saling berinteraksi.
-Metoda Berorientasi-Objek memberikan sekumpulan teknik untuk menganalisis, mendekomposisi dan memodularisasi arsitektur sistem perangkat lunak.
-Sistem Berorientasi Objek
-Sistem sendiri didefinisikan sebagai kumpulan dari beberapa elemen (modul) yang saling berhubungan (berinteraksi) untuk mencapai suatu tujuan/output (output disesuaikan dengan kebutuhan pengguna).
-Sedangkan sistem yang berorientasi objek diurai kedalam sejumlah/sekumpulan obyek(konsep, abstrak, benda) dalam dunia nyata yang saling berkomunikasi dan melaksanakan sejumlah pelayanan secara desentralisasi.
Setiap obyek membungkus (encapsulate) sejumlah prosedur dan data yang
berinteraksi dengan obyek lainnya melalui suatu pesan (message).
KONSEP BERORIENTASI OBJEK
1.Objek
2.Kelas
3.Atribut
4.Metoda
5.Abstraksi
6.Enkapsulasi, Instance,
Inherintance, Polimorfisme
1.Objek
2.Kelas
3.Atribut
4.Metoda
5.Abstraksi
6.Enkapsulasi, Instance,
Inherintance, Polimorfisme
Biasanya berupa benda atau sesuatu kejadian
Benda konkrit : pesawat, lampu, buku, …
Konsepsi : terbang, terang, kuliah, …
Abstraksi : perusahaan, bisnis, sekolah, …
Benda konkrit : pesawat, lampu, buku, …
Konsepsi : terbang, terang, kuliah, …
Abstraksi : perusahaan, bisnis, sekolah, …
ATRIBUT:
Adalah nilai internal atau data terkait pada suatu objek yang menunjukan:
-Ciri-ciri atau sifat-sifat dari obyek
-Penggambaran keadaan (state) obyek
Nama objek: Mobil
Atribut
Merek : Toyota
Silinder : 2000 cc
Warna : Merah
Status : Baru/Jalan
Tahun : 2004
METHODS (OPERATIONS, BEHAVIOR)
-Behavior mendifinisikan bagaimana suatu objek bertindak dan bereaksi, dan berhubungan dengan fungsi diterapkan pada suatu atribut.
-Behavior objek disebut metoda atau operasi pelayanan (service).
Adalah nilai internal atau data terkait pada suatu objek yang menunjukan:
-Ciri-ciri atau sifat-sifat dari obyek
-Penggambaran keadaan (state) obyek
Nama objek: Mobil
Atribut
Merek : Toyota
Silinder : 2000 cc
Warna : Merah
Status : Baru/Jalan
Tahun : 2004
METHODS (OPERATIONS, BEHAVIOR)
-Behavior mendifinisikan bagaimana suatu objek bertindak dan bereaksi, dan berhubungan dengan fungsi diterapkan pada suatu atribut.
-Behavior objek disebut metoda atau operasi pelayanan (service).
PostTest OO
Object Oriented Programing atau yang biasa dikenal dengan
OOP adalah suatu pemrograman yang mengarah pada objek. Object oriented juga
disebut sebagai paradigma pemrograman.
Procedural Programming atau biasa disebut dengan pemrograman
terstruktur adalah pemrograman yang disusun berdasarkan urutan tertentu.
Perbedaan mendasar antara OOP dan pemrograman terstruktur
adalah:
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. Sedangkan untuk pemrograman terstruktur, menggunakan prosedur/tata cara yang teratur untuk
mengoperasikan data struktur
Untuk tata nama, keduanya pun memiliki tatanan yang sama
walaupun memiliki pengertian tersendiri:
object oriented menggunakan “method” sedangkan terstruktur
menggunakan “function”. Bila di OOP sering didengar mengenai “objects” maka di
terstruktur kita mengenalnya dengan ” modules”. Begitu pula halnya dengan “message” pada OO dan
“argument” pada terstruktur. “attribute” pada OO juga memiliki tatanan nama
yang sepadan dengan “variabel” pada pemrograman terstruktur.
Persamaan kedua pemrogaman
adalah keduanya termasuk ke dalam pemodelan pemrograman yang
digunakan dewasa ini.
Kapan sama2 baik
Pemrograman prosedural akan dikatakan lebih baik apabila dalam
segala situasi melibatkan kompleksitas moderat atau yang memerlukan signifikan
kemudahan maintainability. Manfaat yang dirasakan dalam penggunaan pemrograman
prosedural adalah kemampuan kembali menggunakan kode yang sama tanpa
menggunakan kode yang berbeda ataupun mengkopinya kembali. Dengan menggunakan
“goto”, memudahkan programmer melacak kumpulan data sehingga menghindarkan
pemrograman terstruktur menjadi seperti spagethii code.
Pemrograman berorientasikan objek dikatakan lebih baik
apabila Model data berorientasi objek dikatakan dapat memberi fleksibilitas
yang lebih, kemudahan mengubah program, dan digunakan luas dalam teknik piranti
lunak skala besar. Lebih jauh lagi, pendukung OOP mengklaim bahwa OOP lebih
mudah dipelajari bagi pemula dibanding dengan pendekatan sebelumnya, dan
pendekatan OOP lebih mudah dikembangkan dan dirawat.
Pemrograman berorientasi objek (Inggris: 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, Sedangkan untuk Structural Programming adalah kebalikan dari object
oriented programming yaitu sebuah cara pemrosesan data yang terstruktur dalam
analisa, cara dan penulisan pemrograman. Dikarenakan harus terstruktur sehingga
dalam pembuatannya antara satu line pemrograman dengan yang lainnya
berhubungan. Konsep utama dari Pemrograman Berbasis Objek terletak pada kondisi
kode/line pemrogramanannya dimana merupakan sebuah kesatuan modular.
Untuk program yang simpel/sederhana biasanya menggunakan
pemrograman terstruktur karena masih mudah dan tidak banyak dilakukan perubahan
yang berarti, sedangkan untuk line lebih dari 100 atau bisa dikatakan rumit,
maka digunakan pemrograman berorientasi objek.
Pemrograman Terstruktur terdiri dari pemecahan masalah yang
besar menjadi masalah yang lebih kecil dan seterusnya, sedangkan untuk
pemrograman berorientasi objek terdiri dari pengkelompokan kode dengan data
yang mana setiap objek berfungsi secara independen sehingga untuk setiap
perubahan kode tidak tergantung pada kode yang lainnya, atau lebih dikenal
dengan modular.
Untuk programming terstruktur bersifat task-centric dan
berorientasi objek bersifat data-centric. Terdapat juga perbedaan secara
spesifik antara objek oriented dengan non-oop, yaitu pada kelas dan objek. Pada
Pemrograman Terstruktur tidak terdapat
kelas dan objek.
Sifat-sifat dari pemrograman terstruktur dapat diuraikan
sebagai berikut :
a. Memuat teknik pemecahan masalah yang logis dan sistematis
b. Memuat algoritma yang efisien, efektif dan sederhana
c. Program disusun dengan logika yang mudah dipahami
d. Tidak menggunakan perintah GOTO
e. Biaya pengujian program relatif rendah
f. Memiliki dokumentasi yang baik
g. Biaya perawatan dan dokumentasi yang dbuthkan relatif rendah
a. Memuat teknik pemecahan masalah yang logis dan sistematis
b. Memuat algoritma yang efisien, efektif dan sederhana
c. Program disusun dengan logika yang mudah dipahami
d. Tidak menggunakan perintah GOTO
e. Biaya pengujian program relatif rendah
f. Memiliki dokumentasi yang baik
g. Biaya perawatan dan dokumentasi yang dbuthkan relatif rendah
Berbeda dengan OOP. Suatu program disebut dengan pemrograman
berbasis obyek (OOP) karena terdapat :
– Encapsulation (pembungkusan) Encapsulation adalah
mekanisme pemrograman yang membungkus kode dan data yang dimanipulasi dan
menjaganya supaya terhindar dari interferensi dan penggunaan yang tidak perlu.
Salah satu caranya dengan membentuk objek.
– Inheritance (pewarisan) Inheritance memungkinkan programer
meletakkan member yang sama dalam satu class dan class-class lain dapat
mewarisi member tersebut. Class yang mengandung member yang sama dari beberapa
class lain dinamakan superclass atau parent class. Class yang mewarisi
dinamakan subclass atau child class. Inheritance menghasilkan class hierarchy.
– Polymorphism (polimorfisme –perbedaan bentuk)
Polymorphisme artinya mempunyai banyak bentuk. Dua objek atau lebih dikatakan
sebagai polymorphic, bila objek-objek itu mempunyai antar muka yang identik
namun mempunyai perilaku-perilaku yang berbeda
Bisa dikatakan pada pemrograman berorientasi objek, dapat
dilakukan sebuah programming terhadap code yang lebih baik daripada pemrograman
terstruktur, itu juga untuk kaliber atau skala rumit atau besar, sedangkan
untuk coding yang skala kecil lebih mudah menggunakan pemrograman terstruktur
dikarenakan lebih singkat dan mudah tanpa banyak perubahan yang penting.
Perbedaan software OOP dangan software terstruktur
Perbedaan software OOP dangan software terstruktur adalah
Software yang dibuat secara OOP makan Software tersebut
besifat Reusable yaitu
• Prinsip pemrograman OO:
• Membuat kode yang ditulis sebisa mungkin dapat dipergunakan lagi (reusable)
• Supaya dapat dipakai dalam banyak aplikasi dan situasi –supaya tidak perlu lagi mengimplementasi ulang, walaupun hanya ada perbedaan sedikit saja dari yang sudah dikerjakan sebelumnya
• Membuat kode yang ditulis sebisa mungkin dapat dipergunakan lagi (reusable)
• Supaya dapat dipakai dalam banyak aplikasi dan situasi –supaya tidak perlu lagi mengimplementasi ulang, walaupun hanya ada perbedaan sedikit saja dari yang sudah dikerjakan sebelumnya
Reusability
• Kunci reusability adalah mendaftar (dalam library atau database) obyek di mana di antaranya mungkin ada yang sesuai dengan user requirements
• Proses pencarian semacam ini membutuhkan cara yang kuat dan efisien Sifat dari software OOP
• Kunci reusability adalah mendaftar (dalam library atau database) obyek di mana di antaranya mungkin ada yang sesuai dengan user requirements
• Proses pencarian semacam ini membutuhkan cara yang kuat dan efisien Sifat dari software OOP
Obyek
• Enkapsulasi: menyembunyikan implementasi dengan hanya menyediakan interface
• Enkapsulasi melindungi bagian implementasi dari tindakan yang tidak diinginkan dan akses yang tidak disengaja
• Dalam SI: atribut (data dan stru-dat) dan operasi dienkapsulasi dalam m’buat obyek dengan perilaku tertentu
• Enkapsulasi: menyembunyikan implementasi dengan hanya menyediakan interface
• Enkapsulasi melindungi bagian implementasi dari tindakan yang tidak diinginkan dan akses yang tidak disengaja
• Dalam SI: atribut (data dan stru-dat) dan operasi dienkapsulasi dalam m’buat obyek dengan perilaku tertentu
Sehingga membuatnya Aman dari Virus kerena terenkapsulasi
dari kelas-kelasnya. Sedangkan terstruktur tidak jika ingin ada perubahan maka
hal ini harus lah di ubah dari awal karena ada yang namanya variable global dan
variable local. Itu juga dapat menimbulkan kesulitan dalam mencari
eror(kesalahan).
Jadi kesimpulan nya adalah lebih unggul pemrograman
berorientasi objek menurut saya karena jika ada virus di saat pemrograman berorientasi
objek maka dapat aman karena terenkapsulasi dari kelas-kelasnya selain itu juga
pemrograman berorientasi objek dapat membuat suatu projek yang besar sehingga
dia menyediakan fitur-fitur lebih lengkap dan banyak.