Jumat, 03 Maret 2017

Mengenal Java Secara Singkat

Assalamu'alaikum Wr. Wb.

Alhamdulillah, kali ini saya masih bisa untuk membuat postingan sederhana di blog sederhana ini. kali ini, saya akan membahas tentang apa itu Bahasa Pemrograman Java, sejarahnya, kekurangan dan kelebihannya, dan lain-lain masih seputar bahasa pemrograman tersebut. langsung saja, check it out!!!
 
Java merupakan salah satu jenis bahasa pemrograman yang paling banyak dan umum digunakan oleh para pengembang untuk membuat dan mendevelop suatu aplikasi di dalam berbagai macam platform, dari macam-macam bahasa pemrograman yang ada. Java merupakan bahasa pemrograman tingkat tinggi yang memiliki karakteristik simple, object-oriented, distributed, interpreted, aman, dan memiliki performance yang tinggi. Bahasa pemrograman Java merupakan compiler sekaligus interpreter, dimana sebagai compiler, program yang telah dibuat akan diubah menjadi java bytecodes dan kemudian sebagai interpreter java bytecodes tersebut dijalankan pada komputer.
 
Java platform memiliki dua komponen yaitu Java Virtual Machine yang berfungsi sebagai jembatan antara bytecode dengan hardware dan Java Application Programming Interface (Java API) yang merupakan komponen -komponen dan kelas java yang telah jadi dan memiliki kemampuan untuk menangani objek, string, angka, dan sebagainya.
 
Sejarah singkat terciptanya bahasa pemrograman ini ialah pada 1991, sekelompok insinyur Sun merancang bahasa komputer untuk perangkat konsumer tetapi bahasa pemrogramannya harus berukuran kecil dan bahasa harus bebas (netral) dari manufaktur manapun. Proyek ini diberi nama kode ”Green”.
Kebutuhan inilah yang mengantar tim mempelajari implementasi Pascal yang pernah dicoba. Pencipta bahasa Pascal telah merancang bahasa portabel yang menghasilkan intermediate code untuk mesin yang 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.
 
Tetapi, karena orang–orang di proyek Green berbasis C++ dan bukan Pascal maka kebanyakan sintaks diambil dari C++, serta mengadopsi orientasi objek dan bukan prosedural. Pada mulanya bahasa yang dibuat diberi nama ”Oak” oleh James Gosling yang mendapat inspirasi dari sebuah pohon yang berada di seberang kantornya, namun nama Oak sendiri merupakan nama bahasa pemrograman yang sudah ada, 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 bijih kopi. Akhirnya mereka pun sepakat untuk memberi nama bahasa pemrograman tersebut dengan nama Java.
 
Adapun kelebihan dari bahasa pemrograman Java ini, ialah :
 
1. Sederhana dan mudah dikembangkan
Bahasa pemrograman Java menggunakan sintaks mirip dengan C++ namun sintaks   pada   Java   telah   banyak   diperbaiki seperti  menghilangkan penggunaan   pointer   yang   rumit   dan   multiple   inheritance. Setiap aplikasi/program yang dibuat dengan menggunakan Java memiliki kemampuan yang sangat baik untuk dilakukan pengembangan lebih lanjut. Hal ini sangat membantu para programmer dan developer untuk lebih baik lagi dalam mengembangkan aplikasi yang berbasis Java.
 
2. Bersifat Multiplatform
Kelebihan lainnya dari bahasa pemrograman java yang banyak diminati adalah karena Java adalah salah satu bahasa pemrograman yang sifatnya multi platform, alias universal dan bisa digunakan dalam platform apapun. Mulai dari komputer desktop yang menggunakan Windows, Linux dan sistem operasi lain, hingga smartphone berbasis Android dan Windows Phone mampu untuk menjalankan aplikasi dan program yang dibuat dengan menggunakan bahasa pemrograman Java.
 
3. Berorientasi Objek (Object Oriented)
Bahasa Pemrograman Java menggunakan pemrograman berorientasi objek yang membuat program dapat dibuat secara modular dan dapat dipergunakan kembali. Pemrograman berorientasi objek memodelkan dunia nyata kedalam objek dan melakukan interaksi antar objek-objek tersebut.
 
4. Aman
Dikarenakan bahasa pemrograman ini untuk aplikasi internet dan terdistribusi, Java memiliki beberapa mekanisme keamanan untuk menjaga aplikasi tidak digunakan  untuk  merusak  sistem  komputer  yang  menjalankan  aplikasi tersebut.
 
5. Dinamis
Sifat dinamis dari bahasa pemrograman Java ini sangat erat kaitannya dengan kemampuan dari bahasa pemrograman Java yang sangat mudah untuk dikembangkan. Struktur kodenya bisa dengan mudah dimodifikasi dan dikembangkan, sesuai dengan kebutuhan oleh pengguna. Sehingga hal ini membuat Java menjadi bahasa pemrograman yang sangat dinamis dan sangat bermanfaat bagi para pengembang aplikasi yang ingin terus mengembangkan aplikasinya hingga bermanfaat bagi para penggunanya.

Namun dibalik kelebihan-kelebihan yang telah dipaparkan di atas, Java juga memiliki beberapa kekurangan, seperti :
 
1. Penggunaan memori cukup tinggi
Bahasa pemrograman Java memang menawarkan banyak sekali fitur yang luar biasa, akan tetapi sayangnya, semua kelebihan tersebut harus dibalas dengan kebutuhan memori yang cukup besar. Hal ini menyebabkan beberapa aplikasi Java membutuhkan resource memori yang cukup besar untuk dapat berjalan dengan baik. Begitu pula ketika seorang developer akan mengembangkan aplikasi Java, developer juga membutuhkan memori yang tinggi dalam mengembangkan aplikasi ini. Tentunya komputer yang di pakai harus memiliki kapasitas RAM cukup besar untuk melancarkan develop agar berkinerja lebih optimal.
 
2. Tidak mudah dipelajari oleh pemula
Bagi pemula dalam pembelajaran bahasa pemrograman,mungkin akan sedikit kesulitan dalam mempelajari bahasa java, karena sintaksis bahasa yang rumit dan mempunyai konsep OOP(Object Oriented Programming) tentu membawa kesulitan tersendiri, untuk mengerti keseluruhan bahasa java membutuhkan waktu yang tidak sedikit. Berbeda dengan halnya bahasa prosedural contohnya bahasa C yang mudah dipelajari untuk pemula.

3. Mudah dibajak
Mudah dibajak atau bisa disebut dengan istilah dekompilasi. Java merupakan salah satu bahasa pemrograman yang mudah mengalami dekompilasi, karena souce code dan juga script yang dibuat dengan bahasa pemrograman Java dapat dengan mudah diambil dan juga dibajak oleh orang lain, sehingga memunculkan banyak hack dan juga pembajakanan dari aplikasi yang menggunakan bahasa pemrograman Java tersebut.

Bahasa Pemrograman Java juga memiliki beberapa fitur andalannya, seperti :
 
1. Java Virtual Machine (JVM)
 JVM adalah sebuah mesin imajiner (maya) yang menyerupai aplikasi pada sebuah  mesin  nyata. JVM menyediakan spesifikasi hardware  dan  platform dimana  kompilasi  kode  Java  terjadi.  Spesifikasi  inilah  yang  membuat  aplikasi berbasis Java menjadi bebas dari platform manapun karena proses kompilasi diselesaikan oleh JVM. Aplikasi program Java ini dikompilasi  menghasilkan  satu  berkas  bytecode  berekstensi  .class  atau  lebih. Bytecode adalah serangkaian instruksi serupa instruksi kode mesin. Perbedaannya adalah kode mesin harus dijalankan pada sistem komputer dimana kompilasi ditujukan,  sementara  bytecode  berjalan  pada  java  interpreter  yang  tersedia  di semua platform sistem komputer dan sistem operasi.
 
2. Garbage Collection
Banyak bahasa pemrogaman lain yang mengijinkan seorang programmer mengalokasikan memori pada saat dijalankan. Namun, setelah menggunakan alokasi memori tersebut, harus terdapat cara untuk menempatkan kembali blok memori tersebut supaya program lain dapat menggunakannya. 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 programmer dan mengurangi atau mengeliminasi sumber kesalahan terbesar yang terdapat pada bahasa yang memungkinkan alokasi dinamis.

3. Code Security
Code Security terimplementasi pada Java melalui penggunaan Java Runtime Environment (JRE). Java menggunakan model pengamanan 3 lapis untuk melindungi sistem dari untrusted Java Code. Java  memiliki  beberapa  pengaman  terhadap  applet.  Untuk  mencegah program bertindak mengganggu media penyimpanan, maka applet tidak diperbolehkan melakukan open, read ataupun write terhadap berkas secara sembarangan. Karena Java applet  dapat  membuka jendela browser  yang baru, maka  jendela  mempunyai  logo  Java dan  teks identifikasi  terhadap jendela yang dibuka. Hal ini mencegah jendela pop-up menipu sebagai permintaan keterangan username dan password.