ABSTRAKSI DAN GENERALISASI



ABSTRAKSI DAN GENERALISASI


Abstraksi adalah deskripsi dari suatu masalah pada level generalisasi tertentu, sehingga memungkinkan kita untuk berkonsentrasi pada aspek kunci dari masalah tersebut tanpa memperhatikan hal-hal detail.
Abstraksi dapat membantu kita untuk fokus pada hal-hal penting dari suatu masalah
               
Abstraksi melibatkan pengindentifikasian kelas-kelas (classes) dari suatu object, sehingga memungkinkan kita menggroupkannya. Dengan cara tersebut kita bekerja dengan sedikit parameter/variabel dari kelas-kelas yang ditinjau.
Contoh :
• Monitoring          : berbagai macam sistem monitoring
• Ban sepeda        : sepeda balap, sepeda gunung
• Mobil                    : sedan, jeep, wagon, truk, dll



TINGKATAN ABSTRAKSI

·         Abstraksi Fungsional
      Pengelompokan kasual
      Abstraksi data
      Abstraksi cluster
      Abstraksi sistem

GENERALISASI
 
Generalisasi adalah perluasan suatu aplikasi yang meliputi suatu daerah object yang lebih besar dengan jenis yang berbeda atau jenis yang sama.
BINDING

Attribute : nilai internal atau data terkait pada suatu objek yang menunjukkan ciri-ciri atau sifat-sifat dari obyek serta penggambaran keadaan (state) obyek
Contoh :
Nama objek          : mobil

Attribute :
Merek      : toyota
Silinder    : 2000cc
Warna      : merah
Status      : baru / jalan
Tahun      : 2006

Binding : Pengaturan nilai attribute
Descriptor : informasi attribute yang diisikan dalam tempat penyimpanan untuk setiap entitas.
Binding merupakan pusat dari konsep definisi semantic bahasa pemrograman

Bahasa pemrograman berbeda satu dengan yang lainnya karena:


      Perbedaan jumlah entitas yang dapat ditangani
      Jumlah attribute yang dapat ditempelkan ke entitas yang dapat ditangani
      Waktu kemunculan binding (binding time)
      Stabilitas binding (binding yang sudah terbentuk bersifat tetap atau dapat dimodifikasi)

JENIS BINDING                                                         
                                                            
Ada dua tipe / jenis binding bila dilihat dari control yang digunakan untuk binding data, yaitu : 
1.     Simple Binding
2.     Complex Binding


Kalau dilihat dari sisi waktu pengikatan data (binding) bisa dibedakan lagi ke dalam dua jenis, yaitu :
1.     Early Binding
2.     Late Binding


Contoh Binding

  • Language definition time binding
  • Language implementation time binding
  • Compile-time (translation-time) binding
  • Execution-time (Run-time) binding


ENKAPSULASI

       Pengkapsulan berarti mengemas beberapa item bersama-sama menjadi satu unit yang tertutup dalam rangka menyembunyikan struktur internal suatu obyek dari lingkungan/dunia luar
       Pengkapsulasan sering dianggap sebagai “penyembunyian informasi”
       Setiap kelas hanya menampakkan interface yang diperlukan untuk berkomunikasi dengan dunia luar melalui message dan menyembunyikan (encapsulating)/implementasi aktual di dalam kelas.
       Kita hanya membutuhkan pemahaman tentang interface (methode), tidak perlu paham tentang internalnya (implementation).
       Pengapsulan merupakan kemamupan sebuah obyek kelas untuk membatasi akses client ke reprensentasi internal obyek (data dan fungsi)

PRINSIP GENERALISASI

Prisip generalisasi adalah suatu bentuk umum dari suatu kesatuan yang khusus.


Contoh :  lamda p.B’

Dimana lamda menyatakan suatu abstrak yang menandakan generalisasi B jika p dipanggil oleh suatu parameter B’.
Prinsip generalisasi tergantung pada prinsip analogi. Generalisasi dan abstrak sering digunakan bersama-sama. Abstrak digeneralisasi dengan parameterisasi untuk mendapatkan manfaat yang lebih besar. Di dalam parameterisasi satu atau lebih bagian dari suatu kesatuan dapat digantikan dengan suatu nama baru. Nama yang digunakan sebagai suatu parameter ketika abstrak yang telah diparameterkan dilibatkan dengan suatu binding parameter disebut argumentasi.

Prinsip Analogi


Prinsip analogi ada ketika suatu penyesuaian pada pola di antara 2 object yang berbeda. Dimana object dapat digantikan dengan object tunggal yang parameterized untuk melakukan rekonstruksi yang menyangkut object yang asli



Prinsip Parameterisasi


Prinsip Parameterisasi adalah suatu parameter yang secara umum mungkin berasal dari beberapa domain.
Istilah parameter formal dan parameter nyata sering disebut dengan argumentasi


SUBSTITUSI 
   Kegunaan abstraksi dan generalisasi tergantung pada substitusi.

Prinsip korenpondensi

Prinsip korespondensi adalah suatu formalitas yang menyangkut aspek /pengarahan prinsip abstrak yang mengandung substitusi dan definisi saling terkait.

Struktur Block

1.     Block merupakan suatu bagian dari scope-defining bahasa pemrograman.
Artinya, Block merupakan suatu definisi wilayah bagian bahasa pemrograman.
2.       Block merupakan urutan dari statemen yang executable yang diperlakukan sebagai suatu unit

Block disebut subprogram atau routine di kebanyakan bahasa pemrograman



Aturan Cakupan

       Dynamic Scope  : Suatu subprogram yang didefinisikan di satu tempat dalam suatu program dan dapat dipanggil dari lingkungan yang berbeda (lingkungan dimana subprogram tersebut tidak didefinisikan)

       Static Scope : Subprogram dipanggil dari lingkungan tempat subprogram tersebut didefinisikan
LINGKUNGAN

Lingkungan lokal suatu subprogram Q terdiri atas bermacam-macam identifier yang dideklarasikan di bagian atas dari subprogram Q. Nama variabel, nama parameter formal, dan nama subprogram diperhatikan disini. Nama subprogram di sini merupakan nama subprogram yang didefinisikan secara lokal di dalam suprogram Q (nested subprogram).

Komentar