Tuesday, September 17, 2013

DIFFERENT BETWEEN ABSTRACTION AND DECOMPOSITION IN OOP

    Assalamualaikum wr. wb. Materi kali ini menyinggung masalah OOP yang merupakan singkatan dari Object Oriented Programming. Nah pada OOP ini sendiri kita mengenal 2 istilah yaitu Abstraction dan Decomposition. Berikut telah saya jabarkan pengertian dan sedikit penjelasan dari masing-masing istilah yang saya temukan dari beberapa sumber : 

   Decomposition is a method that contained in the Object Oriented Programing (OOP) which have purpose to break a complex process into several parts so the process become some processes, so it’s can be easier to be understood, manipulated, and developed. Besides of that this methode support to many programmer to develope a program together because the programers can be work for each programs from a complex program. In the other side, decomposition paradigm also a strategy for organizing a program as a number of parts, and it usually implies a specific way to organize a program text. Usually the aim of using a decomposition paradigm is to optimize some metric related to program complexity, for example the modularity of the program or its maintainability. Most decomposition paradigms suggest breaking down a program into parts so as to minimize the static dependencies among those parts, and to maximize the cohesiveness of each part. Some popular decomposition paradigms are the procedural, modules, abstract data type and object oriented ones. The concept of decomposition paradigm is entirely independent and different from that of model of computation, but the two are often confused, most often in the cases of the functional model of computation being confused with procedural decomposition, and of the actor model of computation being confused with object oriented decomposition.
   Abstraction is the ability of a program to bypass the information aspect which being proccessed by it, that is the ability to focus on the core. Abstraction is a method where a complex program is translated into a simpler program that so that program become easier to understood. From the other reference said that Abstraction in Object Oriented Programming helps to hide the irrelevant details of an object. Abstraction is separating the functions and properties that logically can be separated to a separate entity which the main type depends on. This kind of Abstraction helps in separating the members that change frequently. Abstraction is one of the key principles of the OOAD(Object oriented analysis and Design). Applying Abstraction during the design and domain modeling, helps a lot in design the a system which is flexible and maintainable. Example from this methode is a television that have many kind of subsystems like antenna and channel systems, playback system, staining system, on-off system and so forth. All object (sub-systems) are contained within the television system are interact with each other. Interaction here in the form of “message” that can be called as a parameter.  
Mohon maaf sebelumnya jika penjelasan diatas menggunakan bahasa inggris yang saya kira banyak kesalahan dalam penulisannya ^.^V. Sedikit mereview pada intinya Abstraction dan Decomposition merupakan cara untuk menyederhanakan sebuah program yang kompleks menjadi program yang lebih sederhana. Abstraction membagi program dengan membuat sub-sub program namun masih dalam satu kesatuan program atau dengan kata lain fungsi-fungsi suatu program kompleks dikelompokkan menjadi bagian-bagian tertentu. Sedangkan pada Decomposition program yang kompleks tersebut dibagi-bagi menjadi program yang kecil-kecil yang kemudian digabungkan. contoh abstraction misalnya Sebuah mobil dimana mobil tersebut memiliki mesin, body, ban, dll. yang menjalankan fungsinya masing2. Nah bedanya dengan dekomposisi kita melihat sebuah mobil dan membaginya menjadi bagian depan, tengah dan belakang. Kurang lebih seperti itulah.

Mohon maaf sebelumnya jika dalam penulisan materi ini ada yang sedikit ambigu atau mungkin salah dalam pengartian karena saya juga manusia biasa yang bisa salah. Wassalam

2 comments:

  1. kalo untuk contoh dekomposisi dalam Oject Oriented Programming (OOP) itu seperti apa? Bisa di jelaskan? terimkasih :)

    ReplyDelete
  2. assamalekum ko gand me dal le..

    ReplyDelete