nea_iyut

Jumat, 20 Maret 2009

Pengembangan dan aplikasi Java

Pengembangan Java

Bahasa pemrograman java dibuat pada tahun 1991 oleh James Gosling, seorang ahli pemrograman yang bekerja di Sun Microsystem. Awalnya bahasa pemrograman ini diberi nama Oak. Yang mendapat inspirasi dari sebuah pohon yang berada di seberang kantornya. Akan tetapi nama Oak sendiri merupakan nama bahasa pemrograman yang telah ada sebelumnya, maka kemudian Sun mengganti namanya menjadi java. Nama java sendiri diinspirasi saat Gosling dan rekannya sedang menikmati secangkir kopi di sebuah kedai kopi yang kemudian dengan tidak sengaja salah satu dari mereka menyebutkan kata java yang mengandung arti kopi. Akhirnya mereka sepakat untuk memberikan nama bahasa pemrograman tersebut dengan java.

Karena pada awalnya java ditujukan untuk pemrograman peralatan sederhana atau kecil, java memiliki karakteristik berukuran kecil, efisien, dan portabel untuk berbagai piranti keras. Salah satu dari proyek pertama yang dikembangkan menggunakan java sebuah remote kontrol yang diberi nama Star 7.

Pada saat yang sama, World Wide Web dan Internet berkembang sangat cepat. Gosling menyadari bahwa java dapat digunakan untuk pemrograman Internet. Selanjutnya java diarahkan untuk perkembangan Internet. Setelah melalui beberapa perubahan dan proses, Sun meluncurkan browser dari java yang disebut Hot Java yang mampu menjalankan applet. Teknologi ini kemudian diadopsi oleh Netscape. Beberapa waktu kemudian Internet Explorer juga mengadopsi teknologi tersebut, sehingga selain dapat dijalankan pada browser Netscape, program Java juga dapat dijalankan pada browser Internet Explorer.

Versi Awal

Versi awal Java ditahun 1996 sudah merupakan versi release sehingga dinamakan Java Versi 1.0. Java versi ini menyertakan banyak paket standar awal yang terus dikembangkan pada versi selanjutnya:

  • java.lang: Peruntukan kelas elemen-elemen dasar.
  • java.io: Peruntukan kelas input dan output, termasuk penggunaan berkas.
  • java.util: Peruntukan kelas pelengkap seperti kelas struktur data dan kelas kelas penanggalan.
  • java.net: Peruntukan kelas TCP/IP, yang memungkinkan berkomunikasi dengan komputer lain menggunakan jaringan TCP/IP.
  • java.awt: Kelas dasar untuk aplikasi antarmuka dengan pengguna (GUI)
  • java.applet: Kelas dasar aplikasi antar muka untuk diterapkan pada penjelajah web.

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 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.
  • 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, 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.

Pada awal tahun 1996, Sun secara resmi meliris versi awal Java yang kemudian terus berkembang hingga muncul JDK 1.1 (Java Development Kit versi 1.1). Perkembangan terus dilakukan, sehingga muncul versi terbaru yang disebut dengan Java 2. Perubahan utama antara versi 2 dengan versi sebelumnya adalah adanya swing yang merupakan teknologi Graphical User Interface (GUI) yang mampu menghasilkan aplikasi desktop yang benar-benar portabel.

Pada tahun 1998-1999 diluncurkan teknologi Java yang berbasis Enterprise yang disebut J2EE (Java 2 Enterprise Edition). Kelebihan Java dalam lingkungan jaringan dan terdistribusi serta memiliki kemampuan multithreading, menjadikan Java cepat populer di lingkungan server.

Selain, teknologi berbasis server, applet, dan desktop, java juga mengembangkan teknologi berbasis mobile yaitu J2ME (Java 2 Micro Edition). Dengan J2ME ini, programmer dapat membuat aplikasi untuk perangkat bergerak / mobile.

Aplikasi Java Pada Handphone

J2ME merupakan sebuah versi yang direduksi dari Java API dan Java Virtual Machine (JVM) yang didesain untuk dapat dioperasikan dalam komputer dan mikrokomputer. J2ME diarahkan untuk diaplikasikan pada piranti komputasi kecil seperti handphone, PDA, smartphone, dll. Untuk mendukung berbagai macam piranti ini, J2ME memiliki konfigurasi dan profil yang mendefinisikan kelas Java API yang dapat digunakan oleh aplikasi. J2ME sendiri pada dasarnya terdiri dari tiga buah bagian, yaitu konfigurasi, profil dan paket-paket opsional.

Konfigurasi merupakan bagian yang berisi JVM dan beberapa library kelas lainnya. Hanya ada dua macam konfigurasi yang disediakan oleh Sun Microsystem, yaitu:

  • Connected Limited Device Configuration (CLDC), bersifat pribadi yaitu piranti yang kadang-kadang terhubung dengan jaringan. Konfigurasi ini banyak digunakan dalam aplikasi Java pada perangkat komunikasi mobile kita seperti handphone, PDA, dll.
  • Connected Device Configuration (CDC), bersifat terus-menerus yaitu piranti yang terus menerus terhubung dengan jaringan.

· 2.4 Java 2 Platform, Micro Edition (J2METM)

· Komponen-komponen J2ME terdiri dari JavaVirtual Machine (JVM) yang digunakan untukmenjalankan aplikasi Java pada emulator atau handheld device, Java API (Aplication Programming Interface) dan tools lain untuk pengembangan aplikasi Java semacam emulator Java Phone, emulator Motorolla dari J2ME wireless toolkit. Dalam pengembangan aplikasi wireless dengan Java, J2ME dibagi menjadi dua buah bagian diantaranya ialah bagian configuration dan profile.

· 1. Lapisan Konfigurasi (Configuration Layer ) J2ME mempunyai dua konfigurasi yaitu Connected Limited Device Configuration (CLDC) dan Connected Device Configuration (CDC). ]

· 2. Lapisan Profil (Profile Layer)

· J2ME mempunyai beberapa profil antara lain :

· 1. MOBILE INFORMATION DEVICE PROFILE (MIDP)

· 2. Foundation Profile (FP)

· 3. Personal Profile

· 4. Personal Digital Assistance (PDA)

·

· Profile

· Gambar 2.4 Java 2 Micro Edition

·

· Dilihat dari Gambar 2.4 diatas maka J2ME (Java 2

· Micro Edition) mempunyai lapisan konfigurasi dan profile yang didukung oleh Java Virtual Machine (CVirtual Machine dan K-Virtual Machine).

·