(PEMROGRAMAN BERORIENTASI OBYEK) MATERI PEMROGRAMAN BERORIENTASI OBYEK KELAS XII

1. Pengembangan Berorientasi Obyek

Metodologi berorientasi objek adalah suatu strategi pembangunan perangkat lunak yang mengorganisasikan perangkat lunak sebagai kumpulan objek yang berisi data dan operasi yang diberlakukan terhadapnya. Metodologi berorientasi objek merupakan suatu cara bagaimana sistem perangkat lunak dibangun melalui pendekatan secara objek yang sistematis.
Apa itu Metodologi Berorientasi Objek Apa itu Metodologi Berorientasi Objek Apa itu Metodologi Berorientasi Objek Apa itu Metodologi Berorientasi Objek Apa itu Metodologi Berorientasi Objek Apa itu Metodologi Berorientasi Objek Apa itu Metodologi Berorientasi Objek

Pada saat ini, metode berorientasi objek banyak dipilih karena metodologi lama banyak menimbulkan masalah seperti adanya kesulitan pada saat mentransformasi hasil dari satu tahap pengembangan ke tahap berikutnya. Misalnya pada metode pendekatan terstruktur, jenis aplikasi yang dikembangkan saat ini berbeda dengan masa lalu.

 Aplikasi yang dikembangkan pada saat ini sangat beragam (aplikasi bisnis. real-time, utility, dan sebagainya) dengan platform yang berbeda-beda, sehingga menimbulkan tuntutan kebutuhan metodologi pengembangan yang dapat mengakomodasi ke semua jenis aplikasi tersebut.

Keuntungan menggunakan metodologi berorientasi objek adalah sebagai berikut:
  1. Meningkatkan produktivitas, karena kelas dan objek yang ditemukan dalam suatu masalah masih dapat dipakai ulang untuk masalah lainnva yang melibatkan objek tersebut (reusable)
  2. Mecepatan pengembangan, karena sistem yang dibangun dengan baik dan benar pada saat analisis dan perancangan akan menyebabkan berkurangnva kesalahan pada saat pengkodean kemudahan pemeliharaan
  3. Karena dengan model objek, pola-pola yang cenderung tetap dan stabil dapat dipisahkan dan pola-pola yang mungkin sering berubah-ubah adanya konsistensi karena sifat pewarisan dan penggunaan notasi yang sama pada saat analisis, perancangan maupun pengkodean. meningkatkan kualitas perangkat lunak
  4. Pendekatan pengembangan lebih dekat dengan dunia nyata dan adanya konsistensi pada saat pengembangannva, perangkat lunak yang dihasilkan akan mampu memenuhi kebutuhan pemakai serta mempunyai sedikit kesalahan.
Tujuan utamanya adalah  mendesain dan membangun sistem dengan mengumpulkan objek software yang dapat digunakan, bukan dengan menulis modul software dari awal. Kemudian, apa yang menjadi kelebihan metodologi berorientasi objek? Kelebihan metodologi berorientasi objek diantaranya:
  • Dibandingkan dengan metode SSAD, OOAD lebih mudah digunakan dalam pembangunan sistem
  • Dibandingkan dengan SSAD, waktu pengembangan, level organisasi, ketangguhan,dan penggunaan kembali (reuse) kode program lebih tinggi dibandingkan dengan metode OOAD (Sommerville, 2000).
  • Tidak ada pemisahan antara fase desain dan analisis, sehingga meningkatkan komunikasi antara user dan developer dari awal hingga akhir pembangunan sistem.
  • Analis dan programmer tidak dibatasi dengan batasan implementasi sistem, jadi desain dapat diformliasikan yang dapat dikonfirmasi dengan berbagai lingkungan eksekusi.
  • Relasi obyek dengan entitas (thing) umumnya dapat di mapping dengan baik seperti kondisi pada dunia nyata dan keterkaitan dalam sistem. Hal ini memudahkan dalam mehami desain (Sommerville, 2000).
  • Memungkinkan adanya perubahan dan kepercayaan diri yang tinggi terhadap kebernaran software yang membantu untuk mengurangi resiko pada pembangunan sistem yang kompleks (Booch, 2007).
  • Encapsliation data dan method, memungkinkan penggunaan kembali pada proyek lain, hal ini akan memperingan proses desain, pemrograman dan reduksi harga.
  • OOAD memungkinkan adanya standarisasi obyek yang akan memudahkan memahami desain dan mengurangi resiko pelaksanaan proyek.
  • Dekomposisi obyek, memungkinkan seorang analis untuk memcah masalah menjadi pecahan-pecahan masalah dan bagian-bagian yang dimanage secara terpisah. Kode program dapat dikerjakan bersama-sama. Metode ini memungkinkan pembangunan software dengan cepat, sehingga dapat segera masuk ke pasaran dan kompetitif. Sistem yang dihasilkan sangat fleksibel dan mudah dalam memelihara.
  • Lalu, yang menjadi kekurangan dalam metodologi berorientasi objek yaitu:Pada awal desain OOAD, sistem mungkin akan sangat simple.
  • Pada OOAD lebih fockus pada coding dibandingkan dengan SSAD.
  • Pada OOAD tidak menekankan pada kinerja team seperti pada SSAD.
  • Pada OOAD tidak mudah untuk mendefinisikan class dan obyek yang dibutuhkan sistem.
  • Sering kali pemrogramam berorientasi obyek digunakan untuk melakukan anlisisis terhadap fungsional siste, sementara metode OOAD tidak berbasis pada fungsional sistem.
  • OOAD merupakan jenis manajemen proyek yang tergolong baru, yang berbeda dengan metode analisis dengan metode terstruktur. Konsekuensinya adalah, team developer butuh waktu yang lebih lama untuk berpindah ke OOAD, karena mereka sudah menggunakan SSAD dalam waktu yang lama ( Hantos, 2005).
  • Metodologi pengembangan sistem dengan OOAD menggunakan konsep reuse. Reuse merupakan salah satu keuntungan utama yang menjadi alasan digunakannya OOAD. Namun demikian, tanpa prosedur yang emplisit terhadap reuse, akan sangat sliit untuk menerapkan konsep ini pada skala besar (Hantos, 2005).
Contoh pada kasus ATM (Anjungan Tunai Mandiri), terdapat informasi – informasi yang berhubungan dengan objek rekening seperti no_rekening, saldo, nama, alamat, dan sebagainya.
Selain itu, terdapat pula perilaku – perilaku untuk objek rekening misalnya buka, tutup, penarikan, penyimpanan, ubah_nama, ubah_alamat, dan sebagainya. Informasi – informasi dan perilaku – perilaku tersebut dibungkus dalam objek rekening.
Akibatnya, perubahan – perubahan pada sistem perbankan yang berkaitan dengan rekening – rekening dapat secara sederhana diimplementasikan satu kali saja pada objek rekening.


2. Aplikasi Multimedia


Multimedia diambil dari kata multi dan media. Multi berarti banyak dan media berarti media atau perantara. Multimedia adalah gabungan dari beberapa unsur yaitu teks, grafik, suara, video dan animasi yang menghasilkan presentasi yang menakjubkan. Multimedia juga mempunyai komunikasi interaktif yang tinggi. Bagi pengguna komputer multimedia dapat diartikan sebagai informasi komputer yang dapat disajikan melalui audio atau video, teks, grafik dan animasi.
Disini dapat digambarkan bahwa multimedia adalah suatu kombinasi data atau media untuk menyampaikan suatu informasi sehingga informasi itu tersaji dengan lebih menarik.
Aplikasi Multimedia
Aplikasi multimedia adalah aplikasi yang dirancang serta dibangun dengan menggabungkan elemen-elemen seperti : dokumen, suara, gambar, animasi serta video. Pemanfaatan dari aplikasi multimedia dapat berupa company profile, video untuk tutorial, e-Learning, maupun Computer Based Training.
multimedia
Aplikasi Multimedia
Banyak sekali jenis aplikasi multimedia, mulai dari yang sekedar hanya untuk melihat (view) saja sampai dengan membuat dan mengeditnya.
  1. Media Player
Media player adalah jenis perangkat lunak yang digunakan untuk memainkan informasi dalam bentuk audio dan video. Biasanya aplikasi media player saat ini sudah bisa untuk memainkan baik informasi audio maupun video. Beberapa jenis perangkat lunak media player adalah:
  • Windows Media Player, bersifat komersial dan diproduksi oleh Microsoft Corp. Perangkat lunak ini ikut dalam paket Microsoft Windows.Winamp, bersifat freeware/komersial dan diproduksi oleh Nullsoft Inc..
  • WinDVD, bersifat komersial dan diproduksi oleh Intervideo.
  • PowerDVD, bersifat komersial dan diproduksi oleh Cyberlink.
  • Musicmatch Jukebox, bersifat komersial dan diproduksi oleh Musicmatch Inc.
  • DivX Player, bersifat freeware atau komersial, diproduksi oleh DivXNetwork Inc.
  • Real Player, bersifat komersial dan diproduksi oleh Real Networks.
  • XMMS, audio player bersifat open source dan dibawah lisensi GNU General Public License.
  • Xine, DVD player yang bersifat open source dan dibawah lisensi GNU General Public License.
  1. Audio/Video Edtor
Video/audio editor adalah jenis perangkat lunak yang digunakan untuk mengedit dan memanipulasi informasi dalam bentuk video dan audio. Banyak sekali proses dalam mengedit video dan audio, contohnya adalah proses pemotongan, penggabungan, konversi format audio/video, dan manipulasi kualitas audio/video. Beberapa jenis perangkat lunak media player adalah:
  • Adobe Premiere Pro, bersifat komersial dan diproduksi oleh Adobe Systems.
  • Adobe Premiere Elements, bersifat komersial dan diproduksi oleh Adobe Systems.
  • Windows Movie Maker, bersifat komersial dan diproduksi Microsoft Corp.
  • Pinnacle Studio, bersifat komersial dan diproduksi oleh Pinnacle Systems.
  • TMPGEnc, bersifat komersial dan diproduksi oleh Pegasis Inc.
  1. Graphis/Image Viewer
Image viewer adalah jenis perangkat lunak yang digunakan untuk melihat (view) image secara terorganisasi pada sebuah direktori. Saat ini sudah banyak sekali format image yang telah didukung oleh aplikasi image viewer, seperti bmp (windows bitmap), jpeg/jpg (image terkompresi), gif (CompuServe), png (portable network graphics), ico (icons image), dll. Biasanya perangkat lunak ini juga menyediakan fasilitas untuk mengedit image dalam fungsi-fungsi yang sederhana. Beberapa jenis perangkat lunak image viewer adalah:
  • ACDSee, bersifat komersial dan diproduksi oleh ACD Systems.
  • XNView, bersifat freeware dan diproduksi oleh Pierre-e Gougelet.
  • Irfan View, bersifat komersial dan diproduksi oleh Irfan Skiljan.
  • Microsoft Picture Manager, bersifat komersial dan diproduksi oleh Microsoft Corp.
  • Microsoft Picture and Fax Viewr, bersifat komersial dan masuk dalam paket Microsoft Windows..
  1. Graphic/Image Editor
Image editor adalah perangkat lunak yang digunakan untuk melukis, menggambar, mengedit dan memanipulasi image atau gambar secara interaktif pada sistem komputer. Banyak sekali jenis perangkat lunak image editor mulai dari dengan fungsi editing yang sederhana sampai dengan yang kompleks. Terdapat dua jenis image yang dihasilkan oleh image editor, yaitu dalam bentuk bitmap image dan vector image. Beberapa contoh perangkat lunak image editor adalah sebagai berikut:
  • Adobe Photoshop, merupakan vector dan bitmap image editor. Bersifat komersial dan diproduksi oleh Adobe Systems.
  • Corel Draw, merupakan vector image editor. Bersifat komersial dan diproduksi oleh Corel Corporation.
  • Microsoft Paint, merupakan bitmap image editor. Bersifat komersial dan masuk dalam paket Microsoft Windows.
  • Paint Shop Pro, merupakan vector dan bitmap image editor. Bersifat komersial dan diproduksi oleh Corel Corporation.
  • GIMP, merupakan bitmap dan vector image editor. Bersifat open source dan diproduksi oleh The GIMP Team dengan lisensi GNU General Public License.
  1. Animasi
Aplikasi animasi adalah perangkat lunak yang digunakan untuk membuat, mengedit, dan memanipulasi informasi dalam bentuk animasi. Animasi adalah gambar bergerak atau video dengan konten gambar yang fiktif, seperti kartun dan gambar tidak riil. Beberapa contoh perangkat lunak animasi adalah sebagai berikut:
  • Macromedia Flash, merupakan perangkat lunak animasi yang banyak digunakan, baik untuk web, presentasi, dll. Bersifat komersial dan diproduksi oleh Macromedia Inc.
  • Houdini Animation Software, bersifat komersial dan diproduksi oleh Side Effect Software.
  • Power Animator, merupakan generasi pendahulu dari Maya untuk membuat animasi. Bersifat komersial dan diproduksi oleh Alias Systems Corporation.
  1. Graphic 3D
Aplikasi grafik 3 dimensi (3D) adalah perangkat lunak yang digunakan untuk membuat, mengedit, dan memanipulasi informasi dalam bentuk gambar 3 dimensi. Berbeda dengan format gambar atau image secara umum adalah dalam bentuk 2 dimensi. Gambar 3 dimensi merupakan representasi gambar dalam geometri 3 dimensi. Beberapa contoh perangkat lunak grafik 3D adalah sebagai berikut:
  • 3D Studio Max, bersifat komersial dan diproduksi oleh Autodesk Media & Entertainment.
  • Silo 3D Modelling, bersifat komersial dan diproduksi oleh Nevercenter Ltd. Co.
  • Maya, bersifat komersial dan diproduksi oleh Alias Systems Corp

 3. Model View Controler


Model-View-Controller atau MVC adalah sebuah metode untuk membuat sebuah aplikasi dengan memisahkan data (Model) dari tampilan (View) dan cara bagaimana memprosesnya (Controller). Dalam implementasinya kebanyakan framework dalam aplikasi website adalah berbasis arsitektur MVC.[1] MVC memisahkan pengembangan aplikasi berdasarkan komponen utama yang membangun sebuah aplikasi seperti manipulasi data, antarmuka pengguna, dan bagian yang menjadi kontrol dalam sebuah aplikasi web.[2]

Sejarah MVC

Model View Controller pertama sekali dipublikasikan oleh peneliti XEROX PARC yang bekerja dalam pembuatan bahasa pemrograman Smalltalk sekitar tahun 1970-1980.

Bagian MVC

  1. Model, Model mewakili struktur data. Biasanya model berisi fungsi-fungsi yang membantu seseorang dalam pengelolaan basis data seperti memasukkan data ke basis data, pembaruan data dan lain-lain.
  2. Viewers, Viewers adalah bagian yang mengatur tampilan ke pengguna. Bisa di katakan berupa halaman web.
  3. Controller, Controller merupakan bagian yang menjembatani model dan view. Controller berisi perintah-perintah yang berfungsi untuk memproses suatu data dan mengirimkannya ke halaman web.[2]
Dengan menggunakan metode MVC maka aplikasi akan lebih mudah untuk dirawat dan dikembangkan. Untuk memahami metode pengembangan aplikasi menggunakan MVC diperlukan pengetahuan tentang pemrograman berorientasi objek (Object Oriented Programming).[2]

Jenis-Jenis MVC

  • Server Side MVC, Server Side MVC biasa terjadi pada aplikasi web tradisional, yang tidak melibatkan client side seperti Javascript, Java applet, Flash, dan lain-lain. Server Side MVC menyerahkan keseluruhan proses bisnis pada server, aplikasi pada sisi pengguna hanya dapat menerima. MVC jenis ini kadang-kadang disebut juga dengan nama Thin Client.[2]
  • Mixed Client Side and Server Side MVC, Pada Mixed Client Side and Server Side MVC 1 client tidak menggunakan model sebagai jembatan untuk melakukan komunikasi pada server, dibandingkan dengan Server Side MVC, arsitektur ini memiliki tingkat kompleksitas yang lebih tinggi karena lebih banyak komponen yang terlibat. Untuk selanjutnya arsitektur ini disebut, dengan Mixed MVC 1. Pada Mixed Client Side and Server Side MVC 2, client menggunakan model sebagai jembatan untuk melakukan komunikasi pada server, dibandingkan dengan arsitektur MVC yang lain, arsitektur ini memiliki tingkat kompleksitas yang paling tinggi karena lebih banyak komponen yang terlibat, sehingga membutuhkan sumber daya yang lebih besar pula. Untuk selanjutnya arsitektur ini disebut dengan Mixed MVC 2.[2]
  • Rich Internet Application MVC, Application MVC Rich Internet Application
    • (RIA) disebut juga dengan nama Fat Client, merupakan aplikasi web yang memiliki kemampuan dan fungsi hampir seperti aplikasi desktop. RIA pada sisi client, memiliki mesin untuk mengambil data yang berada pada server, sehingga pada client terdapat bagian MVC sendiri dan hanya membutuhkan bagian model pada sisi server

    Comments

    Popular posts from this blog

    (PEMROGRAMAN DESKTOP) MATERI PEMROGRAMAN DESKTOP KELAS XI

    (PEMODELAN PERANGKAT LUNAK) MATERI PPL KELAS XI

    (PEMROGRAMAN WEB) MATERI PEMROGRAMAN WEB KELAS X