Penjelasan, Kelebihan, dan Kekurangan Bahasa Pemrograman Java
Java adalah bahasa pemrograman yang dapat dijalankan di
berbagai komputer termasuk telepon genggam. Bahasa ini awalnya dibuat oleh
James Gosling saat masih bergabung di Sun Microsystems saat ini merupakan
bagian dari Oracle dan dirilis tahun 1995. Bahasa ini banyak mengadopsi
sintaksis yang terdapat pada C dan C++ namun dengan sintaksis model objek yang
lebih sederhana serta dukungan rutin-rutin aras bawah yang minimal. Java merupakan
bahasa pemrograman yang bersifat umum/non-spesifik (general purpose), dan
secara khusus didisain untuk memanfaatkan dependensi implementasi seminimal
mungkin. Karena fungsionalitasnya yang memungkinkan aplikasi java mampu
berjalan di beberapa platform sistem operasi yang berbeda, java dikenal pula
dengan slogannya, "Tulis sekali, jalankan di mana pun". Saat ini java
merupakan bahasa pemrograman yang paling populer digunakan, dan secara luas dimanfaatkan
dalam pengembangan berbagai jenis perangkat lunak aplikasi ataupun aplikasi.
Semua platform pemrograman Java terdiri dari Java Virtual
Machine (JVM) dan application Programming Interface (API). JVM adalah program
untuk menjalankan aplikasi yang dibuat dengan bahasa Pemrograman Java.
Sedangkan API adalah koleksi komponen aplikasi yang dapat kita gunakan untuk
mengembangkan aplikasi dalam bahasa pemrograman JAVA. Berdasarkan koleksi dan
kombinasi JVM dan API ini lah muncul platform bahasa pemrogragaman JAVA. Sampai
tulisan ini dibuat, ada 4 platform bahasa pemrograman Java. Platform tersebut
antara lain:
JAVA Standard Edition (JAVA SE)
Java SE API adalah platform yang paling sering digunakan
dalam merefer bahasa pemrograman java dan lingkungannya. Java SE API
menyediakan fungsi inti dari bahasa pemrograman Java (Core Functionality). Java
SE mendefinisikan semua baik dari tipe dan objek yang paling dasar sampai class
tingkat tinggi yang digunakan dalam jaringan, security, akses database,
pengembangan GUI, dan XML parsing.
Selain Core API Java SE terdiri dari JVM, development tools,
deployment technologies, dan class libraries lain yang biasa digunakan dalam Aplikasi
dengan teknologi Java.
Fundamental dalam Java SE antara lain:
- The oop concepts like inhertance, polymorphism etc
- The java features
- Basic conditional statements, loops
JAVA Enterprise Edition (JAVA EE)
Platform ini digunakan dalam instansi tempat saya
bekerja. Sebagian besar aplikasi yang dikembangkan secara mandiri oleh Pusat
Informasi dan Pengawasan dibangun melalui platform ini. Java EE dibangun di atas
Java SE dan menyediakan API dan runtime environment untuk pengembangan aplikasi
berskalan besar, multi-tiered, scalable, reliable, dan aman dari sisi jaringan.
- Jsp
- Sevlets
- Applets etc
- Followed by Frameworks like Spring, Hibernate, Struts etc
JAVA Micro Edition (JAVA ME)
Java ME menyediakan API dan jejak kecil JVM untuk
menjalankan aplikasi dengan bahasa pemrograman JAVA pada alat yang lebih kecil,
contohnya telpon selular. API yang tersedia lebih sedikit dari API yang
disediakan JAVA SE, dengan beberapa class khusus yang berguna untuk
pengembangan aplikasi pada ponsel. Java ME seringkali merupakan salah satu
client dari aplikasi yang lebih besar yang dikembangkan dalam Java EE.
JAVA FX
Java FX adalah platform Java yang kaya dengan
pengembangan untuk aplikasi internet. Java FX Script adalah bahasa yang
pendeklarasiannya menggunakan pendekatan statistically typed yang dicompile
dengan Java Technology Bytecode yang dapat dijalankan pada JVM.
Kelebihan & Kekurangan JAVA :
Kelebihan :
- Multiplatform, Kelebihan utama dari Java ialah dapat dijalankan di beberapa platform / sistem operasi komputer, sesuai dengan prinsip tulis sekali, jalankan di mana saja. Dengan kelebihan ini pemrogram cukup menulis sebuah program Java dan dikompilasi (diubah, dari bahasa yang dimengerti manusia menjadi bahasa mesin / bytecode) sekali lalu hasilnya dapat dijalankan di atas beberapa platform tanpa perubahan. Kelebihan ini memungkinkan sebuah program berbasis java dikerjakan di atas operating system Linux tetapi dijalankan dengan baik di atas Microsoft Windows. Platform yang didukung sampai saat ini adalah Microsoft Windows, Linux, Mac OS dan Sun Solaris. Penyebabnya adalah setiap sistem operasi menggunakan programnya sendiri-sendiri (yang dapat diunduh dari situs Java) untuk meninterpretasikan bytecode tersebut.
- OOP (Object Oriented Programming), Pemrograman yang berbasis objek.
- Perpustakaan Kelas Yang Lengkap, Java terkenal dengan kelengkapan library/perpustakaan (kumpulan program program yang disertakan dalam pemrograman java) yang sangat memudahkan dalam penggunaan oleh para pemrogram untuk membangun aplikasinya. Kelengkapan perpustakaan ini ditambah dengan keberadaan komunitas Java yang besar yang terus menerus membuat perpustakaan-perpustakaan baru untuk melingkupi seluruh kebutuhan pembangunan aplikasi.
- Bergaya C++, memiliki sintaks seperti bahasa pemrograman C++ sehingga menarik banyak pemrogram C++ untuk pindah ke Java. Saat ini pengguna Java sangat banyak, sebagian besar adalah pemrogram C++ yang pindah ke Java. Universitas-universitas di Amerika Serikat juga mulai berpindah dengan mengajarkan Java kepada murid-murid yang baru karena lebih mudah dipahami oleh murid dan dapat berguna juga bagi mereka yang bukan mengambil jurusan komputer.
- Pengumpulan sampah otomatis, memiliki fasilitas pengaturan penggunaan memori sehingga para pemrogram tidak perlu melakukan pengaturan memori secara langsung (seperti halnya dalam bahasa C++ yang dipakai secara luas).
Kekurangan :
- Tulis sekali, jalankan di mana saja, Masih ada beberapa hal yang tidak kompatibel antara platform satu dengan platform lain. Untuk J2SE, misalnya SWT-AWT bridge yang sampai sekarang tidak berfungsi pada Mac OS X.
- Mudah didekompilasi, Dekompilasi adalah proses membalikkan dari kode jadi menjadi kode sumber. Ini dimungkinkan karena kode jadi Java merupakan bytecode yang menyimpan banyak atribut bahasa tingkat tinggi, seperti nama-nama kelas, metode, dan tipe data. Hal yang sama juga terjadi pada Microsoft .NET Platform. Dengan demikian, algoritma yang digunakan program akan lebih sulit disembunyikan dan mudah dibajak/direverse-engineer.
- Penggunaan memori yang banyak, Penggunaan memori untuk program berbasis Java jauh lebih besar daripada bahasa tingkat tinggi generasi sebelumnya seperti C/C++ dan Pascal (lebih spesifik lagi, Delphi dan Object Pascal). Biasanya ini bukan merupakan masalah bagi pihak yang menggunakan teknologi terbaru (karena trend memori terpasang makin murah), tetapi menjadi masalah bagi mereka yang masih harus berkutat dengan mesin komputer berumur lebih dari 4 tahun.
Sumber :
https://id.wikipedia.org/wiki/Java
https://www.belajararief.com/index.php/tulisan/tekno/167-platform-bahasa-pemrograman-java-the-java-programming-language-platforms
Komentar
Posting Komentar