Sabtu, 11 November 2017

Rangkuman Materi Pengantar Sistem dan Teknologi Informasi (Pertemuan ke - 10)

Nama : Panji Wiratama Santoso
NIM : 1705551098
Jurusan/Fakultas/Universitas : Teknologi Informasi/Fakultas Teknik/Universitas Udayana

Mata Kuliah : Pengantar Sistem dan Teknologi Informasi


Dosen : I Putu Agus Eka Pratama, S.T, M.T




Pemrograman Berorientasi Objek dan Pemrograman Terstruktur


A.Pemrograman Berorientasi Objek

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.

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.Konsep dasar dari Pemrograman Berorientasi Objek.

Terdapat 3 keuntungan yang ditawarkan pemrograman berorientasi obyek:
  1. Program lebih mudah dibaca dan dipahami, dan pemrograman berorientasi obyek mengontrol kerumitan program hanya dengan mengijinkan rincian yang dibutuhkan untuk programmer.
  2. Pengubahan program (berupa penambahan atau penghapusan fitur tertentu); perubahan yang dilakukan antara lain menyangkut penambahan dan penghapusan dalam suatu database program misalnya.
  3. Dapat digunakannya obyek-obyek sesering yang diinginkan, kita dapat menyimpan obyek-obyek yang yang dirancang dengan baik ke dalam sebuah tolkit rutin yang bermanfaat yang dapat disisipkan kedalam kode yang baru dengan sedikit perubahan atau tanpa perubahan pada kode tersebut.
B.Pemrograman Terstruktur atau Struktural
Pemrograman Terstruktur adalah suatu aktifitas pemrograman dengan memperhatikan urutan langkah-langkah perintah secara sistematis, logis , dan tersusun berdasarkan algoritma yang sederhana dan mudah dipahami. Dipelopori pertama kali oleh Professor Edsger Djikstra, PemrogramanTerstruktur mulai berkembang dengan suatu teori yang melemahkan penggunaan statement Go To pada suatu program. Selain memakan (relatif) banyak memori, penggunaan Go To membuat suatu alur penyelesaian masalah menjadi kurang efisien karena urutan penyelesaian menjadi tidak terurut dan cenderung menjadi rumit.

Pemrograman terstruktur memiliki tujuan antara lain untuk lebih mudah memahami suatu program dengan demikian faktor error dapat ditemukan dengan cepat. Selain itu tujuan dari pemrograman terstruktur untuk mempermudah menganalisis dan memodifikasi program, meningkatkan kehandalan program, menyederhanakan kompleksitas program, dan memudahkan pemeliharaan program serta peningkatan kualitas program.

Sifat-sifat dari pemrograman terstruktur dapat diuraikan sebagai berikut :
  1. Memuat teknik pemecahan masalah yang logis dan sistematis
  2. Memuat algoritma yang efisien, efektif dan sederhana
  3. Program disusun dengan logika yang mudah dipahami
  4. Tidak menggunakan perintah GOTO
  5. Biaya pengujian program relatif rendah
  6. Memiliki dokumentasi yang baik
  7. Biaya perawatan dan dokumentasi yang dbuthkan relatif rendah

Pemrograman berorientasi obyek menjalankan fungsinya secara berbeda dengan pemrograman terstruktur. Pemrograman berorientasi objek membutuhkan strategi pemrograman baru yang seringkali sulit untuk programmer yang berorientasi pada pemrograman terstruktur. Dalam pemrograman berorientasi obyek, obyek tidak hanya menyimpan data (data anggota) namun juga metoda (fungsi anggota) untuk mengerjakan sesuatu pada data tersebut. Dua item ini terpadukan dalam suatu konsep kerja: obyek berisi data dan metode untuk melakukan sesuatu pada data tersebut.

Sekarang ini, programmer lebih banyak menggunakan pemrograman berorientasi objek daripada pemrograman terstruktur.Mengapa bisa demikian?Hal ini disebabkan karena untuk membuat program-program yang lebih rumit dan kompleks, pemrograman berorientasi objek lebih praktis dibandingkan dengan pemrograman terstruktur.Akan tetapi, untuk program-program yang relatif masih sederhana, pemrograman terstruktur lebih bagus digunakan karena lebih simple dan mudah.

C. Perbedaan Pemrograman Berorientasi Objek dan Pemrograman Terstruktur


Perbedaan mendasar antara Pemrograman Berorientasi Objek dan Pemrograman Terstruktur adalah dengan menggunakan Pemrograman Berorientasi Objek 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 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. Terdapat juga perbedaan secara spesifik antara Pemrograman Berorientasi Objek dengan Pemrograman Terstruktur, yaitu pada kelas dan objek. Pada Pemrograman Terstruktur tidak terdapat kelas dan objek.

Kalau di Terstruktur ada "function", di OOP ada "method". Kalau di Terstruktur ada "modules", di OOP ada "objects". Kalau di Terstruktur ada "argument", di OOP ada "message". Begitu juga dengan "variabel" yang ada di Terstruktur, di OOP lebih dikenal dengan nama "atribut".

DPerbandingan Pemrograman Terstruktur Dan Pemrograman Berorientasi Objek.


Pemrograman TerstrukturPemrograman Berorientasi Objek
Memecah program dalam fungsi dan data
Menggabungkan fungsi dan data dalam kelas – kelas atau objek - objek
Memiliki ciri Sequence (berurutan), Selection (pemilihan) dan Repetition (perulangan)  
Memiliki ciri Encapsulation (pengemasan), Inheritance (penurunan sifat) dan Polymorphism (perbedaan bentuk dan perilaku)
Struktur program rumit karena berupa urutan proses dan fungsi-fungsi 
Struktur program ringkas, cukup dengan membuat Objek dan class lalu bekerja berdasarkan object dan class tersebut.
Re-use kode program kurang
Kode program sangat re-usable. object dan class dapat digunakan berkali-kali, sehingga dapat menghemat space memori.
Efektif digunakan untuk menyelesaikan masalah kecil dan tidak cocok untuk menyelesaikkan masalah yang rumit, karena nantinya akan kesulitan menemukan solusi permasalahan ketika terjadi error
Efektif digunakan untuk menyelesaikan masalah besar, karena OOP terdiri dari class-class yang memisahkan setiap kode program menjadi kelompok - kelompok kecil, sesuai dengan fungsinya
Mudah diawal, namun kompleks diproses selanjutnya
Sulit diawal (karena harus membuat class) namun selanjutnya akan terasa mudah dan cepat
Eksekusi lebih lambat karena setiap perintah dikerjakan berurutan
Eksekusi lebih cepat karena dieksekusi bersamaan, program hanya mengatur Objek, properties dan method-nya saja



Pada dasarnya Pemrograman Berorientasi Objek maupun Terstruktur tidak ada yang dapat dikatakan lebih baik karena keduanya memiliki spesifikasi tersendiri dalam pemrogramannya. Pemrograman Terstruktur fokus pada bagaimana cara komputer menangani masalah, sedangkan Pemrograman Berorientasi Objek fokus pada masalah yang ditangani dengan menggunakan komputer. Pemrograman Terstruktur biasanya digunakan untuk membuat program yang simpel/sederhana karena masih mudah dan tidak banyak dilakukan perubahan yang berarti, sedangkan Pemrograman Berorientasi Objek cocok digunakan untuk pembuatan software yang rumit dan kompleks karena memberikan berbagai kemudahan kepada programmer seperti yang telah disebutkan diatas. Pemrograman Berorientasi Objek lebih mudah dipelajari bagi pemula dibanding dengan pendekatan sebelumnya, dan pendekatan Pemrograman Berorientasi Objek lebih mudah dikembangkan dan dirawat.

Sekian penjelasan tentang Perbedaan Pemrograman Terstruktur Dan Pemrograman Berorientasi Objek. Semoga bisa membantu teman-teman dalam menentukan konsep pemrograman yang akan dipakai saat membuat program.

Sumber referensi :

I Putu Agus Eka Pratama, S.T, M.T; Peran Pengantar Sistem dan Teknologi Informasi;
Database-Pemrograman-Operating System-dan-Networking; Pertemuan 10 Senin 6 November 2017

http://www.indrasatya.com/2016/04/perbedaan-pemrograman-terstruktur-dan-pemrograman-berorientasi-objek.html, diakses pada 11 November 2017


Tidak ada komentar:

Posting Komentar