Home > oop > Class-based vs Prototype-based OO Languages

Class-based vs Prototype-based OO Languages

Sekian banyak bahasa pemrograman berorientasi -objek bisa dikelompokkan dalam dua kategori besar: class-based dan prototype-based. Pada class-based OO language, kita perlu mendefinisikan class sebelum melakukan instansiasi object. Sedangkan pada prototype-based, kita melakukan cloning (copy operation) terhadap prototype untuk mendapatkan object. Sebagian besar OO programming language yang populer masuk kategori class-based, seperti Java, Smalltalk, dan C++. Contoh yang prototype-based antara lain adalah JavaScript.

Sebenarnya masih ada beberapa OO programming language yang tidak mengambil pendekatan di atas. Tapi sangat jarang…

Categories: oop
  1. February 4, 2009 at 11:53 pm

    Hooo, jadi Javascript menggunakan konsep seperti ini ya,.

  2. February 5, 2009 at 5:33 pm

    Kalau PHP, Ruby masuk mana ya ?

  3. February 6, 2009 at 10:12 am

    @Dwinanto:
    Iya, ternyata begitu…🙂

    @Pak Waskita:
    Menurut saya masuk kategori class-based, karena di dua bahasa tersebut sebuah objek masih diinstansiasi dari kelas. Tapi Ruby memang agak spesial ya ? Penciptanya ingin menggabung kelebihan di beberapa bahasa yang dia sukai (Smalltalk, Perl, Lisp, …).
    CMIIW…🙂

  4. February 7, 2009 at 11:31 pm

    setuju, ruby bener-bener spesial😛

  5. February 12, 2009 at 5:59 am

    kalo menurut saya, Ruby dan PHP bukan termasuk prototype. Di Ruby dan PHP, kita gak bisa semudah itu menambahkan “method” ke dalam sebuah instance.

    tapi ada juga orang iseng yang berhasil bikin class “prototype”
    http://personal.schmalls.com/2007/10/29/return-to-prototype-based-programming-in-php/

  6. February 12, 2009 at 1:31 pm

    Petra, thanks untuk sharing-nya. Saya sendiri bukan pemrogram… hanya pengajar…🙂

  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: