Senin, 06 Mei 2013

Metode Berorientasi Objek


         Pemrograman berorientasi objek (Inggris: object-oriented programming disingkat OOP) merupakan paradigma pemrogramanyang 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,
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
  • Kelas — kumpulan atas definisi data dan fungsi-fungsi dalam suatu unit untuk suatu tujuan tertentu. Sebagai contoh 'class of dog' adalah suatu unit yang terdiri atas definisi-definisi data dan fungsi-fungsi yang menunjuk pada berbagai macam perilaku/turunan dari anjing. Sebuah class adalah dasar dari modularitas dan struktur dalam pemrograman berorientasi object. Sebuah class secara tipikal sebaiknya dapat dikenali oleh seorang non-programmer sekalipun terkait dengan domain permasalahan yang ada, dan kode yang terdapat dalam sebuah class sebaiknya (relatif) bersifat mandiri dan independen (sebagaimana kode tersebut digunakan jika tidak menggunakan OOP). Dengan modularitas, struktur dari sebuah program akan terkait dengan aspek-aspek dalam masalah yang akan diselesaikan melalui program tersebut. Cara seperti ini akan menyederhanakan pemetaan dari masalah ke sebuah program ataupun sebaliknya.
  • Objek - membungkus data dan fungsi bersama menjadi suatu unit dalam sebuah program komputer; objek merupakan dasar darimodularitas dan struktur dalam sebuah program komputer berorientasi objek.
  • Abstraksi - Kemampuan sebuah program untuk melewati aspek informasi yang diproses olehnya, yaitu kemampuan untuk memfokus pada inti. Setiap objek dalam sistem melayani sebagai model dari "pelaku" abstrak yang dapat melakukan kerja, laporan dan perubahan keadaannya, dan berkomunikasi dengan objek lainnya dalam sistem, tanpa mengungkapkan bagaimana kelebihan ini diterapkan. Proses, fungsi atau metode dapat juga dibuat abstrak, dan beberapa teknik digunakan untuk mengembangkan sebuah pengabstrakan.
  • Enkapsulasi - Memastikan pengguna sebuah objek tidak dapat mengganti keadaan dalam dari sebuah objek dengan cara yang tidak layak; hanya metode dalam objek tersebut yang diberi izin untuk mengakses keadaannya. Setiap objek mengakses interfaceyang menyebutkan bagaimana objek lainnya dapat berinteraksi dengannya. Objek lainnya tidak akan mengetahui dan tergantung kepada representasi dalam objek tersebut.
  • Polimorfisme melalui pengiriman pesan. Tidak bergantung kepada pemanggilan subrutin, bahasa orientasi objek dapat mengirim pesan; metode tertentu yang berhubungan dengan sebuah pengiriman pesan tergantung kepada objek tertentu di mana pesa tersebut dikirim. Contohnya, bila sebuah burung menerima pesan "gerak cepat", dia akan menggerakan sayapnya dan terbang. Bila seekor singa menerima pesan yang sama, dia akan menggerakkan kakinya dan berlari. Keduanya menjawab sebuah pesan yang sama, namun yang sesuai dengan kemampuan hewan tersebut. Ini disebut polimorfisme karena sebuah variabel tungal dalam program dapat memegang berbagai jenis objek yang berbeda selagi program berjalan, dan teks program yang sama dapat memanggil beberapa metode yang berbeda di saat yang berbeda dalam pemanggilan yang sama. Hal ini berlawanan denganbahasa fungsional yang mencapai polimorfisme melalui penggunaan fungsi kelas-pertama.
          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. Sebagai contoh anggap kita memiliki sebuah departemen yang memiliki manager, sekretaris, petugas administrasi data dan lainnya. Misal manager tersebut ingin memperoleh data dari bag administrasi maka manager tersebut tidak harus mengambilnya langsung tetapi dapat menyuruh petugas bag administrasi untuk mengambilnya. Pada kasus tersebut seorang manager tidak harus mengetahui bagaimana cara mengambil data tersebut tetapi manager bisa mendapatkan data tersebut melalui objek petugas adminiistrasi. Jadi untuk menyelesaikan suatu masalah dengan kolaborasi antar objek-objek yang ada karena setiap objek memiliki deskripsi tugasnya sendiri.

Pengertian Sistem Orientasi Objek
      Sebuah sistem operasi berorientasi obyek adalah sebuah sistem operasi yang internal menggunakan metodologi berorientasi objek . Sebuah sistem operasi berorientasi objek ini berbeda dengan objek-berorientasi user interface atau pemrograman kerangka kerja , yang dapat ditempatkan di atas sistem operasi non-object-oriented seperti DOS , Microsoft Windows atau Unix . Hal ini dapat berpendapat, bagaimanapun, bahwa sudah ada konsep berorientasi objek yang terlibat dalam desain sebuah sistem operasi yang lebih khas seperti Unix . Sementara bahasa yang lebih tradisional seperti C tidak mendukung orientasi objek sebagai lancar sebagai bahasa yang lebih baru, gagasan, misalnya, berkas , aliran , atau device driver (di Unix, masing-masing diwakili sebagai file descriptor ) dapat dianggap sebagai yang baik contoh dari orientasi objek: mereka, setelah semua, tipe data abstrak , dengan berbagai metode dalam bentuk panggilan sistem , yang perilakunya bervariasi berdasarkan jenis objek, yang pelaksanaannya rincian tersembunyi dari pemanggil, dan bahkan mungkin menggunakan warisan di mereka yang mendasari kode.

 Contoh Sistem Orientasi Objek

  • LISP digunakan sebagai sistem operasi pada beberapa mesin awal. alias pada Mesin Lisp dan kemudian di Symbolics dengan marga (sistem operasi)
  • Smalltalk diciptakan di Xerox di 70-an. Sistem Smalltalk adalah sepenuhnya berorientasi objek dan kebutuhan sangat sedikit dukungan olehBIOS dan sistem run-time.
  • Diri  (programming_language) ditemukan di Sun.
  • IBM menciptakan AS400 sekitar tahun 1978 OS AS400 memiliki pengenal unik 128bit untuk objek apapun.
  • NeXTSTEP, selama akhir 1980-an, Steve Jobs membentuk komputer perusahaan NeXT . Salah satu tugas pertama NeXT adalah untuk merancang sistem berorientasi obyek operasi, NeXTSTEP . Mereka melakukan ini dengan menambahkan suatu kerangka kerja berorientasi objek di atasMach dan BSD menggunakan Objective-C bahasa sebagai dasar. NeXTstep kemudian berkembang menjadi OPENSTEP dan Kakao (API) pada Mac OS X . OPENSTEP diberikan sebagai lapisan API atas banyak sistem operasi, yaitu NextStep, Windows, HP-UX , Solaris .
  • Pilihan adalah berorientasi obyek sistem operasi yang dikembangkan di University of Illinois di Urbana-Champaign . Hal ini ditulis dalam C + + dan menggunakan objek untuk mewakili komponen inti kernel seperti CPU , proses dan sebagainya. Warisan digunakan untuk memisahkan kernel ke dalam kelas mesin portabel independen dan kecil non-portabel tergantung kelas. Pilihan telah porting ke dan berjalan pada SPARC , x86 , dan ARM .
  • Athene adalah sebuah objek berbasis sistem operasi pertama kali dirilis pada tahun 2000 oleh Sistem Rocklyte . Lingkungan pengguna dibangun seluruhnya dari benda-benda yang dihubungkan bersama pada saat runtime. Aplikasi untuk Athene juga dapat dibuat menggunakan metodologi ini dan biasanya ditulis menggunakan objek bahasa scripting 'DML' ( Dinamis Markup Language ). Objek dapat dibagi antara proses dengan menciptakan mereka dalam memori bersama dan mengunci mereka seperti yang diperlukan untuk akses.Kerangka objek Athena adalah multi-platform, yang memungkinkan untuk digunakan dalam lingkungan Windows dan Linux untuk pengembangan program berorientasi objek.
  • BeOS, salah satu usaha untuk menciptakan sistem operasi yang benar-benar berorientasi obyek adalah BeOS dari pertengahan tahun 1990, yang digunakan obyek dan C + + bahasa untuk antarmuka pemrograman aplikasi (API). Tapi kernel itu sendiri ditulis dalam C dengan C + + bungkus di ruang pengguna. Sistem tidak menjadi mainstream meskipun bahkan hari ini telah penggemar dan manfaat dari pembangunan yang berkelanjutan.
  • Sukukata suku membuat berat penggunaan C + + dan untuk alasan yang sering dibandingkan dengan BeOS .berbasis Java sistem operasi. Mengingat bahwa Sun Microsystems ' Java saat ini salah satu bahasa berorientasi objek yang paling dominan, tidak mengherankan bahwa Java berbasis sistem operasi telah dicoba. Di daerah ini, idealnya, kernel akan terdiri dari minimal yang dibutuhkan untuk mendukung JVM .Ini adalah satu-satunya komponen suatu sistem operasi yang harus ditulis dalam bahasa lain selain Jawa. Dibangun di atas bahwa JVM dan dukungan hardware dasar, akan mungkin untuk menulis sisa dari sistem operasi di Jawa, bahkan bagian dari sistem yang lebih tradisional ditulis dalam bahasa tingkat rendah seperti C, misalnya driver perangkat , dapat ditulis di Jawa. Contoh upaya seperti sistem operasi termasuk JX , JNode dan JavaOS .
  • Microsoft Singularity adalah Operating System eksperimen berdasarkan Microsoft NET Framework. . Hal ini sebanding dengan berbasis Java sistem operasi, tetapi menggunakan platform. NET bukan platform Java.
  • Symbolics Genera adalah sistem operasi untuk Mesin Lisp ditulis dalam ZetaLisp dan Symbolics Common Lisp . Ini membuat penggunaan berat Flavors (perpanjangan berorientasi obyek dini untuk Lisp) dan Sistem Common Lisp Object (CLOS) . Pembangunan dimulai pada pertengahan tahun 70-an di MIT.

0 komentar:

Posting Komentar

 
;