22 Desember 2011

pengertian JAVA


1.1. SEJARAH SINGKAT JAVA



Berbicara mengenai Java ada dua bagian yang dibicarakan, yakni :
§  Java sebagai bahasa pemrograman.
§  Java sebagai sebuah platform.

Java sebagai bahasa pemrograman dimulai ketika pada tahun 1990, James Gosling, pemrogram yang bekerja pada Sun Microsystems mendapat tugas menciptakan program untuk mengendalikan perangkat elektronika rumah tangga.

Gosling dan kawan-kawan mulai mendesain program tersebut dengan bahasa pemrograman C++, yaitu bahasa pemrograman kelas wahid yang menjadi unggulan para pemrogram profesional saat itu, karena sifatnya yang berorientasi objek itu. Saat mulai menggunakan C++, Gosling mulai merasakan bahwa bahasa tersebut tidak cocok untuk tugas yang dibebankan kepada timnya. Mereka mulai mendapat masa-lah karena berbagai kerumitan yang dimiliki oleh C++, misalnya masa-lah pewarisan majemuk (multiple inheritance) dan masalah bug program, misalnya kebocoran memori (memory leaks). Gosling segera memutuskan untuk merancang sendiri bahasa pemrograman komputer yang sederhana dan mampu menghindarkannya dari masalah-masalah yang ia temui ketika menggunakan bahasa pemrograman C++.

Java sebagai sebuah platform, terdiri atas dua bagian utama, yakni :
§  Java Virtual Machine (JVM)
§  Java Application Programming Interface (Java API)
Saat ini Java Platform telah ada secara default pada berbagai sistem operasi, antara lain :
§  Windows 9.X/NT/2000
§  Sun Solaris
§  MacOS
§  Novell Netware 4.0
§  HPUx
§  Hitachi OS
§  AIX
§  Irix
§  Unixware (SCO)




1.2. KELEBIHAN JAVA



Java Application Programming Interface (Java API) menyediakan fitur-fitur yang menarik untuk mengembangkan aplikasi, antara lain :

§  Applet
Java Applet merupakan program Java yang berjalan di atas brow-ser. Dengan menggunakan Java Applet, maka halaman HTML akan lebih dinamis dan menarik, sangant cocok untuk pengem-bangan aplikasi-aplikasi berbasis web.


§  Java Networking
Java Networking merupakan sekumpulan Application Program-ming Interface (API) yang menjadikan fungsi-fungsi untuk aplikasi-aplikasi jaringan. Java Networking menyediakan akses untuk TCP, UDP, IP Address dan URL, tetapi tidak untuk ICMP dikarenakan alasan sekuriti.

§  Java Database Connectivity (JDBC)
JDBC menyediakan sekumpulan Application Programming Inter-face (API) yang dapat digunakan untuk mengakses database seperti Oracle, MySQL, PostgreSQL, Microsoft SQL Server.

§  Java Security
Java Security menyediakan sekumpulan Application Programming Interface (API) yang dapat digunakan untuk mengatur security dari aplikasi Java baik secara high level maupun low level, seperti public/private key management dan certificates.

§  Java Swing
Java Swing menyediakan sekumpulan Application Programming Interface (API) yang dapat digunakan untuk membangun aplikasi-aplikasi GUI (Graphical User Interface) dan model GUI yang diinginkan bisa bermacam-macam.

§  Java RMI
Java RMI menyediakan sekumpulan Application Programming Interface (API) yang dapat digunakan untuk membangun aplikasi-aplikasi Java yang mirip dengan model RPC (Remote Procedure Call), jadi objek-objek Java bisa di-call secara remote pada jaring-an komputer.

§  Java 2D/ 3D
Java 2D/ 3D menyediakan sekumpulan Application Programming Interface (API) yang dapat digunakan untuk membangun grafik-grafik 2D/ 3D yang menarik dan juga akses ke printer.

§  Java Server Pages (JSP)
Berkembang dari Java Servlet yang digunakan untuk mengganti-kan aplikasi-aplikasi CGI, JSP (Java Server Page) yang mirip ASP dan PHP merupakan alternatif terbaik untuk solusi aplikasi internet

§  Java Native Interface (JNI)
JNI menyediakan sekumpulan Application Programming Interface (API) yang dapat digunakan untuk mengakses fungsi-fungsi pada library (*.dll atau *.so) yang dibuat dengan bahasa pemrograman yang lain seperti C++, dan Basic.

§  Java Sound
Java Sound menyediakan sekumpulan Application Programming Interface (API) yang dapat digunakan untuk memanipulasi sound.

§  Java IDL + COBRA
Java IDL (Interface Definition Language) menyediakan dukungan Java untuk implementasi COBRA (Common Object Request Broker) yang merupakan model objek terdistribusi untuk solusi aplikasi besar di dunia jaringan.

§  Java Card
Java Card utamanya digunakan untuk aplikasi-aplikasi pada smart card, yang sederhana wujudnya seperti SIM card pada handphone.

§  Java Telephony Application Programming Interface (JTAPI)
JTAPI menyediakan sekumpulan Application Programming Inter-face (API) yang dapat digunakan untuk memanfaatkan alat-alat telepon, sehingga akan cocok untuk aplikasi-aplikasi CTI (Compu-ter Telephony Integration) yang dibutuhkan seperti ACD (Auto-matic Call Distribution), PC-PBX dan lainnya.