Breaking

Object-Oriented Programming(OOP)


Bab I Pendahuluan
1. Pengertian

Banyak orang pertama kali belajar program menggunakan bahasa yang tidak berorientasi objek. Program non-OOP mungkin salah satu daftar panjang dari perintah. Lebih program yang kompleks akan kelompok daftar perintah ke dalam fungsi atau subrutin masing-masing yang mungkin melakukan tugas tertentu. Dengan desain semacam ini, biasanya untuk data program untuk dapat diakses dari setiap bagian dari program tersebut. Sebagai program tumbuh dalam ukuran, memungkinkan fungsi apapun untuk memodifikasi setiap bagian dari data berarti bahwa bug dapat memiliki dampak yang luas jangkauannya.

Sebaliknya, pendekatan berorientasi objek mendorong para programmer untuk tempat data di mana tidak langsung dapat diakses oleh seluruh program. Sebaliknya data diakses dengan memanggil tertulis fungsi khusus, yang biasa disebut metode, baik yang dibundel dengan data atau warisan dari ”objek kelas” dan bertindak sebagai perantara untuk mengambil atau memodifikasi data tersebut. Pemrograman yang membangun yang menggabungkan data dengan satu set metode untuk mengakses dan mengelola data tersebut disebut objek.

Sebuah program berorientasi objek biasanya akan mengandung berbagai jenis objek, masing-masing jenis yang sesuai untuk jenis tertentu dari data yang kompleks untuk dikelola atau mungkin ke objek dunia nyata atau konsep seperti rekening bank, pemain hoki, atau buldoser. Sebuah program mungkin berisi beberapa salinan dari setiap jenis objek, satu untuk setiap objek dunia nyata program ini berurusan dengan OOP. Sebagai contoh, ada bisa menjadi salah satu rekening bank untuk setiap account objek dunia nyata di sebuah bank tertentu. Setiap salinan dari objek rekening bank akan sama dalam metode ini menawarkan untuk memanipulasi atau membaca data, tetapi data dalam setiap objek akan berbeda mencerminkan sejarah yang berbeda dari setiap account.

Objek dapat dianggap sebagai pembungkus data mereka dalam satu set fungsi yang dirancang untuk memastikan bahwa data yang digunakan tepat, dan untuk membantu dalam menggunakan. Metode ini objek biasanya akan mencakup pemeriksaan dan perlindungan yang khusus untuk jenis data objek berisi. Sebuah objek juga dapat menawarkan sederhana digunakan, metode standar untuk melakukan operasi tertentu pada data, sementara menyembunyikan secara spesifik tentang bagaimana tugas-tugas yang dicapai. Dengan cara ini perubahan dapat dibuat dengan struktur internal atau metode obyek tanpa memerlukan bahwa sisa program dimodifikasi. Pendekatan ini juga dapat digunakan untuk menawarkan metode standar di berbagai jenis objek. Sebagai contoh, beberapa jenis benda mungkin menawarkan metode cetak. Setiap jenis objek yang mungkin menerapkan metode cetak dalam cara yang berbeda, yang mencerminkan jenis data yang berbeda masing-masing berisi, tetapi semua metode cetak yang berbeda mungkin disebut dengan cara standar yang sama dari tempat lain di program ini. Fitur-fitur ini menjadi berguna terutama ketika lebih dari satu programmer berkontribusi kode untuk proyek atau ketika tujuannya adalah untuk menggunakan kembali kode di antara proyek.

Pemrograman berorientasi obyek memiliki akar yang dapat ditelusuri ke tahun 1960-an. Sebagai perangkat keras dan software menjadi semakin kompleks, pengelolaan sering menjadi perhatian. Para peneliti mempelajari cara untuk menjaga kualitas software dan pemrograman berorientasi objek yang dikembangkan sebagian untuk mengatasi masalah-masalah umum dengan sangat menekankan diskrit, unit dapat digunakan kembali logika. Teknologi ini berfokus pada data daripada proses, dengan program yang terdiri dari modul mandiri (kelas), setiap contoh (objek) yang berisi semua informasi yang dibutuhkan untuk memanipulasi data struktur sendiri (anggota). Hal ini berbeda dengan yang ada pemrograman modular yang telah dominan selama bertahun-tahun yang difokuskan pada fungsi dari sebuah modul, bukan data spesifik, tetapi juga disediakan untuk penggunaan kembali kode, dan cukup dapat digunakan kembali unit-diri dari logika pemrograman, memungkinkan kolaborasi melalui penggunaan modul terkait (subrutin). Pendekatan yang lebih konvensional, yang masih tetap, cenderung untuk mempertimbangkan data dan perilaku secara terpisah.

Program berorientasi objek dengan demikian dapat dilihat sebagai kumpulan objek berinteraksi, yang bertentangan dengan model konvensional, di mana program dipandang sebagai daftar tugas (subrutin) untuk melakukan. Dalam OOP, setiap objek dapat menerima pesan, pengolahan data, dan mengirim pesan ke objek lainnya. Setiap objek dapat dilihat sebagai ”mesin” independen dengan peran yang berbeda atau tanggung jawab. Tindakan (metode) pada obyek-obyek yang terkait erat dengan objek. Sebagai contoh, OOP struktur data cenderung ”membawa operator sendiri main dengan mereka” (atau setidaknya ”mewarisi” mereka dari obyek yang sama atau kelas).

2. Latar Belakang

Pemrograman Berorientasi Objek (Object Oriented Programming atau OOP) merupakan paradigma pemrograman yang berorientasikan kepada objek. Objek adalah struktur data yang terdiri dari bidang data dan metode bersama dengan interaksi mereka untuk merancang aplikasi dan program komputer. 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. Pada jaman sekarang, banyak bahasa pemrograman yang mendukung OOP.

OOP adalah paradigma pemrograman yang cukup dominan saat ini, karena mampu memberikan solusi kaidah pemrograman modern. Meskipun demikian, bukan berarti bahwa pemrograman prosedural sudah tidak layak lagi. OOP diciptakan karena dirasakan masih adanya keterbatasan pada bahasa pemrograman tradisional. Konsep dari OOP sendiri adalah semua pemecahan masalah dibagi ke dalam objek. Dalam OOP data dan fungsi-fungsi yang akan mengoperasikannya digabungkan menjadi satu kesatuan yang dapat disebut sebagai objek. Proses perancangan atau desain dalam suatu pemrograman merupakan proses yang tidak terpisah dari proses yang mendahului, yaitu analisis dan proses yang mengikutinya. Pembahasan mengenai orientasi objek tidak akan terlepas dari konsep objek seperti inheritance atau penurunan, encapsulation atau pembungkusan, dan polymorphism atau kebanyakrupaan. Konsep-konsep ini merupakan fundamental dalam orientasi objek yang perlu sekali dipahami serta digunakan dengan baik, dan menghindari penggunaannya yang tidak tepat.

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.

3. Maksud dan Tujuan

1. Dapat mengetahui pengertian OOP (Object Oriented Programming) secara umum.
2. Dapat mengetahui konsep dasar dari pemrograman berorientasi objek (OOP).
3. Dapat mengetahui bahasa yang mendukung OOP.
4. Dapat mengetahui desain pola apa saja dalam OOP.
5. Dapat mengetahui beberapa kritik para ahli mengenai OOP

4. Hasil yang Diharapkan

Dapat dengan mudah di-maintain jika ada perubahan meskipun dalam skala yang besar.

Bab II Alat dan Bahan

Kelas, Objek, Abstraksi, Enkapsulasi, Polimorfisme, Inheritas.

Bab III Jangka Waktu Pelaksanaan

Untuk mempelajari OOP di butuhkan waktu yang lama, Kurang lebih 1 bulan untuk menguasai OOP

Bab IV Kesimpulan

Pemrograman Berorientasi Objek (Object Oriented Programming atau OOP) merupakan paradigma pemrograman yang berorientasikan kepada objek. OOP adalah paradigma pemrograman yang cukup dominan saat ini, karena mampu memberikan solusi kaidah pemrograman modern. Pemrograman Orientasi Objek (Object Oriented Programming) menekankan beberapa konsep, yaitu kelas, objek, abstraksi, enkapsulasi, polimorfisme, dan inheritas. Python, Ruby dan Groovy adalah bahasa dinamis dibangun di atas prinsip-prinsip OOP, sedangkan Perl dan PHP telah menambahkan fitur berorientasi objek sejak Perl 5 dan PHP 4, dan ColdFusion sejak versi 6. Desain pola OOP antara lain : 1) Warisan dan Perilaku Subtyping, 2) Pola Desain Gang Empat, 3)  Obyek Orientasi dan Database, 4) Pemodelan Dunia Nyata dan Hubungan, 5) Desain OOP dan Flow Control, 6) Desain Tanggung Jawab dan Driven Desain Data. Beberapa ahli juga mengkritik OOP, antara lain : Richard Stallman, Potok et al., Christopher J. Tanggal, Alexander Stepanov, Paul Graham, Joe Armstrong, Richard Mansfield, Rich Hickey, dan Carnegie-Mellon University Profesor Robert Harper.

Bab V Referensi



https://idcloudhost.com/panduan/mengenal-pengertian-dan-konsep-oop/
http://www.bengkelprogram.com/data-artikel-779.0.bps
http://learningidea25.blogspot.co.id/2016/12/pembahasan-mengenai-oodoop-dan-ooa.html

Tidak ada komentar:

Diberdayakan oleh Blogger.