Mengenai Teknologi Java

expertadvisorku.blogspot.com adalah situs Bahasa Pemrograman, Informatika Teknologi, Pembuatan Aplikasi Php, C++, Java, QT, Visual Basic, Mysql dan Komunitas Relawan TIK Kaltim dan Download Buku Digital.


Mengenai Teknologi Java


Globalisasi informasi dan konvergensi dari berbagai disiplin ilmu pengetahuan sekarang ini menyebabkan   manusia   mampu   merealisasikan   mimpi-mimpi   generasi   masa   lalu. Perangkat  keras  yang  lebih  baik  --dengan  masih  mematuhi  hukum  Moore  yang menyatakan bahwa kapasitas microprosessor berlipat dua dengan harga setengahnya setiap 18 bulan --, perangkat lunak yang lebih besar dan kompleks --sekaligus juga mudah   dipakai,   lebih   handal,   bahkan   gratis   untuk   Open   Source   software--, perkembangan jaringan baik itu Internet maupun wireless network dalam fase inflasioner dengan beraneka ragam perangkat keras dan lunak di dalamnya. Semua hal tadi menyebabkan kita harus berhenti untuk berfikir dan merenung sejenak bagaimana kita bisa mengelola kompleksitas yang tinggi dan perubahan yang cepat tersebut.
\
 
Mengapa kita perlu belajar bahasa Java?


Visi Java

Java pertama kali diluncurkan pada tahun 1995 sebagai bahasa pemrograman umum (general purpose programming language) dengan kelebihan dia bisa dijalankan di web browser sebagai applet. Sejak awal, para pembuat Java telah menanamkan visi mereka ke dalam Java untuk membuat piranti-piranti yang ada di rumah (small embedded customer device) seperti TV, telepon, radio, dan sebagainya supaya dapat berkomunikasi satu sama lain.  Tentu  saja  jalan  menuju  visi  ini  tidak  mudah  untuk  ditemukan  apalagi  untuk ditempuh. Langkah pertama yang diambil oleh Sun Microsystem adalah dengan membuat JVM (Java Virtual Machine) yang kemudian diimplementasikan dalam bentuk JRE (Java Runtime   Environment).   JVM   adalah   lingkungan   tempat   eksekusi   program   Java berlangsung dimana para objek saling berinteraksi satu dengan yang lainnya. Virtual Machine inilah yang menyebabkan Java mempunyai kemampuan penanganan memori yang lebih baik, keamanan yang lebih tinggi serta portabilitas yang besar.


Apabila kita hanya ingin menjalankan program Java,  maka kita cukup memiliki JRE saja. Tapi seandainya kita ingin mengembangkan perangkat lunak sendiri, JRE saja tidak cukup. Untuk lebih meningkatkan produktivitas pengembang perangkat lunak, Sun juga meluncurkan SDK (Standard Development Kit) yang berisi kakas dan API untuk membuat program  aplikasi  berbasis  Java.  Pada  tahun  1999  Sun  meluncurkan  J2EE  (Java  2
Enterprise Edition) sebagai framework untuk membuat aplikasi enterprais berskala besar. Pada tahun 2001, Sun meluncurkan J2ME yang kelak menjadi salah satu standar pemrograman di dalam PDA maupun handphone. Komunitas OpenSource sendiri mempunyai platform yang disebut dengan Jini untuk merealisasikan visi awal dari Java.

Karakteristik Java
  • Sederhana, semudah C dan seampuh C++: berlawanan dengan anggapan orang- orang bahwa bahasa Java sulit untuk dipelajari, Java   gampang untuk dipelajari terutama untuk  orang  yang sudah mengenal  pemrograman tapi  belum  terlalu terikat pada paradigma pemrograman prosedural. Tentu saja ini berarti bahwa kita harus siap mempelajari salah satu teknologi yang berkembang paling cepat di dunia dalam dua tahun terakhir ini dengan banyak membaca tentunya baik dari buku maupun melalui web.
  • Sangat berorientasi objek (OOP) dengan  implementasi yang sangat baik sehingga kita bukan hanya belajar bagaimana membuat program yang baik (reusable, scalable, dan maintanable) tetapi juga kita belajar bagaimana cara berfikir yang baik    untuk   mengenali   struktur   masalah   yang   sedang   kita   hadapi   dan memecahkannya secara sistematis dengan pola-pola tertentu (patterns). Bahasa berorientasi objek biasanya mempunyai ciri-ciri sebagai berikut:
  • Abstraksi yang baik untuk memudahkan pemahaman dan komunikasi.
  • Enkapsulasi:   penyembunyian   informasi   dari   pihak-pihak   yang   tidak memerlukannya sehingga kompleksitas tetap tertangani dengan baik.
  • Pewarisan  dan  polymorphism, teknik  yang  menyebabkan  objek menjadi modular dan mudah untuk dicopot dan dipasang objek yang lain
  • Komposisi  dan Interface, berguna untuk membuat tingkat kopling  yang lebih rendah dan struktur hirarki objek-objek yang rapih sehingga kita bisa mengintegrasikan komponen-komponen untuk membuat sistem yang besar.
  • OpenPlatform, Write Once Run Anywhere (WORA), portabel atau multi platform, program yang kita buat dapat dijalankan di Windows, Linux/Unix, Solaris, dan MacIntosh tanpa perlu diubah maupun di kompilasi ulang. Java adalah juga bahasa yang paling sesuai digunakan bersama dengan XML yang membuat data menjadi portabel,  ini  karena  kelahiran XML tidak terlepas dari  dukungan parser-parser berbahasa Java. Selain itu Java turut serta dalam mengkonvergenkan protokol menjadi Open protokol yaitu IP (Internet Protocol) terutama dalam Micro Java
  • Arsitekturnya yang kokoh dan pemrograman yang aman didukung oleh komunitas Open Source (ketiga terbesar setelah C dan C++ di SourceForge.net dan implementasi bahasa Java sudah menjadi milik umum). Dalam Java program yang kita buat tidak mudah untuk “hang” karena konflik pada memori biasanya diselesaikan  dengan  mengumpulkan  objek-objek  yang  sudah  tak  terpakai  lagi secara otomatis oleh garbage collector. Penanganan kesalahan juga dipermudah dalam Java dengan konsep Exception.
  • Bukan sekedar bahasa tapi juga platform sekaligus arsitektur. Java mempunyai portabilitas yang sangat tinggi. Ia dapat berada pada smartcard, pager, POS (Point of Service), handphone, PDA, palm, TV, Embedded device (PLC, micro controller), laptop, pc, dan bahkan server). Menyadari akan hal ini (one size doesn’t fit all) Sun membagi arsitektur Java membagi tiga bagian, yaitu:
  1. Enterprise Java (J2EE) untuk aplikasi berbasis web, aplikasi sistem tersebar dengan beraneka ragam klien dengan kompleksitas yang tinggi. Merupakan superset dari Standar Java
  2. Standar Java (J2SE), ini adalah yang biasa kita kenal sebagai bahasa Java, dan merupakan fokus kita sekarang.
  3. Micro Java (J2ME) merupakan subset dari J2SE dan salah satu aplikasinya yang banyak dipakai adalah untuk wireless device / mobile device
Adapun Fitur-fitur utama yang lain:
  • Mendukung multi-threading
  • Selalu memeriksa tipe object pada saat run-time
  • Mempunyai automatic garbage collection untuk membersihkan objek yang tidak terpakai dari memori
  • Mendukung exception sebagai salah satu cara penanganan kesalahan

Gambar  di  bawah  ini  adalah  contoh  dari  peralatan  J2ME  pada  tahun  2002  yang mempunyai JVM di dalamnya sehingga kita dapat membuat dan menjalankan program Java di dalamnya dan   berkomunikasi dengan   peralatan lain. Bayangkan bagaimana asyiknya  jika  kita  bisa  memrogram  sendiri  peralatan  elektronik  yang  kita  miliki. Bayangkan juga bagaimana perkembangan peralatan-peralatan tersebut lima sampai sepuluh tahun kedepan kelak.

Java di Indonesia dan Dunia

Di negeri dimana asal nama bahasa ini di ambil, bahkan di pulaunya sendiri yang banyak memiliki SDM di bidang IT, Java kurang populer bila dibandingkan dengan VisualBasic, Delphi dan Visual C++. Hal ini mungkin disebabkan oleh tidak adanya kemauan yang kuat dari  kita  untuk  menjadi  mandiri  dalam  bidang  software.  Tahukah  anda  bahwa tidak kurang dari 50% software-software di Amerika di impor dari negara-negara Asia terutama India dan Cina.

Visual Basic dan Delphi masih memegang posisi teratas untuk client-side programming, sedangkan untuk server-side, Java telah mengambil alih hampir seluruh market. Bisa dilihat   dari   produk-produk   Application   Server   yang   semuanya   harus   memenuhi persyaratan J2EE compliance seperti IBM Web Sphere, Oracle Application Server, BEA WebLogic, Sun iPlanet ApplicationServer, JBoss dan lain-lain.

Karena portabilitasnya yang sangat tinggi maka Java merupakan platform yang ideal untuk dapat beralih ke OpenSource. Ini berarti perusahaan tidak kehilangan investasinya dalam perangkat lunak yang mahal dan sulit untuk di buat ulang. Contohnya sekarang ini banyak sekali perusahan yang memakai sistem operasi maupun aplikasi umum yang ilegal (bajakan), kemudian perusahaan itu mengembangkan aplikasi sendiri yang berjalan pada sistem operasi maupun pada aplikasi office bajakan tersebut. Seandainya nanti peraturan semakin ketat, hukum ditegakkan maka perusahaan itu mempunyai pilihan untuk membayar lisensi atau menggunakan produk-produk gratis dari OpenSource, seperti Linux dan OpenOffice.


Komentar