Thursday, May 22, 2014

Pointer pada Bahasa Java

Bahasa pemrograman Java merupakan bahasa turunan dari C, atau bahasa turunan dari C++. Well, Java dan C++, mereka sama-sama berorientasikan objek dan mendukung fitur kelas (classs), dan memiliki syntax yang hampir similiar secara konsep.

Sejak awal diciptakannya, bahasa pemrograman C memang banyak menginspirasi berbagai bahasa pemrograman lainnya, contohnya PHP, Objective-C, Perl, Phyton, Java, dan banyak lainnya.
Java ialah bahasa pemrograman yang juga ter-influenced bahasa C, mempunyai banyak kesamaan. Tapi Java tidak sama dengan C. Dan bisa dijelaskan lagi, bahwa Java itu bukan C ataupun C++.
Java didesain sebagai simplifikasi dari bahasa C/C++ dan sekaligus memperbaiki fitur-fitur keamanan yang kurang dipendahulunya sehingga banyak fitur - fitur bahasa C/C++ yang dihilangkan. Semua itu bertujuan untuk meng-“eliminate redundancy”, alias meminimalisir proses yang berulang-ulang.

Di dalam perkembangannya, bahasa C berubah menjadi kumpulan proses yang, banyak, namun intinya sama, menyediakan terlalu banyak cara untuk melakukan hal yang sama, dimana bahkan dalam beberapa kasus C tidak menyediakan fitur yang dibutuhkan.
Salah satu hal yang menjadi ciri khas Java ialah tidak adanya “pointer”. Sekali lagi java, “There’s no pointer in Java”. Banyak yang bilang, bahkan beberapa teman saya juga bilang, “Ada kok.” Tapi mari kita bahas saja disini apa yang orang - orang bilang tentang pointer di Java.

Kenapa Tidak Ada Pointer di Java ?

Banyak penelitian berkesimpulan kalau pointer ialah salah satu fitur utama yang memungkinkan programmer menginjeksikan “bugs” ke dalam program mereka. Di Java, struktur data sudah dilenyapkan (hal ini akan dibahas lain waktu), dan array dan string adalah objek. Maka kebutuhan untuk memakai pointer bagi struktur tersebut hilang. Ditambah lagi Java tidak punya pointer data types. Algoritma-algoritma yang membutuhkan array, struktur, dan pointer di dalam C bisa lebih mudah dan cepat diselesaikan dengan deklarasi array dan objek dari suatu array. Lalu, apakah kita nggak bisa membuat struktur data seperti linked list,

stack dsb pada Java? Tentu saja tidak.
Algoritma di bawah ini ialah contoh linked-list di dalam bahasa C, dan memakai pointer tentunya.


Dengan adanya algoritma disamping ini, Kita bisa mengamati pointer di Java hanyalah permainan dari objek-objek, object of object
Istilah pointer di Java tidak ada, namun sengaja saya tulis “mengalokasikan pointer” pada algoritma di atas. Pointer di dalam Java telah diganti dengan istilah references. Bahasa Java hampir semuanya adalah references, variable references, object references dan lain-lain.

No comments:

Post a Comment