DEFINISI JAVA
Java adalah sebuah bahasa pemrograman dan juga sebuah platform. Sebagai sebuah bahasa pemrograman tingkat tinggi, Java adalah sebuah bahasa berorientasi objek (object oriented programming). Jika anda pernah memprogram dengan bahasa pemrograman OOP , seperti C++ atau Smalltalk , mungkin anda ingat betapa menyenangkannya memprogram dengan konteks objek. Anda merancang beberapa objek satu demi satu dengan mendefinisikan berbagai property yang dimiliki object tersebut dan pekerjaan (task) yang dapat ditangani oleh objek tersebut. Kemudian anda merangkai semua objek tersebut dengan mendefinisikan relasi antar objek tersebut seperti halnya membangun sebuah mobil dari komponen-komponennya. Belakangan ini , mungkin anda akrab dengan slogan "reusable of code". "Reuse of code" ini bukanlah cut & paste ( tapi harus diakui cut & paste memang sangat menyenangkan ). Yang dimaskud dengan "reuse of code" ini adalah suatu keadaan dimana para programmer untuk membangun sebuah objek dengan mengextend objek-objek yang telah ada secara mudah. Secara mudah disini adalah , programmer itu mungkin tidak perlu tahu dengan kode-kode dari objek yang ingin ia extend , yang ia butuhkan hanyalah pengetahuan mengenai property dari objek itu dan hal-hal yang dapat dilakukan oleh objek itu.
Selain itu Java, sebagai bahasa pemrograman, akan mempermudah tugas kita dalam merancang sebuah program yang mendukung multithreading. Ada banyak kasus dimana kita benar-benar membutuhkan multithreading atau dimana multithreading dapat membuat pemecahan masalah menjadi lebih efisien.
KELEBIHAN PROGRAM JAVA
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 diatas 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. Penyebanya adalah setiap sistem operasi menggunakan programnya sendiri-sendiri (yang dapat diunduh dari situs Java) untuk meninterpretasikan bytecode tersebut.
OOP (Object Oriented Programming - Pemrogram Berorientasi Objek) yang artinya semua aspek yang terdapat di Java adalah Objek. Java merupakan salah satu bahasa pemrograman berbasis oebjek secara murni. Semua tipe data diturunkan dari kelas dasar yang disebut Object. Hal ini sangat memudahkan pemrogram untuk mendesain, membuat, mengembangkan dan mengalokasi kesalahan sebuah program dengan basis Java secara cepat, tepat, mudah dan terorganisir. Kelebihan ini menjadikan Java sebagai salah satu bahasa pemograman termudah, bahkan untuk fungsi fungsi yang advance seperti komunikasi antara komputer sekalipun.
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 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.
KEKURANGAN PROGRAM JAVA
Tulis sekali, perbaiki 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 koe 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.
KURANG DETAIL GAN INFORMASI NYA
BalasHapus