Makalah Konsep OOP by theo_aribangsa

VIEWS: 17 PAGES: 29

More Info
									PENGENALAN KONSEP DASAR OOP dan JAVA




 Mata Kuliah : Pemograman berorientasi Objek




  Nama       : Sadam Husin B

  No BP      : 11101152630058




          Jurusan Teknik Informatika

           Fakultas Ilmu Komputer

  Universitas Putra Indonesia “YPTK” Padang

                 2011/2013




                                               1
                                        KATA PENGATAR

       Pertama – tama, saya panjatkan puji dan syukur ke hadirat Allah SWT karena hanya dengan
izin dan berkah -Nya, saya dapat menyelesaikan artikel yang berjudul “Konsep OOP Dalam
Pemrograman Visual C++” ini dengan baik dan benar.
       Sebelumnya kita ketahui dengan Aplikasi Pemrograman Visual Borland C/C++ Builder.
Namun, yang nantinya akan saya jelaskan adalah bagaimana Konsep OOP dalam Pemrograman
Visual menggunakan Borland C/C++ Builder ini.
       Demikian, kata dan kalimat singkat saya sekaligus menutup kata pengantar ini. Dan saya
mengucapkan banyak-banyak terima kasih kepada seluruh teman, dosen, maupun media dalam
bentuk apapun yang telah memberikan saya banyak inspirasi untuk menuliskan Artikel ini.




                                                                Padang, 18 februari 2013
                                                                 Hormat saya,


                                                                Sadam Husin B




                                                                                             2
                                      PENDAHLUAN




       Sebelumnya, tentu kita sudah pernah mengenal lebih dahulu apa yang dinamakan bahasa
pemrograman. Oleh karenanya, pada Artikel saya ini, mungkin hanya beberapa referensi yang
menjelaskan mengenai seluk beluk OOP dalam pemrograman, dan juga pada Artikel ini, saya tidak
akan membahas lebih tentang pemrograman lanjut.
       Namun, saya akan lebih menyikapi tentang apa yang dinamakan dengan “OOP” yang ada
dalam Pemrograman Visual “Borland C/C++ Builder” ini. Langsung saja saya akan membahas
sedikit Referensi tentang Konsep OOP Dalam Pemrograman Visual C++ Menggunakan Program
Borland C++ Builder. Sebuah karya manusia yang luar biasa didalam dunia komputer ketika
muncul piranti lunak berbasis pemrograman sebagai evolusi terbaru dari bahasa pemrograman
terstruktur yaitu bahasa pemrograman yang berorientasi pada objek (Object Oriented
Programming).
       Munculnya pemrograman yang berorientasi objek ini memudahkan “orang awam” untuk
memulai menjadi seorang programmer yang handal sesuai bahasa pemrograman yang diminati.
Satu dari sekian banyak bahasa pemrograman yang berorientasi objek adalah bahasa pemrograman
Borland C++ Builder. Borland C++Builder sangat berperan dalam mengembangkan aplikasi-
aplikasi berbasis visual secara mudah dan cepat dengan bahasa pemrograman C++.




                                                                                            3
                                        SEJARAH OOP


       Konsep    OOP     dimulai   pertengahan    1960-an   dengan    sebuah    bahasa   program
SIMULASMALLTALK. Meskipun developer software tidak secara intensif mengembangkan OOP,
tetapi metodologi object-oriented tetap digunakan sampai sekarang. kemudian dilanjutkan di era 70-
an dengan Pada pertengahan 80-an, bahasa OOP seperti C++ dan Eifle menjadi popular diantara
programmer komputer. Popularitas OOP berlanjut pada tahun 90-an, banyak pengembang
perangkat lunak menggunakan konsep OOP seperti yang dilakukan pada Java dan kemudian PHP
yang menjadi popular sekarang.
       Di tahun 2002, versi terakhir dari Visual Studio, Microsoft-pun ikut memperkenalkan
bahasa OOP baru yaitu C# (dibaca C-sharp) serta penyempurnaan Visual Basic 6.0 yang tidak
mendukung OOP menjadi VB.NET sebagai bahasa pemrograman berorientasi objek.
       Namun, pada artikel kali ini, kita akan membahas konsep OOP pada C++ Menggunakan
Borland C++ Builder.
Munculnya C++ sebagai bahasa pemrograman yang berorientasi objek sangat memberikan manfaat
yang besar kepada kita dalam menyelesaikan masalah-masalah didalam perusahaan/organisasi baik
yang berhubungan dengan bisnis ataupun sience.
       Dengan konsep OOP nya, C++ akan lebih mudah dipelajari dan dipahami untuk
dikembangakan karena sifatnya yang lebih modular yaitu mampu menyederhanakan dan
mendefinisikan fungsi-fungsi dan variabel-variabel kedalam bentuk objek.
       Berbeda dengan Pemrograman sebelumnya yang bersifat prosedural dan struktural sehingga
di dalam implementasinya akan banyak statement atau listing program yang kita tulis secara
berulang-ulang seperti penulisan fungsi maupun variabel.
       Salah satu contoh perbedaan yang sanagat sederhana antara pemrograman prosedural
dengan Pemrograman berorientasi objek adalah pada pendefinisian variabel, konstanta atau fungsi.
Didalam pemrograman prosedural seluruh variabel, konstanta, ataupun fungsi yang dibutuhkan
didalam program wajib didefinisikan sementa didalam program berorientasi objek semua kebutuhan
variabel, konstanta dan fungsi tersebut cukup dibuatkan didalam sebuah objek. Sebuah objek inilah
yang dapat menampung data-data baik data dari variabel, konstanta ataupun berupa fungsi. Didalam
C++Builder data-data didalam objek tersebut dikenal dengan nama property, perilaku atau fungsi
yang dimilikinya dikenal dengan nama method dan peristiwa-peristiwa yang terjadi pada objek
tersebut dikenal dengan nama event.


                                                                                                4
                                              BAB
                                        PEMBAHASAN

1. Pengenalan Konsep Object Oriented Programing (OOP)

       Object Oriented Programing (OOP) merupakan salah satu pendekatan pemrograman atau
paradigma mengembangkan suatu perangkat lunak komputer yang dimana dalam struktur perangkat
lunak tersebut didasarkan kepada interaksi objek dalam menyelesaikan suatu proses. Interaksi
tersebut mengambil form dari pesan-pesan dan mengirimkannya kembali antara object tersebut,
object tersebut akan merespon pesan tersebut menjadi sebuah tindakan atau metode.

       OOP dimulai pertengahan 1960-an dengan sebuah bahasa program “SIMULA” kemudian
dilanjutkan di era 70-an dengan “SMALLTALK”. Meskipun developer software tidak secara
intensif mengembangkan OOP, tetapi metodologi object oriented tetap digunakan. Pada
pertengahan 80-an, bahasa OOP seperti “C++” dan “Eifle” menjadi popular diantara programmer
computer. Popularitas OOP berlanjut pada tahun 90-an, banyak pengembang software
menggunakan konsep OOP seperti “Java”. Tahun 2002, versi terakhir dari visual studio, microsoft
memperkenalkan bahasa OOP baru yaitu “C#” serta upgrade Visual Basic, dan ini merupakan
sebuah bahasa OOP sesungguhnya.

       Adapun alasan menggunakan konsep Object Oriented (OO), adalah:

       -   Pengembangan perangkat lunak itu sulit karena “perangkat lunak mudah diimpikan”
       -   Kompleksitas pengembangan perangkat lunak terus bertumbuh dan membutuhkan
           konsep yang lebih handal
       -   OO menawarkan tipe data abstrak, modularitas, pemodelan informasi, proses software
           untuk mengatasinya
       -   OO bukanlah jaminan pengembangan suksesnya pengembangan perangkat lunak

       Adapaun prinsip utama dari OOP, adalah:

       -   Fungsi dan data bukan dua hal yang terpisah
       -   Fungsi dan data menjadi satu kesatuan yang disebut object aktif
       -   Program adalah serangkaian objek yang bekerjasama untuk menyelesaikan suatu
           masalah


                                                                                             5
        Prinsip utama OOP adalah memerlukan masing-maisng bagian dari sebuah aplikasi sebagai
object. Berbeda dengan Procedural Programming, dimana sebuah aplikasi terdiri kumpulan function
dan intruksi. Masing-maisng object pada OOP dapat menerima pesan, memperoleh data, dan
mengirim pesan pada object lainnya, serta dapat dilihat sebagai sebuah item yang berdiri sendiri
dengan tanggung jawab dan aturan tertentu. Pada sebuah sebuah object, anda tidak perlu
mengetahui bagaimana object itu bekerja. Contoh konsep OOP misalnya pada sebuah aplikasi
katalog buku, dimana anda memiliki kategori buku, kategori ini merupakan suatu object. Kategori
tersebut memiliki nama, judul nomor ID yang unik ataupun deskripsi lain. Deskripsi dari object ini
disebut property. Pada object kategori, anda dapat menambahkan, menghapus, atau menampilkan
kategori. Aksi-aksi pada object ini (simpan, hapus, tampilkan) disebut dengan method.

        Object oriented programs terdiri dari objects yang berinteraksi satu sama lainnya untuk
menyelesaikan sebuah tugas. Seperti dunia nyata, users dari software programs dilibatkan dari
logika proses untuk menyelesaikan tugas. Contoh, ketika kamu mencetak sebuah halaman diword
processor, kamu berarti melakukan inisialisasi tindakan dengan mengklik tombol printer. Setelah
itu kamu hanya akan menunggu apa tugas tersebbut sukses atau gagal, sedangkan proses terjadi
secara internal tanpa di ketahui. Dengan kata lain object oriented program adalah suatu metode /
teknik dalam pembuatan program yang memodalkan object yang ada di dunia nyata (real word
object) ke dalam software object dalam bentuk pemrograman.

                   Real World Data           OOP             Aplikasi Komputer

        Bahasa pemrograman yang mendukung Metode pendekatan Objek Oriented Programing
antara lain:

    -   Visual Foxpro
    -   Java
    -   C++
    -   Pascal
    -   SIMULA
    -   Smaltalk
    -   Ruby
    -   Python
    -   PHP

                                                                                                6
    -   C#
    -   Delphi
    -   Eiffel
    -   Perl
    -   Adobe Flash AS 3.0

        OOP dimaksudkan adalah membuat suatu program yang terdiri dari berbagai object yang
saling berinteraksi. Sebelum adanya konsep OOP sudah ada konsep Procedural. Konsep OOP akan
terasa sangat membantu ketika digunakan dalam program yang ruang lingkup yang luas sehingga
mudah mengornanisir program tersebut.

        Dalam pendekatan Objek Oriented Programaning haruslah terdapat konsep-konsep berikut
ini :

    -   Object
    -   Atribut
    -   Class
    -   Property & Method




                                                                                          7
                           Gambang pemahaman Property, Object, Method, dan Event

Konsep object oriented memiliki karakteristik utama yaitu :

   1. Enkapsulasi, sebuah prinsip yang digunakan ketika membangun struktur program secara
       keseluruhan yang mana setiap komponen dari program dibungkus, pembungkusan properti
       dan operasi dalam satu even. Secara simple dapat kita katakan bahwa kita menyembunyikan
       keruwetan kode-kode program dalam suatu object.J
   2. Polimorphism, suatu kondisi dimana dua object atau lebih mempunyai antarmuka yang
       identik namun mempunyai perilaku berbeda.
   3. Inheritance (pewarisan), merupakan sarana untuk menghilangkan penulisan ulang terhadap
       kode yang dapat digunakan berulang kali yang didasarkan pada hubungan relasional
       hirarki.

2. Cara Menentukan Object-Object dalam suatu Program

       Saat akan membuat suatu program harus memiliki object yang baik dan menarik sehingga
program yang akan dibuat tersebut akn menarik dan berkerja dengan optimal. Oleh karena itu ada
beberapa cara agar dapat menentukan program dengan baik, sebagai berikut :




           1) Correctness and Sufficiency

                  Dalam membuat program haruslah object-object yang akan dipilih dapat menjamin
                  kebenaran informasi dan kecukupan informasinya.

           2) Robustness

                  Object yang di desain sebaiknya dapt membuat program menjadi tangguh, dalam hal
                  ini diharapkan program yang dibuat memiliki error yang sedikit dan dapat bertahan
                  dalam situasi sulit.

           3) Flexibility




                                                                                                 8
              Object yang akan di jadikan program sebaiknya mudah untuk dikembangkan
              (bersifat flexibel). Hal ini di karenakan dalam pembuatan program sering kali kita
              harus merubah desain yang telah kita buat sebelumnya agar bisa disesuaikan dengan
              yang diinginkan user.

          4) Reusability

              Kode-kode program yang telah kita buat, dapat digunakan lagi. Hal ini haruslah
              dipenuhi dalam membuat program yang baik. Karena ketika kita menggunakan point
              ini maka kita akan lebih mudah unutk me-manage program yang kita buat, apalagi
              disaat kita mengganti suatu informasi dalam program yang kita buat.

          5) Efficiency

              Program yang akan dibuat sebaiknya efesien karena akan berkaitan dengan
              penggunaan resource hardware yang kita gunakan. Baik itu faktor kecepatan maupun
              dalam faktor penyimpanan data.

       Dengan berpegangan sesuai dengan cara-cara diatas diharapkan kita dapat menghasilkan
program yang tangguh, menarik, dan bagus.




3. OOP vs Procedural Programming

       Sebagaiman yang seusai dengan penjabaran sebelumnya OOP merupakan konsep yang ada
setelah konsepprocedural programming. Selain menggunakan pradigma OOP, programer dapat
menuliskan struktur kode program yang baik dengan Procedural programming, dimana programer
membuat kode program dengan pendekatan procedural dan bekerja dengan function/procedure di
dalam aplikasinya. Jika ditanya pendekatan mana yang lebih efisien antara OOP dengan Procedural
Programming. Maka jawabannya relatif. Tergantung aplikasi apa yang akan di buat. Jika
mempertimbangkan pemeliharaan dan pengembangan aplikasi yang efisien di masa yang akan
datang, maka gunakanlah pendekatan OOP. Tetapi, jika aplikasinya merupakan program sederhana


                                                                                              9
yang dapat dibuat dengan mudah dan cepat dengan function, gunakanlah pendekatan procedural
programming. Dan semuanya sesuai dengan kepandaian anda dalam mengerjakan sebuah aplikasi.




4. Penjabaran Konsep Object, Class, dan Atribut pada OOP

Dari konsep-konsep di atas akan dijabarkan lebih jelas sebagai berikut.

   A. Object

       Ide dasar pada OOP adalah mengkombinasikan data dan fungsi untuk mengakses data
menjadi sebuah kesatuan unit dikenal dengan objek. Dalam OOP, object adalah structure yang
mengabungkan data dan prosedur untuk bekerja bersama-sama. Objek merupakan orang, tempat,
benda, kejadian, atau konsep-konsep yang ada di dunia nyata yang penting bagi suatu aplikasi
(software). Semua objek memiliki identitas masing-masing yang dapat dibedakan seperti, objek
orang contoh saya, kamu, dosen dan lain-lain. objek tempat contoh kampus, pantai, dan lain-lain.
objek benda contoh keyboard, monitor, dan lain-lain. Dengan kata lain semua benda yang ada di
dunia bisa di jadikan sebagai objek. Selain memiliki identitas objek juga memiliki tingkah laku atau
disebut methode.

       Karakteristik dari objek

           o Setiap objek memiliki atribut sebagai status (state)
           o Setiap objek memiliki tingkah laku (behavior)
           o Penggambaran pemrograman berorientasi objek = penggambaran pada dunia nyata
           o Pada pemrograman berorientasi objek :
              State disimpan pada variabel
              Tingkah laku disimpan pada method

   B. Atribut




                                                                                                 10
       Atribut merupakan data/identitas yang dimiliki suatu objek dalam class. Setiap atribut akan
memiliki nilai berbeda untuk setiap objek atau dengan kata lain atribut adalah data yang
membedakan antara objek satu dengan lainnya. Dalam class atribut disebut variabel.

       Hubungan antara objek dan atribut

       Pada penjelasan diatas telah di jabarkan bahwa atribut merupakan data yang membedakan
antara objek satu dengan objek yang lainnya. Identitas tersebut membedakan masing-masing objek
yang kita buat guna untuk menentukan tugas-tugas atau fungsi dari setiap program yang kita buat.
Atribut ini memiliki peranan sebagai suatu keterangan data dari suatu objek yang kita buat contoh
kita mengambil objek sample seperti sepeda, objek yang kita buat dalam suatu program adalah
sepeda, pada sepeda memiliki atribut (state) yaitu: pedal, roda, gear, dan lain-lain.

   C. Class

       Class adalah tipe data yang memiliki kemiripan dengan struct. Struct merupakan sebuah
objek yang berguna dalam orentasi objek (OOP). Seperti objek, class memilik properties (bagian)
dan method (metode menggunakan properties). Namun representasi dalam class properties-nya
sendiri dibuat bertipe data primtif (char, integer, float, double, bool, maupun enum), sedangkan
methodnya berupa fungsi yang digunakan untuk merubah properties object itu sendiri. Class hampir
sama dengan sturct, bedanya, struct semua elemennya dapat diakses dari fungsi main(), class tidak
bisa, karena tipe pengaksesan elemen class atau access modifiter ada beberapa macam, antara lain
public, private dan protected. Dalam class elemen yang dapat digunakan (akses) langsung dari
fungsi main() adalah elemen public. Sedangkan protected hanya bisa diakses dari private (turunan
class) yaitu class yang lebih spesific dari class utama yang memiliki ciri khas tertentu namun masih
memiliki sifat yang ada pada class utama. Contoh class utama menggunakan object kue, class
private-nya mungkin mempresentasikan object donat, bolu atau jenis kue lain.

       Dalam class harus ada 2 bagian berikut ini:

                   1. Constructur

               Constructur berfungsi membuat objek. Melalui constructur properties object diset
               dengan nilai tertentu. Jika properties berupa array atau pointer atau reference,



                                                                                                 11
               melalui constructur, properties tersebut diberi alokasi memory sesuai yang
               dibutuhkan. Nama constructur selalu sama dengan class.

                   2. Destructor

               Destructor berfungsi menghilangkan(destroy) object. Jika properties berupa array
               atau pointer atau reference, melalui constructor, alokasi memory properties tersebut
               dihapus. Nama destructor selalu sama dengan nama class akan tetapi diawali tanda
               “~”.

Sebelum kita memasuki dalam bahasa pemrograman, sebaiknya ada beberapa hal yang kita selalu
kita ingat dan kita pegang :

   a) Program yang akan kita buat adalah terdiri dari sekumpulan object yang saling berinteraksi/
       saling mengirimkan pesan. Misalnya kita asumsikan program kita adalah sebuah mobil, dan
       bagian-bagian dari mobil tersebut adalah object-object (mesin, rangka mobil dan lain
       sebagainya)yang saling berhubungan dan menjadi satu kesatuan yang membangun mobil
       tersebut
   b) Berfikirlah object sebagai tipe “data buatan” (seperti struct, Enum). Namun tipe “data
       buatan” ini memiliki kelebihan yaitu dapat menyimpan informasi (sebagai property) dan
       juga dapat melakukan “aktivitas” (sebagai method/ fungsi)
   c) Setiap object memiliki “tipe” tersendiri. Tipe disini dimaksudkan agar kita dapat
       mengetahui “pesan” apa yang dapat kita kirimkan terhadap object tersebut. Atau dengan
       kata lain dengan mengetahui “tipe” suatu object kita dapat memanggil fungsi yang terdapat
       didalamnya ataupun informasi yang disimpan oleh object tersebut

       Beberapa penggunaan Class pada bahasa pemrograman:

       1) Java

       Di dalam kelas kita mendeklarasikan berbagai variabel dan methode, contoh berikut
menapilkan dasar pembuatan kelas pada bahasa pemrograman java :

//deklarasi nama kelas StudInfo

Class StudInfo{
                                                                                                12
//deklarasi variabel

          String name;

          String id;

          String classcode;




//deklarasi dan inisialisasi methode printDetails()

    Void printDetails(){

          System.out.println(name + “ ” + id + “ ” + classcode);

     }

}

//kelas utama StudentDetails

Class StudentDetails {

    Public static void main (String args ) {

//membuat objek bernama student adri kelas StudInfo

          StudInfo student=new StudInfo();

//inisialisasi variabel objek dengan data

          student.name = “Abraham Linclon”;

          student.id = “11101152630224”;

          student.classcode = “AD0101PT”;

//memanggil methode printdetail unutk menapilkan data

          Student.printDetails();
                                                                   13
    }

}

        Pada program diatas, kita menggunakan 2 kelas yaitu StudentInfo yang berisi variabel dan
method siswa, dan kelas StudentDetails yang berisi inisialisasi variabel dan pemanggilan fungsi
printDetails, dengan terlebih dahulu membuat objek dengan nama student. Perlu diperhatikan di
sini, ketika anda akan menyimpan nama sebuah file, maka wajib berikan nama file dari kelas yang
ada fungsi main. Dari contoh diatas, kelas yang mempunyai fungsi main ialah StudentDetails, oleh
karena itu nama file yang tepat ialah StudentDetails.java.

Ketika program ini dijalankan ,hasilnya :

                 Abraham Linclon 11101152630224 AD0101 PT



        2) C++

             Berikut contoh skrip OOP class pada C++.

        #include <iostream.h>

        #include <conio.h>

        #include <stdlib.h>

        class biodata_mahasiswa

        {

            private:

             char nama[25], alamat[20], tempat_lahir[20], tanggal_lahir[20],

                   pendidikan[8], no_telepon[15], jenis_kelamin[5];

             public:

             void input_data()

             {


                                                                                             14
clrscr();

cout<<" ---------------------------------------"<<endl;

cout<<" |          Biodata Mahasiswa            |"<<endl;

cout<<" ---------------------------------------"<<endl;

cout<<" Nama              :"; cin.getline(nama,sizeof(nama));

cout<<" Alamat            :"; cin.getline(alamat,sizeof(alamat));

cout<<" Tempat Lahir :"; cin.getline(tempat_lahir,sizeof(tempat_lahir));

cout<<" Tanggal Lahir :"; cin.getline(tanggal_lahir,sizeof(tanggal_lahir));

cout<<" Pendidikan          :"; cin.getline(pendidikan,sizeof(pendidikan));

cout<<" No. Telepon         :"; cin.getline(no_telepon,sizeof(no_telepon));

cout<<" Jenis Kelamin :"; cin.getline(jenis_kelamin,sizeof(jenis_kelamin));

}

void output_data()

{

    cout<<" ---------------------------------------"<<endl;

    cout<<" |     cetak biodata Mahasiswa          |"<<endl;

    cout<<" ---------------------------------------"<<endl;

    cout<<" Nama           :"<<nama<<endl;

    cout<<" Alamat         :"<<alamat<<endl;

    cout<<" Tempat Lahir :"<<tempat_lahir<<endl;

    cout<<" Tanggal Lahir :"<<tanggal_lahir<<endl;

    cout<<" Pendidikan       :"<<pendidikan<<endl;


                                                                              15
              cout<<" No. Telepon       :"<<no_telepon<<endl;

              cout<<" Jenis Kelamin :"<<jenis_kelamin<<endl;

              }

};

class nilai

{

     private:

      int uas,uts,latihan,tugas,quiz;

     public:

      void input_nilai()

      {

              cout<<" ---------------------------------------"<<endl;

              cout<<" |        Nilai Mahasiswa           |"<<endl;

              cout<<" ---------------------------------------"<<endl;

              cout<<" Tugas        :"; cin>>tugas;

              cout<<" Latihan      :"; cin>>latihan;

              cout<<" MID          :"; cin>>uts;

              cout<<" UAS          :"; cin>>uas;

              cout<<" QUIZ         :"; cin>>quiz;

      }

      void output_nilai()

          {


                                                                        16
            cout<<" ---------------------------------------"<<endl;

            cout<<" |    cetak Nilai Mahasiswa            |"<<endl;

            cout<<" ---------------------------------------"<<endl;

            cout<<" Tugas        :"<<tugas<<endl;

            cout<<" Latihan      :"<<latihan<<endl;

            cout<<" MID          :"<<uts<<endl;

            cout<<" UAS          :"<<uas<<endl;

            cout<<" QUIZ         :"<<quiz<<endl;

        }

};

void main()

{

     biodata_mahasiswa m;

     nilai c;

     m.input_data();

     c.input_nilai();

     clrscr();

     m.output_data();

     c.output_nilai();

     getch();

}

Berikut tampilan OOP dengan class pada bahasa C++


                                                                      17
3) PHP

          Dalam bahasa pemrograman PHP juga dapat digunakan class, berikut contohnya:

  <?php

  class MyClass

  {

      public $prop1 = “I’m a Budi!”;

      public function setProperty($newval)

      {

          $this->prop1 = $newval;

      }

  Public function getProperty()

  {

       return $this->prop1.”<br/>”;

  }

  }

  //buat 2 object

  $obj = new MyClass;

  $obj2 = new MyClass;

  //ambil nilai dari $prop1 dari kedua object

                                                                                        18
           echo $obj->getProperty();

           echo $obj2->getProperty();

           //beri nilai baru untuk kedua object

           $obj->setProperty(“I’m Super Budi!”);

           $obj->setProperty(“All People Know me!”);

           //cetak kedua nilai $prop1

           echo $obj->getProperty();

           echo $obj2->getProperty();

           ?>

                Setelah skrip selesai maka outputnya sebagai berikut:

                I’m a Budi!

                I’m a Budi!

                I’m a Super Budi!

                All People Know Me!




5. Konsep OOP pada pemrograman Visual

       Konsep OOP juga dapat digunakan pada pemrograman visual. Dari keterangan diatas
terdapat hubungan yang jelas antara OOP dengan pemrograman visual. Pemrograman berorientasi
objek (OOP) berperan dalm pendefinisian rutin-rutin pemrograman sedangkan pemrograman visual
mendefinisikan secara visual bagaiman programmer atau user menjalankan program tersebut
sehingga tampilan nyata yang ada pada program tersebut dapat kita ketahui. Hal ini sangat
membantu dan memudahkan programer dalam pembuatan program dan juga memungkinkan

                                                                                            19
pengguna untuk lebih fokus pada pemecahan masalah daripada cara menangani bahasa
pemrograman atau tidak perlu mendalami sintak. Selain itu dengan OOP cukup mendefinisikan
event-event yang akan terjadi pada object. Dengan kata lain pemrograman visual cukup membantu
dalam pembuatan program aplikasi dengan mendukung konsep object oriented programming.

               Penerapan konsep OOP dalam pemrograman visual dapat dlihat dengan
       menggunakan C++ Builder 6.0

       Sebagai contoh membuat suatu aplikasi sederhana dengan menggunakan C++ builder.
Disini kita tinggal menggunakan object yang telah disediakan sesuai kebutuahan kita. Misalnya
form, label edit, button, dan lain-lain. Object-object tersebut nantinya aka dapat bekerja sesuai
dengan fungsinya tergantung event yang kita berikan. Object dalam hal ini adalah form, lebel, edit,
button atau object lain yang kita tambahkan pada aplikasi yang kita buat.




6. Karateristik Pendekatan OOP

       Sebagaimana yang kita tahu selain memiliki konsep (object, class, atribut, dan lain-lainnya)
OOP juga memiliki karakteristik tertentu yang membedakan dengan konsep pendekatan lainnya.
Hal ini membuat pendeketan OOP lebih efisen. Berikut ini beberapa karakteristtik pada OOP:

                           a. Encapsulation

               Encapsulation adalah kombinasi antara data dan method pada sebuah class yang
       ditujukan untuk menyembunyikan detail dari user (pengakses class) terhadap suatu object.
       Dalam OOP, encapsulation dapat dilakukan dengan memahami access modifier yang
       mendefenisikan bagaimana suatu data atau method dapat diakses. Dalam OOP terdapat 4
       macam access modifier, yaitu :

              Private         : hanya diakses class itu sendiri
              Public          : dapat diakses dari umum
              Protected       : hanya dapat diakses dari package dan subclass
              Default         : tanpa modifier, hanya bisa diakses dari package dan class itu sendiri



                                                                                                    20
       Encapsulation juga merupakan karakteristik terpenting dari OOP, pada encapsulation
semua akses langsung tidak dapat diberikan lagi bahkan hidden. Agar dapat data tersebut,
diharuskan berinteraksi dengan object yang bertanggung jawab atas dasar tersebut. Dalam
contoh inventory, jika kita ingin melihat atau mengupdate informasi atas produk, kita
seharusnya bekerja melalui object produk. Untuk membaca data, kita mengirimkan pesan ke
object produk, kemudian object produk akan membaca pesan dan mengirim pesan balik.

     Untuk pemahaman lebih lanjut pahami skrip berikut ini.

       Public class Mahasiswa {

     //deklarasi private attribute

               private String nama;

               private String nim;

               private String alamat;

     public Mahasiswa() {

       }

     //constructor dengan dua input parameter

               Public Mahasiswa (String nama, String nim) {

                       this.nama = nama;

                       this.nim = nim;

       }

     //constructor dengan tiga input parameter

               public Mahasiswa (String nama, String nim, String alamat) {

                       this.nama = nama;

                                                                                           21
                 this.nim = nim;

                 this.alamat = alamat;

 }




//mengakses atribut alamat

         public String getAlamat() {

                 return alamat;

 }

//mengakses atribut nama

         public String getNama() {

                 return nama;

 }

//mengakses atribut nim

         public String getNim() {

                 return nim;

 }

//mengisi atribut alamat

         public void setAlamat (String alamt) {

                 this.alamat = alamat;

                                                  22
         }

     }

         Class MahasiswaTest{

               public static void main (String [ ] args) {

               Mahasiswa objMhs;

               String localNama, localNim;

               objMhs=new Mahasiswa (“Andraiani”,”123456”);

               objMhs.setAlamat (“Lubeg 212 Padang”);

               localNama=objMhs.getNama();

               localNim=objMhs.getNim();

     }

     Dalam hal ini-lah fungsi atau digunakkan encapsulation (pembungkusan), dengan
     encapsulation suatu skrip pada program dapat dibuat lebih mudah dan sederhana.


                 b. Polimorfisme

         Polimorfisme adalah kemampuan 2 object yang berbeda untuk merespon pesan
permintaan yang sama dalam suatu cara yang unik. Contohnya, saya melatih anjing saya
dengan perintah untuk menggonggong dan juga saya melatih burung untuk merespon
perintah saya untuk berkicau. Saay lakukan dengan cara lisan.

         Dalam OOP kamu dapat membuat object yang dapat merespon pesan yang sama
dalam implementasi yang unik. Contohnya, kamu dapat mengirim pesan print ke object
printer yang akan mencetak pada printer, dan kamu juga dapat mengirim pesan yang sama
ke object screen yang akan menuliskan pada screen monitor. Dalam OOP, menerapkan



                                                                                        23
polimorfisme dapat disebut dengan overloding. Kamu dapat mengimplementasikan metode
yang berbeda pada sebuah object yabg mempunyai nama yang sama.

                 c. Abstaction

       Ketika berinteraksi dengan objek didunia ini, kita sering berkosentrasi dengan
sebuah bagian dari propertiesnya. Tanpa kemampuan unutk mensarikan/abstraction atau
menyaring unutk dibuang properties object yang asing/tidak ada hubungannya, sehingga
membuat program tersebut tidak lagi efesien. Sebagai hasil dari abstraction, ketika 2 orang
berbeda berinteraksi dengan object yang sama, mereka sering setuju dengan baigan
atributnya.

       Ketika memilih suatu object aplikasi OOP, hal terpenting ialah mengabungkan
konsep abstraction ini. Contoh, jika membuat aplikasi shipping kamu harus membangun
(memilih) object produk dengan atribut ukuran dan berat. Warna adalah contoh informasi
yang tidak ada hubungannya dengan aplikasi yang akan dibuat. Sehingga warna dibuang
saja. Tetapi ketika kamu membangun order-entry application, warna menjadi penting dan
harus termasuk dalam bagian object produk.

                 d. Inheritance

       Untuk membuat class baru dari komponen class yang sudah ada, dapat kita gunakan
penurunan atau pewarisan. Inheritance juga dapt mengatur encapsulation dan polimerfisme
dengan mengijinkan objek didefenisikan dan diciptakan dengan jenis khusus dari objek
yang sudah ada, object dapat membagi prilaku mereka tanpa harus mengimplementasikan
ualng prilaku tersebut.




                                       Konsep Inherintance

                                                                                          24
Inheritance terdapat 2 macam tipe pewarisan, yaitu:

              Single Inherintance
              Multiple Inheritance

Berikut ini contoh dari inheritance

Class Mahasiswa {

       Private String nama;

       Private String nim;

       Private int jamBelajar=40;

       Mahasiswa() {

       }

       Public Mahasiswa (String nama, String nim) {

               this.nama = nama;

               this.nim = nim;

       }

       Public int getJamBelajar () {

               return jamBelajar;

       }

       Public String getNama (){

               return nama;

       }


                                                      25
         Public String getNim () {

                 Return nim;

         }

}




class Assisten extends Mahasiswa {

         private int JamAsistensi=15;

         public Assisten(String nama, String nim) {

                 super(nama, nim);

         }

         Public Assisten() {

         }

         @Override

         Public int getJamBelajar () { //mengubah method getJamBelajar

                 return super.getJamBelajar()+this.JamAsistensi;

         }

}

         Sesuai dengan skrip program diatas terdapat beberapa kode-kode tertentu
sepert super( ) dan override. Dalam inheritance terdapat beberapa istilah, yaitu :

       Superclass atau parentclass
       Subclass atau chilclass
                                                                                     26
              Super ( ) : mengakses constructur parent class
              Overload : membuat lebih dari satu method dengan nama sama pada suatu
               class
              Override : proses implementasi yang memodifikasi method yang lebih spesifik
               pada child class, method hasil modifikasi tetap menggunakan nama dan
               parameter input yang sama seperti yang digunakan parent class

       Selain dari skrip program diatas juga terdapat contoh lain pada bahasa pemrograman
PHP, contoh sebagai berikut:

       /*inheritance.php*/

       Class Bapak {

       Var $nama =”Bapak”;

       Function Bapak($n) {

       $this_>nama = $n;

       }

       Function Hallo() {echo “Halo, saya $this->nam

       “;}

       }

       Class Anak extends Bapak {}

       $test = new Anak(“Anak dari Bapak”);

       $test->Hallo();

       ?>

Hasil dari skrip program di atas adalah:


                                                                                        27
                “Halo, saya Anak dari Bapak” bukan “Halo, saya Bapak”.

       Hal ini dikarenakanclass Bapak didefenisikan variabel nam dengan nilai Bapak, selanjutnya
kita membuat objek dari class Anak yang merupakan turunan dari class bapak. Lihat bahwa
instantiasi sekaligus mengisikan parameter baru “Anak dari bapak”, sehingga ketika dipanggil maka
mengisikan $this->nama dengan parameter tersebut.

       Seorang programer akan merasakan beberapa manfaat dari inheritance atau pewarisan
diantaranya :

   -   Subclass mampu menyediakan perilaku khusu dari elemen dasar yang disediakan oleh
       superclass
   -   Programmer dapat mengimplementasikan superclass untuk memanggil class abstrak yang
       menyatakan perilaku umum.




7. Kesimpulan Konsep OOP

       Kosep dari object oriented programming adalah lebih dari sekedar sebuah konsep
pemrograman, OOP adalah cara berpikir tentang aplikasi yang mempelajari untuk berpikir bahwa
aplikasi bukan sekedar prosedur melainkan sebagai object dan real entity. Object yang dimaksud
disini memiliki pengertian suatu modul yang mengkombinasikan antara data dan kode program
yang bekerja sama dalam program dengan melewatkan proses satu sama lain. Jadi object oriented
programming merupakan cara yang paling efisien untuk menulis program komputer yang sangat
mudah untuk di kombinasikan dan untuk dipergunakan kembali.

       Object oriented programming lebih memfokuskan kepada manipulasi object. Kenapa
seorang programmer harus memplajari OOP, hal ini dikarenakan pada suatu saat nanti semua
bahasa pemrograman akan menambahkan kemampuan object oriented programing pada bahasanya.

        Object oriented programming yang paling populer adalah java dan C++, tetapi visual basic
pun sudah ikut menambahkan kemampuan ini sejak mencurkan VB 4.0. Sesuai dengan namanya
object oriented programming makan konsep object merupakan jantung dari object oriented
programing (OOP).

                                                                                                 28
29

								
To top