Rabu, 06 April 2016

makalah OOP

MAKALAH
EMPAT PILAR PEMROGRAMAN BERORIENTASI OBJEK

DISUSUN OLEH:
BENHUR SITEPU (143303040224)
JIMMY ROBERTO SINAGA (143303040231)
JULPRIANDA GINTING (143303040225)
MAZMUR SALEH PASARIBU (143303040221)
UNIVERSITAS PRIMA INDONESIA
2016
PENDAHULUAN
Dalam konsep OOP, setiap entitas yang terlibat dalam pemrograman dianggap sebagai sebuah objek. Sasaran utama dalam konsep ini adalah kemudahan dalam pengembangan sistem. Sebuah aplikasi baru tidak harus dibangun dari nol, tetapi bisa dibangun dengan cara “meneruskan” aplikasi sebelumnya. Ilustrasi : Jika prosessor pentium 4 harus dibangun dari nol, berapa lama waktu yang dihabiskan, biaya yang dikeluarkan dan tenaga yang dikorbankan untuk itu? Adalah lebih efisien jika prosesor Pentium 4 dibangun berdasarkan rancangan Pentium 3 dengan perbaikan dan penambahan fitur.
                                                                                   
KATA PENGANTAR
Puji syukur kami panjatkan kehadirat Tuhan Yang Maha Esa karena dengan rahmat, karunia, serta taufik dan hidayah-Nya kami dapat menyelesaikan makalah tentang Empat Pilar pemrograman Berorientasi Objek  ini dengan baik meskipun banyak kekurangan didalamnya.
       Kami sangat berharap makalah ini dapat berguna dalam rangka menambah wawasan serta pengetahuan kita mengenai kegunaan dari Empat Pilar pemrograman Berorientasi dan juga mengenal lebih dalam materi tersebut. Kami juga menyadari sepenuhnya bahwa di dalam makalah ini terdapat kekurangan dan jauh dari kata sempurna. Oleh sebab itu, kami berharap adanya kritik, saran dan usulan demi perbaikan makalah yang telah kami buat di masa yang akan datang, mengingat tidak ada sesuatu yang sempurna tanpa saran yang membangun.
       Semoga makalah sederhana ini dapat dipahami bagi siapapun yang membacanya. Sekiranya laporan yang telah disusun ini dapat berguna bagi kami sendiri maupun orang yang membacanya. Sebelumnya kami mohon maaf apabila terdapat kesalahan kata-kata yang kurang berkenan dan kami memohon kritik dan saran yang membangun demi perbaikan di masa depan.
DAFTAR ISI
Pendahuluan……………………………………………………………………….1
Kata Pengantar ....................................................................................................................2
Daftar Isi .............................................................................................................................
3
Bab I
Empat Pilar Pemrograman Berorientasi Objek
1.1 Dasar OOP ....................................................................................................................4
1.2 .
Tujuan OOP……………………..................................................................................4
1.3
Kelebihan OOP .............................................................................................................5
1.4
Konsep OOP………………………………..................................................................5
1.
4.1 Class dan Object…… .................................................................................................5
1.
5 Komponen Objek…………………...............................................................................7
1.6
Empat Pilar Pemrograman Berorientasi Objek……………..........................................7
1.
6.1 Abstraction…………………......................................................................................7
1.
6.2 Encapsulation………………......................................................................................8
1.
6.3 Inheritance...................................................................................................................8
1.
6.4 Polymorphysm............................................................................................................9
Daftar Pustaka ...................................................................................................................
10
Bab1
Empat Pilar Pemrograman Berorientasi Objek
Dasar OOP
Visual Basic merupakan bahasa yang Object-Based (komponenkomponen program dibuatdalam bentuk objek, dan VB.NET adalah Object Oriented, hal ini berarti bahwa VB.NET merupakan bahasa yang benar-benar berorientasi object dengan mendukung empat pilar utama
dari OOP yaitu Polymorphism, Inheritance, Abstraction dan Encapsulation.
Kalau anda adalah programmer yang terbiasa dengan pendekatan procedural terstruktur, maka anda akan baru dengan beberapa istilah OOP yang kita sebutkan diatas, dan memang hal tersebut senantiasa menjadi masalah bagi programmer yang berasal dari VB dan ingin beralih ke VB.NET.
Lalu timbul pertanyaan, apakah pada kita harus menguasai dan memahami semua istilah diatasbaru dapat membuat program aplikasi dengan VB.NET ? Tentu saja jawabannya tidak, tetapi
sebagai programmer VB.NET yang baik, maka konsep dari OOP tidak dapat diabaikan.
Tujuan OOP
Tujuan utama dari pengembangan pendekatan berorientasi objek (OOP) adalah untuk menghilangkan beberapa kelemahan yang terdapat pada pendekatan procedural. Pada OOP data diperlakukan sebagai elemen yang penting dan tidak boleh mengalir secara bebas dalam program.
Data yang terikat kepada function harus dilindungi terhadap kemungkinan perubahan dari luar function.
Catatan :
Anda dapat melihat konsep OOP seperti suatu objek Televisi, dimana sebagai pemakai kita tidak perlu terlalu pusing dengan komponen apa saja yang bekerja didalam televisi tersebut, tetapi sebagai pemakai kita cukup mengerti bagaimana menghidupkan, memilih channel, mengubah volume suara, dan beberapa setting dasar.
OOP memungkinkan untuk pemecahan masalah kedalam sejumlah entitas yang disebut sebagai objek dan kemudian mengembangkan data dan fungsi disekitar objek tersebut.
Salah satu manfaat yang terpenting dari OOP adalah pemanfaatan kembali.
Beberapa kemampuan utama dari OOP adalah sebagai berikut :
 Menekankan pada data dari pada procedure
 Program terbagi kedalam objek-objek
 Data disembunyikan dari akses oleh function-function eksternal
 Objek dapat berkomunikasi satu dengan yang lain melalui function
 Data baru dan function dapat dengan mudah ditambahkan.                                                                                          
 Mengikuti pendekatan buttom up.
Kelebihan OOP
OOP memiliki keunggulan berikut diatas pendekatan konvensional:
OOP menyediakan struktur modular yang jelas untuk program, yang  mana cocok untuk mendefinisikan tipe data abstrak yang merupakan detail dari implementasi yang disembunyikan serta  memiliki interface yang telah didefinisikan dengan jelas.
OOP memudahkan maintenance dan modifikasi terhadap kode  objekbaru yang dapat dibuat dengan perubahan yang minimal.
OOP menyediakan suatu kerangka kerja yang baik untuk kode library yang mana menyediakan komponen software yang secara mudah dapat disesuaikan dan dimodifikasi oleh programmer. Hal ini khususnya sangat berguna untuk pengembangan user interface secara grafik.
Konsep OOP
Class dan Object
Suatu class adalah suatu koleksi dari objek-objek yang bertipe sama. Setelah suatu class telahdidefinisikan, sejumlah dari objek-objek dapat dibuat berdasarkan class tersebut.
Objek merupakan dasar dari entitas run-time dalam suatu sistem berorientasi objek. Masalah pada pemrograman adalah menganalisa dalam arti objek dan komunikasi alamiah diantara mereka. Ketika suatu program dijalankan, objek berinteraksi satu dengan yang lain dengan saling mengirim message. Objek-objek yang berbeda berinteraksi satu dengan yang lain tanpa mengetahui detail data dari masing-masing data ataupun koding.
analogi
      Object
Class pohon à mendeskripsikan fitur yang dimiliki oleh   semua pohon (memiliki akar, daun, tumbuh, dst)
Class pohon berfungsi sebagai model abstrak tentang konsep  pohon.
Dari Class pohon tersebut, kita dapat membuat berbagai pohon   yang masing-masing bisa memiliki fitur berbeda (pendek, tinggi, berdaun lebat, dan lainnya) tetapi  tetap dikenali sebagai pohon.
Istilah Class dan Objek sering dicampur adukan, pada objek merupakan instance dari suatu class pada saat runtime, jadi pada saat design, class merupakan cetak biru bagi objek-objek yang akan dibuat pada saat runtime.
Anda dapat mengasosiasikan class dengan gambar denah dari rancangan rumah, dan selanjutnya berdasarkan denah ini akan dibangun rumah-rumah (objek) sebenarnya.
Komponen Objek
Saat sebuah objek dianalisa dan dikelompokkan, maka muncullah dua komponen utama dari sebuah objek, yaitu state dan behaviour. Serta empat pilar utama yaitu abstraction, enkapsulasi, pewarisan, dan polymorphism
Pemrograman berorientasi objek menggunakan model pembentukan sistem dimana komponen sistem (objek) seringkali terbentuk dari objek-objek lain yang lebih kecil.
Setiap objek memiliki suatu keadaan (state) dan behaviour yang dapat mengubah state tersebut
State merupakan suatu identitas dari objek
Setiap barang memiliki nama, harga, jenis, dst
Diimplementasikan sbg variabel atau field
(data_members)
Behaviour dapat diartikan sebagai kegiatan dari objek.
Diimplementasikan dalam program sebagai proses/method
(member_functions)
State = kata benda,  behaviour = kata kerja
Contoh :
Manusia
State : umur, tinggi, berat badan
Behaviour : makan, tidur, bekerja.
Empat Pilar Pemrograman Berorientasi Objek
q  Abstraction
q  Encapsulation
q  Inheritance (Pewarisan)
q  Polymorphysm
ABSTRACTION (Abstraksi)
         Konsep penyembunyian detail program/proses  yang sangat rumit sehingga kita tidak perlu mempermasalahkan pembuatannya.
Abstraction merupakan karakteristik dasar dari sebuah object yang membuatnya berbeda dengan object (benda) yang lain. Namun demikian, abstraction juga bergantung pada perspective. Artinya beberapa hal penting yang mungkin penting dari sebuah konteks, akan menjadi tidak penting jika dalam konteks yang lainnya.
Misnya : Objek mobil terhadap sopir. Pembuat mobil tidak perlu mendefinisikan cara pembuatan mobil yang rumit. Yang penting bagi sopir adalah bagaimana mobil tersebut dapat digunakan sebagaimana mestinya. Dengan kata lain pembuat mobil mengabstrasikan cara pembuatannya.
Tapi lain halnya jika mobil itu di tangan seorang mekanik/bengkel, dimana object-object yang tadi tidak berguna untuk Sopir, namun jadi sangat penting bagi seorang mekanik/bengkel.
Artinya, dalam membangun suatu aplikasi , maka kemampuan menggabungkan konsep abstraction ini penting, karena biasanya kita hanya terpaku pada bagian tertentu dari property sebuah object tertentu tanpa mampu memilah-milah properties mana yang digunakan untuk konteks tertentu dan manapula yang tidak perlu untuk digunakan.
ENCAPSULATION (Enkapsulasi/Pembungkusan)
           Konsep penggabungan antara data-data (data members) dan fungsi-fungsi (member functions) yang berkaitan dengan objek.
Misalnya, ketika Sopir menginjak REM, maka dia tidak perlu bagaimana cara kerja rem itu, bagaimana cara kerja kaliper dalam menjepit disk brake dan lain sebagainya. Tapi yang jelas dia harus tahu, kalau mau memperlambat mobil, maka injak rem.
INHERITANCE (Pewarisan)
            Konsep atau proses dalam pembuatan suatu class baru dimana class baru diturunkan dari class induk (Base Class). Class baru ini disebut dengan class turunan (Derived Class)
Misnya : seorang anak pasti akan mewarisi beberapa sifat atau perilaku yang dimiliki oleh bapak dan ibunya . begitu juga dalam sebuah pemrograman , suatu class dapat diturunkan menjadi beberapa sifat atau perilaku dari kelas induknya.
Polymorphysm (Polimorfisme)
bahasa Yunani ¢ banyak bentuk
Dalam OOP, konsep ini memungkinkan digunakannya suatu interface yang sama untuk memerintah suatu objek melakukan suatu aksi/tindakan yang mungkin secara prinsip sama tetapi secara proses berbeda. Dalam konsep yang lebih umum, Polymorphism disebut dalam istilah : satu interface, banyak aksi.
           
contoh : Mobil, terdiri dari berbagai merk, namun semuanya memiliki interface kemudi yang sama (stir kemudi, tongkat transmisi, pedal gas dan rem).
Jika anda dapat mengemudikan satu mobil saja, dapat dipastikan juga dapat mengemudi berbagai mobil.
Daftar Pustaka
http://adikoes.blogspot.co.id/2010/06/3-pilar-pbo-dan-contoh.html

Tidak ada komentar:

Posting Komentar