Skip to main content

Beberapa Isu Dalam Desain Bahasa-bahasa OOP (Object Oriented Programming)

Terdapat beberapa permasalahan / konsep yang sering dibicarakan terkait rancangan dari bahasa-bahasa pemrograman yang menyediakan fitur inheritance dan dynamic binding (dalam OOP), yaitu:
  1. Exclusivity of objects. Apakah setiap entitas diperlakukan object atau gabungan dari imperative-style dan object?
  2. Apakah Subclass merupakan subtype? Apakah turunan (subclass) dari suatu class diiperlakukan sebagai subtype dari class tersebut? Jika subclass diperlakukan sebagai subtype maka variabel dari suatu class dapat digantikan oleh variabel lain dari parent classnya tanpa menyebabkan type error dan perubahan behavior program.
  3. Single and Multiple Inheritance. Apakah suatu class dapat mewarisi lebih dari satu class atau hanya diperbolehkan mewarisi satu class?
  4. Allocation and Deallocation of objects. Bagaimana object dialokasikan dan didealokasikan? Apakah dialokasikan secara stack dynamic atau heap dynamic? Apaka dealokasi dilakukan secara implicit atau explicit?
  5. Dynamic and Static Binding. Apakah binding antara message dengan method dilakukan secara dynamic atau static?
  6. Nested class. Apakah diperbolehkan suatu class didefinsikan dalam suatu class lainnya? Nesting class merupakan class yang didalamnya mendefinisikan nested class. Jika diperbolehkan terdapat nested class, member nested class mana saja yang dapat diakses oleh nesting class? Begitu juga member nesting class, member mana saja yang dapat diakses oleh nested class?
  7. Initialization of Objects. Apakah suatu object harus diinisialisasi secara manual oleh programmer, atau dapat dilakukan melaui suatu mekanisme implicit?

Comments

Popular posts from this blog

Pengertian Binding dalam Bahasa Pemrograman dan Kapan Terjadinya

Binding dimaksudkan sebagai pengikatan (association) antara suatu entity dengan atributnya, misalnya binding/pengikatan antara suatu variable dengan tipe datanya atau dengan nilainya, atau dapat juga antara suatu operasi dengan simbol, misalnya simbol + dikenali sebagai operasi penjumlahan atau simbol ^ dikenali sebagai operasi pangkat, dll.  Peristiwa binding dan kapan terjadinya binding (biasanya disebut dengan binding time ) berperan penting dalam membicarakan semantics suatu bahasa pemrograman. Beberapa kemungkinan binding time adalah:

Contoh proses normalisasi relasi dari UNF – 1NF – 2NF – dan 3NF

Dalam posting tulisan tentang: “Tujuan dan Manfaat Normalisasi dalam Perancangan Database” , kita sudah mempelajari tentang: “Apa itu normalisasi” dan “Mengapa kita perlu melakukan normalisasi”. Kedua pertanyaan itu sudah terjawab dalam tulisan tersebut.  Kemudian dalam posting tulisan tentang: “Konsep Ketergantungan Fungsional, Normalisasi, dan Identifikasi Primary Key dalam Perancangan Sistem Database” , kita sudah mempelajari suatu konsep penting yang digunakan untuk melakukan normalisasi, yaitu konsep ketergantungan fungsional yang terdiri dari ketergantungan penuh, ketergantungan parsial atau sebagian, dan ketergantungan transitif. Proses normalisasi pertama-tama dilakukan dengan mengidentifikasi adanya ketergantungan-ketergantungan tersebut dalam relasi-relasi dan kemudian menghilangkannya. Cara melakukan normalisasi, mengidentifikasi berbagai macam ketergantungan, dan menghilangkan ketergantungan pada relasi-relasi bisa dipelajari ulang dalam postingan tulisan d...

Proses dalam Data Mining - Seri Data Mining for Business Intelligence (5)

Proses dalam Data Mining Untuk melaksanakan project-project dalam Data Mining (DM) secara sistematis, suatu proses yang umum berlaku biasanya diterapkan. Berdasarkan ‘best practice’, para praktisi dan peneliti DM mengusulkan beberapa proses (workflow atau pendekatan step-by-step yang sederhana) untuk memperbesar peluang keberhasilan dalam melaksanakan project-project DM. Usaha-usaha itu akhirnya menghasilkan beberapa proses yang dijadikan sebagai standard, beberapa diantaranya (yang paling popular) dibahas dalam bagian ini. [ Baca juga: Metode-metode dalam Data Mining ]