Java

Sebagai mahasiswa Teknik Informatika, tentu kita belajar banyak bahasa pemrograman, mulai dari Pascal, C, C++, PHP, Java, Delphy, Ruby dan banyak lagi, namun demikian, kita tidak harus menguasai semuanya, “yang terpenting adalah mengerti logika cara berpikirnya, untuk merepresentasikannya dalam bahasa pemrograman apapun tidaklah susah”, begitu kata dosen-dosen kita. Tapi menurut pendapat Saya, setidaknya kita menguasai satu bahasa pemrograman yang benar-benar pas sesuai minat dan bakat. Saya pribadi sudah banyak mempelajari berbagai bahasa pemrograman, tapi diantara bahasa yang banyak tersebut, Java adalah yang paling pas dengan saya.

 

Karena sudah terlanjur suka, akhirnya saya kepoin si Java, berikut beberapa informasi menarik tentang Java yang berhasil saya peroleh dari berbagai sumber, kebanyakan dari buku Esensi-esensi Bahasa Pemrograman JAVA karya Pak Bambang Hariyanto.

Sejarah Singkat Java

Pada 1991, sekelompok insinyur Sun dipimpin oleh Patrick Naughton dan James Gosling ingin merancang bahasa komputer untuk perangkat konsumer seperti cable TV Box. Dikarenakan perangkat tersebut tidak memiliki banyak memori, bahasa harus berukuran kecil dan mengandung kode yang kokoh. Juga karena manufaktur-manufaktur berbeda memilih processor yang berbeda pula, maka bahasa harus bebas dari manufaktur manapun. Proyek diberi nama kode ”Green”.

Patrick Naughton, Salah satu penemu Java

Kebutuhan untuk fleksibilitas kecil, kokoh dan kode yang netral terhadap platform mengantar tim mempelajari implementasi Pascal yang pernah dicoba Niklaus Wirth, pencipta bahasa Pascal telah merancang bahasa portabel yang menghasilkan intermediate code untuk mesin hipotesis. Mesin ini sering disebut dengan mesin maya (virtual machine). Kode ini kemudian dapat digunakan di sembarang mesin yang memiliki interpreter. Proyek Green menggunakan mesin maya untuk mengatasi isu utama tentang netral terhadap arsitektur mesin.

Duke, maskot pertama Java

Karena orang–orang di proyek Green berbasis C++ dan bukan Pascal maka kebanyakan sintaks diambil dari C++, serta mengadopsi orientasi objek dan bukan prosedural. Mulanya bahasa yang diciptakan diberi nama ”Oak” oleh James Gosling yang mendapat inspirasi dari sebuah pohon yang berada pada seberang kantornya, namun dikarenakan nama Oak sendiri merupakan nama bahasa pemrograman yang telah ada sebelumnya, kemudian SUN menggantinya dengan JAVA. Nama JAVA sendiri terinspirasi pada saat mereka sedang menikmati secangkir kopi di sebuah kedai kopi yang kemudian dengan tidak sengaja salah satu dari mereka menyebutkan kata JAVA yang mengandung arti asal biji kopi. Akhirnya mereka sepakat untuk memberikan nama bahasa pemrograman tersebut dengan nama Java.

Fitur Penting Bahasa Java

1. Bahasa Sederhana

Java dirancang agar mudah dipelajari dan digunakan secara efektif. Java tidak menyediakan fitur-fitur rumit bahasa pemrograman level tinggi, serta banyak pekerjaan pemrogram yang mulanya harus dilakukan secara manual, sekarang digantikan dikerjakan oleh Java secara otomatis. Contohnya dealokasi memori.

2. Object Oriented

Java adalah OOP, OOP adalah cara ampuh dalam pengorganisasian dan pengembangan perangkat lunak. Pada OOP, program komputer sebagai kelompok objek yang saling berinteraksi. Secara ringkas OOP adalah mengorganisasikan program sebagai kumpulan komponen, disebut objek. Objek-objek ini ada secara independen, mempunyai aturan berkomunikasidengan objek lain dan untuk memerintahkan objek lain melakukan sesuatu.

3. Bahasa Statically Typed

Seluruh objek di program harus dideklarasikan dulu di awal. Pemaksaan ini dilakukan agar kompilator dapat mengetahui jika ada yang bertentangan saat dikompilasi. Pencegahan sedini mungkin ini diharapkan dapat menghasilkan program yang bersih.

4. Bahasa Dikompilasi

Sebelum kita menjalankan program di bahasa Java, program dikompilasi menggunakan Java compiler. Kompilasi menghasilkan file “bytecode” yang serupa fungsinya dengan file pada kode mesin. Program “bytecode” yang dihasilkan dapat dieksekusi di sembarang Java Interpreter. Java Interpreter membaca file “bytecode” dan menerjemahkan perintah “bytecode” menjadi perintah-perintah bahasa mesin yang dapat dieksekusi mesin.

5. Bahasa yang Aman

Java menggunakan model pengamanan tiga lapis (three layer security model) untuk melindungi sistem dari untrusted Java code.

  • Pertama, bytecode verifier membaca bytecode sebelum dijalankan dan menjamin bytecode memenuhi aturan-aturan dasar bahasa java.
  • Kedua, class loader menangani pemuatan kelas java ke runtime interpreter.
  • Ketiga, manajer keamanan menangani keamanan tingkat aplikasi dengan mengendalikan apakah program berhak mengakses sumber daya.

Selain itu Java juga menyediakan beberapa teknik pengamanan

6. Bahasa Independen Terhadap Platform

Platform independence adalah kemampuan program bekerja di sistem operasi manapun, bahasa Java merupakan bahasa yang sempurna tidak bergantung platform.

Untuk lebih jelas mengenai Bahasa yang independen, bisa dilihat di video berikut ini.

[youtube=http://www.youtube.com/watch?v=RnqAXuLZlaE]

 

7. Bahasa Multithreading

Thread adalah untuk menyatakan program komputer melakukan lebih dari satu tugas di satu waktu yang sama. Java menyediakan kakas untuk menulis program multithread.

8. Bahasa yang Didukung Garbage Collector

Program Java melakukan garbage collection yang berarti program tidak perlu menghapus sendiri objek-objek yang tidak digunakan lagi. Fasilitas ini mengurangi beban pengelolaan memori oleh pemrogram dan mengeliminasi sumber kesalahan terbesar yang terdapat di bahasa yang memungkinkan alokasi dinamis.

9. Bahasa yang Tegar

Java interpreter memeriksa semua akses sistem yang dilakukan, sehingga program java tidak dapat crash terhadap sistem.

Java mempunyai mekanisme exception handling yang ampuh. Exception handling menyediakan cara untuk memisahkan antara bagian penanganan kesalahan dengan bagian kode normal sehingga menuntuk ke arah kode yang lebih bersih dan menjadikan aplikasi lebih tegar.

10. Bahasa yang Mampu Diperluas

Program Java mendukung native method, yaitu fungsi ditulis di bahasa lain, biasanya C/C++. Dukungan native method memungkinkan kita menulis fungsi yang dapat dieksekusi lebih cepat dibandingkan fungsi ekivalen di Java. Native method secara dinamis akan di-link ke program Java, yaitu diasosiasikan dengan program saat jalan.

Nah, bagaimana sudah tahu banyak tentang Java kan? walaupun bahasa Java memiliki banyak fitur modern yang ampuh untuk pengelolaan sistem yang kompleks, perlu diingat bahwa Java tetap hanya bahasa pemrograman, sebatas alat. Seluruh alat membutuhkan orang yang memakai, yaitu kita.

You may also like...

Leave a Reply

Your email address will not be published. Required fields are marked *