Jumat, 20 Juli 2012

Sejarah Java


              Java adalah suatu bahasa pemrograman Object Oriented dengan unsur-unsur seperti bahasa C atau C++ dan bahasa-bahasa lainnya dengan libraries yang cocok untuk lingkungan internet maupun untuk aplikasi pemrogrman. Java diciptakan oleh James Gosling seorang Developer  dari Sun Microsystems pada tahun 1991. 

              Java pertama kalinya menggunakan nama Oak yang mana nama Oak ini diambil dari pohonOak yang tumbuh di depan jendela ruang kerja “Bapak Java”, James Gosling. Nama Oak ini tidak dipakai pada saat release Java karena perangkat lunak lain telah terdaftar dengan merek tersebut. Maka Sun Microsystem mengubahnya menjadi Java, Sun kemudian meluncurkan Hot Java dan Netscape Incorporated

              Sun menyediakan perangkat lunak untuk membuat program Java dengan nama Java Developer Kit (JDK) yang mempunyai beberapa versi dengan platform untuk SPARC dan X86 SolarisWindows NTdan Windows 95. JDK di mulai dengan versi 1.0x kemudian 1.1x dan yang terakhir versi 1.5. 

            Sun kemudian meluncurkan browser dari Java yaitu Hot Java yang mampu menjalankan script Applet. Setelah itu, teknologi Java diadopsi oleh Netscape yang memungkinkan program Java dijalankan di browser Netscape yang kemudian diikuti internet Explorer. Karena keunikannya dan kelebihannaya, teknologi Java mulai menarik banyak vendor seperti IBM,Symantec,Inprise,dll.

                Sun merilis versi awal Java secara resmi pada awal tahun 1996 yang kemudian terus berkembang hingga muncul JDK 1.1 kemudian JDK 1.2, yang mulai disebut sevagai versi Java2 karena banyak mengandung peningkatan dan perbaikan. Perubahan utama adalah dengan adanya Swing yang merupakan teknologi GUI(Graphical User Interface) yang mampu menghasilkan Window yang portabel. Dan pada tahun 1998-1999 lahirlah teknologi J2EE(Java 2 Enterprize Edition), yang berbasis J2SE(Java 2 Standart Edition) yang diawali dengan Servlet dan EJB kemudian diikuti JSP(Java Server Page). Java menjadi lebih cepat populer di lingkungan Server Side dikarenakan kelebihannya di lingkungan Network dan terdistribusi serta kemampuan multithreading. Sedangkan J2ME(Java 2 Micro Edition) dapat menghasilkan aplikasi mobile atau Handphone baik games maupun Software yang dapat dijalankan di peralatan Handphone seperti Symbian dan Java.

Java mempunyai 2 bagian utama, yaitu  :

1. Java Virtual Machine (JVM)

2. Java Application Programming Interface (Java API)

Sun membagi arsitektur Java menjadi 4 bagian, yaitu :

a. Enterprize Edition(J2EE) untuk aplikasi Web, aplikasi system tersebar dengan beraneka ragam klien dengan kompleksitas yang tinggi. Merupakan SuperSet dari Standart Java.

b. Standart Edition (J2SE) ini dikenal sebagai bahasa Java.

c. Micro Edtiton (J2ME) merupakan subset dari J2SE dan salah satu aplikasinya yang banyak dipakai adalah untuk Mobile Device.

               Aplikasi java merupakan Bytecode yang berjalan di atas JVM (Java Virtual Machine). Java Bytcode biasa dianggap sebagai code-code mesin dari JVM, kemudian JVM yang mengartikan kode-kode tersebut ke kode nativeatau kode mesin dari arsitektur yang bersangkutan. Hal ini sangat menarik karena urusan arsitektur mesin bukan jadi masalah bagi programmer tetapi menjadi masalah compiler.






PERKEMBANGAN JAVA

  Bahasa pemrograman  Java pertama lahir dari The Green Project, yang berjalan selama 18 bulan, dari awal tahun 1991 hingga musim panas 1992. Proyek tersebut belum menggunakan versi yang dinamakan Oak. Proyek ini dimotori oleh Patrick Naughton, Mike Sheridan, James Gosling dan Bill Joy, beserta sembilan pemrogram lainnya dari Sun Microsystems Salah satu hasil proyek ini adalah maskot Duke yang dibuat oleh Joe Palrang.

                Pertemuan proyek berlangsung di sebuah gedung perkantoran Sand Hill Road di Menlo Park. Sekitar musim panas 1992 proyek ini ditutup dengan menghasilkan sebuah program Java Oak pertama, yang ditujukan sebagai pengendali sebuah peralatan dengan teknologi layar sentuh (touch screen), seperti pada PDA sekarang ini. Teknologi baru ini dinamai “*7″ (Star Seven).

                 Setelah era Star Seven selesai, sebuah anak perusahaan TV kabel tertarik ditambah beberapa orang dari proyek The Green Project. Mereka memusatkan kegiatannya pada sebuah ruangan kantor di 100 Hamilton Avenue, Palo Alto.
                 Perusahaan baru ini bertambah maju: jumlah karyawan meningkat dalam waktu singkat dari 13 menjadi 70 orang. Pada rentang waktu ini juga ditetapkan pemakaian Internet sebagai medium yang menjembatani kerja dan ide di antara mereka. Pada awal tahun 1990-an, Internet masih merupakan rintisan, yang dipakai hanya di kalangan akademisi dan militer.
                 Mereka menjadikan perambah (browser) Mosaic sebagai landasan awal untuk membuat perambah Java pertama yang dinamai Web Runner, terinsipirasi dari film 1980-an, Blade Runner. Pada perkembangan rilis pertama, Web Runner berganti nama menjadi Hot Java.

                Pada sekitar bulan Maret 1995, untuk pertama kali kode sumber Java versi 1.0a2 dibuka. Kesuksesan mereka diikuti dengan untuk pemberitaan pertama kali pada surat kabar San Jose Mercury News pada tanggal 23 Mei 1995.

                  Sayang terjadi perpecahan di antara mereka suatu hari pada pukul 04.00 di sebuah ruangan hotel Sheraton Palace. Tiga dari pimpinan utama proyek, Eric Schmidt dan George Paolini dari Sun Microsystems bersama Marc Andreessen, membentuk Netscape.

                  Nama Oak, diambil dari pohon oak yang tumbuh di depan jendela ruangan kerja “bapak java”, James Gosling. Nama Oak ini tidak dipakai untuk versi release Java karena sebuah perangkat lunak sudah terdaftar dengan merek dagang tersebut, sehingga diambil nama penggantinya menjadi “Java”. Nama ini diambil dari kopi murni yang digiling langsung dari biji (kopi tubruk) kesukaan Gosling.
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:

1. java.lang      : Peruntukan kelas elemen-elemen dasar.
2. java.io          : Peruntukan kelas input dan output, termasuk penggunaan berkas.
3. java.util     : Peruntukan kelas pelengkap seperti kelas struktur data dan kelas
                                    kelas  penanggalan.

4. java.net    : Peruntukan kelas TCP/IP, yang memungkinkan berkomunikasi
                                     dengan komputer lain menggunakan jaringan TCP/IP.

5. java.awt        : Kelas dasar untuk aplikasi antarmuka dengan pengguna (GUI)

6. java.applet : Kelas dasar aplikasi antar muka untuk diterapkan pada penjelajah
                                     web.



Teknologi Java yang berkembang saat ini


JAVA pertama kali diperkenalkan oleh Sun Microysystem pada pertengahan tahun 1990. Menurut definisi dari Sun, JAVA adalah nama untuk sebuah teknologi untuk membuat dan menjalankan perangkat lunak pada komputer standalone ataupun lingkungan jaringan. Secara umum JAVA adalah suatu teknologi perangkat lunak komputer yang merupakan suatu bahasa pemrograman tingkat tinggi berorientasi objek yang dapat dijalankan di semua platform.

Sebagai sebuah platform, JAVA terdiri atas 2 bagian utama, yaitu :
  • Java Virtual Machine (JVM)
Java Virtual Machine adalah sebuah spesifikasi untuk sebuah komputer abstrak. JVM terdiri dari sebuah kelas pemanggil dan sebuah interpreter Java yang mengeksekusi kode arsitektur netral. Kelas pemanggil memanggil file API untuk dieksekusi oleh interpreter Java. Dengan kata lain JVM adalah sebagai perantara antara program yang akan dijalankan dan sistem operasi yang sedang digunakan.
  • Java Application Programming Interface (JAVA API)
Java API merupakan komponen-komponen dan kelas JAVA yang sudah jadi, yang memiliki berbagai kemampuan. Kemampuan untuk menangani objek, string, angka, dsb.  Java API terdiri dari tiga bagian utama:
  1. Java Standard Edition (SE), sebuah standar API untuk merancang aplikasi desktop dan applets dengan bahasa dasar yang mendukung grafis, keamanan, konektivitas basis data dan jaringan.
  2. Java Enterprose Edition (EE), sebuah inisiatif API untuk merancang aplikasi serverdengan mendukung untuk basis data.
  3. Java Macro Edition (ME), sebuah API untuk merancang aplikasi yang jalan pada alat kecil seperti telepon genggam, komputer genggam dan pager.
Pada saat ini teknologi java semakin berkembang, Sun Microsystem memperkenalkan Java versi 1.2 atau lebih dikenal dengan nama Java 2 yang terdiri atas JDK dan JRE versi 1.2. Pada Java 2 ini, java dibagi menjadi 3 kategori:
  • Java 2 Standart Edition (J2SE)
Kategori ini digunakan untuk menjalankan dan mengembangkan aplikasi-aplikasi Java pada level PC (Personal Computer)
  • Java 2 Enterprise Edition (J2EE)
Kategori ini digunakan untuk menjalankan dan mengembangkan aplikasi-aplikasi Java pada lingkungan entriprise dengan menambahkan fungsionalitas-fungsionalitas java semacam EJB (Enterprise Java Bean), Java CORBA, Servlet dan JSP serta Java XML (Extensible Markup Language)
  • Java 2 Micro Edition (J2ME)
Kategori ini digunakan untuk menjalankan dan mengembangkan aplikasi-aplikasi java pada handled devices atau perangkat-perangkat semacam handphone, Palm,PDA, dan Pocket PC. J2ME dirancang untuk dapat menjalankan program Java pada perangkat-perangkat semacam handphone dan PDA, yang memiliki karakteristik yang berbeda dengan sebuah komputer biasa, misalnya kecilnya jumlah memori pada handphone dan PDA. J2ME terdiri atas komponen-komponen sebagai berikut Java Virtual Machine (JVM) dan Java API (Application Programming Interface) serta Tools lain untuk pengembangan aplikasi Java semacam emulator Java Phone dan emulator Motorolla. Dalam J2ME dibagi menjadi dua bagian yang dikenal dengan istilah configuration dan profile. 

PROSES KOMUNITAS JAVA (JAVA COMMUNITY PROCESS (JCP))
Setelah pembahasan mengenai jenis platform dan perkembangan yang ada pada JAVA. sekarang saya akan memcoba memberikan informasi tentang siapa yang mengembangkan kedua platform JAVA tersebut.
Platform yang ada pada JAVA dikembangkan oleh yang namanya Java Community Process (JCP). JCP didirikan pada tahun 1998, merupakan suatu proses formal yang memungkinkan pihak-pihak yang tertarik untuk terlibat dalam mengembangkan versi dan fitur dari platform JAVA tersebut. Di dalam JCP  terdapat yang namanya Java Specification Request’s atau JSRs. JSRs adalah kumpulan dokumen formal yang menggambarkan spesifikasi dan teknologi yang diusulkan oleh orang-orang yang terlibat dalam JCP untuk melakukan penambahan fitur-fitur yang terdapat pada platform JAVA tersebut.
 
Pada Java API ini juga ditawarkan beberapa fitur menarik yang dapat digunakan oleh user yang sedang berkecimpung di dunia Java. Beberapa fitur tersebut adalah :
1.Applet
2.Java Networking
3.Java Database Connectivity(JDBC)
4.Java Security
5.Java Swing
6.Java RMI
7.Java 2D/3D
8.Java Server Pages
9.JNI (Java Native Inteface)
10.Java Sound
11.Java IDL+CORBA
12.Java Card
13.JTAPI (Java Telephony API)
Software pendukung Java


Untuk memulai pemrograman J2ME, hal yang harus kita lakukan tentu saja yaitu mempersiapkan software-software yang dibutuhkan. Adapun software-software minimal yang dibutuhkan tersebut, diantaranya :

Java 2 SDK (Software Development Kit)
contoh nama filenya : jdk-1_5_0_07-windows-i586-p.exe, ini adalah sebuah file installer yang digunakan untuk meng-instal Java 2 SDK pada system operasi windows.

J2ME WTK (Wireless Toolkit)
Digunakan untuk mempermudah kita dalam membuat, mengcompile, dan mengembangkan aplikasi J2ME.

Text Editor
Untuk menuliskan kode-kode bahasa pemrograman Java (yang mana filenya akan kita simpan dengan ekstensi *.java). Contoh text editor yang banyak digunakan dalam pemrograman J2ME, yaitu diantaranya: Notepad, Wordpad, Crimson Editor dan text editor lainnya.
Selain itu dapat pula dengan menggunakan Java IDE (Integrated Development Environment) , diantaranya seperti : NetBeans, Java (ME) platform SDK, Eclipse, JCreator, dan lain sebagainya.