Tentang java

Pengertian

Java adalah bahasa pemrograman yang dirancang untuk dapat berjalan pada berbagai platform, termasuk sistem operasi Windows, Mac OS, dan Linux. Bahasa pemrograman ini terkenal karena keamanannya, kemampuan portabilitasnya, dan dukungan untuk pemrograman berorientasi objek. Dan sintaks bahasa pemrograman ini bisa dibilang mudah untuk dipahami dan diimplementasikan oleh developer. Java pada umumnya digunakan untuk pengembangan aplikasi desktop, aplikasi web, aplikasi mobile, dan perangkat lunak. Java juga memiliki library kelas yang lengkap, termasuk kelas-kelas untuk pemrosesan file, jaringan, dan GUI.

Sejarah

Java dikembangkan pertamakali oleh James Gosling, Patrick Naughton, dan Mike Sheridan di sun Microsystem pada tahun 1991 sebagai proyek yang dikenal sebagai "Green Project". Tujuan proyek ini adalah menciprakan bahasa pemrograman yang dapat digunakan pada berbagai perangkat dan platform dengan berbagai jenis arsitektur, tanpa harus menulis ulang kode. 

Sebelum diberi nama "Java" proyek ini diberi nama oleh tim Green Project yaitu "Oak", Oak sendiri terinspirasi dari pohon oak yang tumbuh didepan jendela ruangan kerja James Gosling. Nama oak ini dipakai untuk versi release java karena sebuah perangkat lunak lain sudah terdaftar dengan merek dagang tersebut, sehingga nama penggantinya adalah "Java". Nama ini diambil dari kopi murni yang digiling langsung dari biji (kopi tubruk) favorite Gosling. Konon kopi ini berasal dari pulau jawa, maka dari itu Gosling memberi nama Java (karena kata "Jawa" bila dibahasa inggiriskan akan menjadi "Java").

Fungsi

- Mendukung Native Method

Dengan adanya dukungan ini, maka java memungkinkan programmer dapat menulis berbagai fungsi dengan cepat dibandingkan yang lain.

- Bahasa yang digunakan

Bahasa yang digunakan cukup sederhana, dikarenakan menggunakan sintaks yang bisa dibilang mirip dengan C++, maka hal tersebut membuat java lebih sederhana dibandingkan bahasa lainnya.

- Hanya fokus objek

Bahasa pemrograman java berfokus pada objek. Artinya, program komputer dapat saling melakukan komunikasi dalam satu kelompok objek.

- keamanan cukup ketat

Java memiliki pengaman tiga lapis. Hal ini dikarenakan untuk menjaga sistem dari orang-orang yang tidak bertanggung jawab.

- Bisa dipakai pada OS apapun

Java dapat digunakan pada sistem operasi manapun. Hal ini dikarenakan bahasa java masuk ke dalam Platform Independence, sehingga saat dibuang sebuah file maka file tersebut dapat dijalankan dimana saja.

- Garbage collection

Java memiliki mekanisme garbage collection yang memungkinkan pengelolaan memori secara otomatis dan mencegah terjadinya memory leak.

- Web programming

Java juga sering digunakan dalam pengembangan web, terutama dengan framework java seperti Spring, Hibernate, dan Struts.

Komponen penting

- Java Development Kit (JDK)

JDK adalah kumpulan perangkat lunak yang diperlukan untuk pengembangan aplikasi java. JDK terdiri dari Java Runtime Enviroment (JRE) yang digunakan untuk menjalankan aplikasi java dan Java Development Kit (JDK) yang digunakan untuk mengembangkan aplikasi java.

- Java Virtual Machine (JVM)

JVM adalah komponen yang menjalankan kode sumber java dalam bentuk bytecode. JVM memungkinkan aplikasi java untuk dijalankan pada berbagai platform dan sistem operasi.

- Syntax

Syntax adalah aturan yang harus diikuti untuk menulis kode sumber java yang valid. Konsep dasar dalam bahasa pemrograman java, antara lain seperti variable, tipe data, operator, kondisi, perulangan, dan lain-lain.

- Clasess dan Objects

Konsep OOP (Object-Orientes Programming) merupakan konsep dasar dalam bahasa pemrogramman java. Dalam konsep ini, kelas (classes) dan objek (objects) merupakan komponen utama dalam pembuatan aplikasi.

- Libraries dan Frameworks 

Java memiliki banyak library dan framework yang memudahkan pengembangan aplikasi. Beberapa library populer seperti Apache commons, Google Guava, dan Jackson, sedangkan beberapa framework populer seperti Spring, Hibernate, dan Struts.

- Integrated Development Enviroment (IDE)

IDE adalah perangkat lunak yang digunakan untuk mengembangkan aplikasi java. Beberapa IDE populer untuk java seperti Eclipes, NetBeans, dan Intellij IDEA.

Cara kerja

  1. Kode sumber java ditulis mengguanakan bahasa java yang menggunakan sintaks yang tepat untuk membuat program yang valid.
  2. Kode sumber java dikompilasi menjadi bytcode oleh Java Compiler. Bytecode adalah format intruksi mesin yang bisa dijalankan oleh JVM.
  3. Bytecode yang dihasilkan dikirim ke JVM yang terdapat pada sistem operasi dimana aplikasi java dijalankan.
  4. JVM menerjemahkan bytecode ke bahasa mesin yang spesifik untuk menjadi sistem operasi dimana aplikasi dijalankan. Hal ini memungkinkan program java dijalankan di berbagai platform yang mendukung JVM.
  5. Selama eksekusi program java, JVM mengelola memori, memeriksa dan menjalankan instruksi bytecode, mengelola thread dan pengelolaan kesalahan serta debugging.
  6. Setelah aplikasi java yang selesai dijalankan, JVM akan membersihkan dan membebaskan memori yang digunakan.

Kelebihan dan kekurangan

- Kelebihan

  • Platform independent: Java dapat dijalankan di berbagai platform seperti Windows, Mac, Linux, dan lain-lain.
  • Mudah dipelajari: Java memiliki sintaks yang mudah dipahami dan dipelajari bagi pemula.
  • Memiliki garbage collector: Java memiliki fitur otomatis pengelolaan memori yang disebut garbage collector yang membantu mencegah terjadinya memory leaks.
  • Amaturnya: Java adalah bahasa pemrograma yang amaturnya dan telah digunakan untuk pengembangan aplikasi yang kompleks seperti aplikasi perbankan, sistem manajemen inventaris, dan sebagainya.
  • Kaya akan fitur: Java memiliki banyak fitur yang memungkinkan pengembang untuk membuat aplikasi yang kompleks dengan mudah seperti thread, input-output, jaringan, antarmuka pengguna, dan banyak lagi.

- Kekurangan

  • Kinerja: Kinerja aplikasi java lebih lambat dibandingkan dengan bahasa pemrograman lain seperti C dan C++.
  • Membutuhkan banyak sumber daya: Karena fitur-fiturnya yang kaya, aplikasi java cenderung membutuhkan lebih banyak sumber daya seperti memori dan CPU.
  • Memerlukan mesin virtual java: Agar aplikasi java dapat dijalankan di sistem, mesin virtual java harus terlebih dahulu terpasang di sistem tersebut.
  • Tidak cocok mengembangkan aplikasi mobile: Java tidak cocok untuk pengembangan aplikasi mobile, tertutama aplikasi native yang memerlukan akses langsung ke perangkat keras.
  • Kurang fleksibel: Java tidak terlalu fleksibel dalam hal manipulasi bit dan byte seperti bahasa pemrograman C dan C++.
Meski demikian, kelebihan java jauh lebih banyak dibandingkan dengan kekurangannya, sehingga banyak developer memilih untuk menggunakan java dalam pengembangan aplikasi mereka.

Komentar