Pada tahun
1991, sekelompok insinyur SUN yang dipimpin Patrick Naughtonan James
Gosling ingin merancang bahasa komputer untuk perangkat consumer seperti
cable Tv box. Karena perangkat itu tidak mempunyai banyak memori,
bahasa harus berukuran kecil dan menghasilkan kode yang liat, maka
bahasa harus bebas dari arsitektur manapun. Proyek ini diberi nama kode
Green.
Nama JAVA
sendiri terinspirasi pada saat orang–orang di proyek Green sedang
menikmati secangkir kopi di sebuah kedai kopi yang kemudian dengan tidak
sengaja salah satu dari mereka menyebutkan kata JAVA yang mengandung
arti asal bijih kopi. Kebutuhan kecil, liat dan kode netral terhadap
platform mengantar tim mempelajari implementasi Pascal yang pernah
dicoba. Niklaus Wirth, pencipta bahasa Pascal telah merancang bahasa
portable yang menghasilkan kode antara untuk mesin hipotesis.
Pada tahun
1995, Netscape memutuskan membuat browser yang dilengkapi dengan Java.
Setelah itu diikuti IBM, Symantec, Inspire, bahkan Microsoft. Bahasa
Java merupakan karya Sun Microsystem Inc. Rilis resmi dilakukan pada
Nopember 1995. Maskot Java adalah Duke. Dua bulan berikutnya Netscape
menjadi perusahaan pertama yang memperoleh lisensi bahasa Java dari Sun.
Pengenalan Java
Dalam Java
ada 2 jenis program berbeda, yaitu aplikasi dan applet. Keduanya
merupakan bagian dari execute, dimana execute merupakan salah satu fase
kelima dalam siklus program Java. Aplikasi adalah program yang biasanya
disimpan dan di eksekusi dari komputer lokal. Applet adalah program yang
biasanya disimpan pada komputer yang jauh,yang dikoneksikan pemakai
lewat web browser. Komputer jauh menjalankan web server yang memberi
layanan terhadap permintaan web browser.
Kebanyakan
bahasa pemrograman modern berdiri di atas pustaka-pustaka kelas yang
telah ada untuk mendukung fungsionalitas bahasanya. Pada bahasa Java,
kelompok-kelompok kelas yang berkaitan erat dimasukkan dalam satu paket,
bervariasi sesuai edisi Java.
Java adalah
bahasa pemrograman yang berorientasi objek (OOP) dan dapat dijalankan
pada berbagai platform sistem operasi. Perkembangan Java tidak hanya
terfokus pada satu sistem operasi, tetapi dikembangkan untuk berbagai
system operasi dan bersifat open source.
Aplikasi
dengan teknologi Java secara umum adalah aplikasi serba guna yang dapat
dijalankan pada seluruh mesin yang memiliki Java Runtime Environment
(JRE).
Java adalah
bahasa yang dapat dijalankan dimanapun dan di sembarang platform apapun,
di beragam lingkungan: Internet, intranets, consumer electronic
products, dan computer applications. Untuk beragam aplikasi yang dibuat
dengan bahasa Java, Java dipaketkan dalam edisi-edisi berikut:
• Java 2 Standar Edition (J2SE)
J2SE
menyediakan lingkungan pengembangan yang kaya fitur, stabil, aman, dan
cross-platform. Edisi ini mendukung konektivitas basis data, rancangan
user interface, masukkan/ keluaran input/output), dan pemrograman
jaringan (network programming), dan termasuk sebagai paket-paket dasar
bahasa Java.
• Java 2 Enterprise Edition (J2EE)
J2EE berisi
paket-paket J2SE serta paket-paket untuk mendukung pengembangan
Enterprise JavaBeans, Java Servlets, JavaServer Pages, XML, dan kendali
transaksi yang fleksibel.
• Java 2 Micro Edition (J2ME)
J2ME adalah
untuk beragam consumer electronic product, seperti pager, cell phone,
handheld PDA, dll. Java bukan turunan langsung dari bahasa pemrograman
manapun, juga sama sekali tidak kompatibel dengan semuanya. Model objek
Java adalah sederhana dan mudah dikembangkan, namun sejalan dengan itu,
nilangan dan tipe data sederhana lain dianggap sebagai non-objek
berkinerja tinggi.
OOP (object oriented programming) adalah cara ampuh dalam pengorganisasian dan pengembangan perangkat lunak. Pada OOP, program komputer sebagai sekelompok objek yang saling berinteraksi. Objek-objek ini ada secara secara independent yang mempunyai aturan-aturan berkomunikasi dengan objek lain dan untuk memerinthakan objek lain guna meminta informasi tertentu atau meminta objek lain mengerjakan sesuatu.
• Bahasa statically typed
Semua objek
dideklarasikan terlebih dahulu sebelum digunakan. Melalui fitur ini kode
program lebih dapat dioptmasi untuk menghasilkan program berkinerja
tinggi.
• Bahasa dikompilasi
• Bahasa dikompilasi
Sebelum
menjalankan program di bahasa Java, program dikompilasi menggunakan Java
Compiler. Kompilais akan menghasilkan file “bytecode” yang serupa
fungsinya dengan file kode mesin. Program “bytecode” yang dihasilkan
dapat di eksekusi di sembarang Java Interpreter. Java Interpreter
membaca file “bytecode” dan menterjemahkan perintah “bytecode” menjadi
perintah-perintah bahasa mesin yang dapat di eksekusi mesin.
• Bahasa yang aman
• Bahasa yang aman
Java menggunakan model pengamanan 3 lapis untuk melindungi sistem dari Untrusted Java Code.
- Bytecode verifier membaca bytecode sebelum dijalankan dan menjamin bytecode memenuhi aturan-aturan dasar bahasa Java
- Class loader menangani pemuatan kelas Java ke runtime interpreter.
- Manajer keamanan menangani keamanan tingkat aplikasi dengan mengendalikan apakah program berhak mengakses sumber daya seperti sistem file, port jaringan, proses eksternal dan sistem windowing.
Selain itu Java menyediakan beragam teknik pengaman, yaitu:
- Bahasa dirancang untuk mempersulit eksekusi kode perusak
- Program Java dikompilasi menajdi serangkaian bytecode.
- Java mempunyai pengamanan terhadap applet.
• Bahasa independen terhadap platform
Platform independence merupakan kemampuan program bekerja di sistem operasi atau sistem komputer berbeda. Bahasa Java adalah bahasa yang secara sempurna tidak bergantung platform.
• Bahasa yang didukung garbage collector
Platform independence merupakan kemampuan program bekerja di sistem operasi atau sistem komputer berbeda. Bahasa Java adalah bahasa yang secara sempurna tidak bergantung platform.
• Bahasa yang didukung garbage collector
Artinya,
program tidak perlu menghapus sendiri objek-objek yang tidak digunakan
lagi. Fasilitas ini mengurangi beban pengelolaan memori oleh pemrogram
dan mengurangi atau mengeliminasi sumber kesalahan terbesar yang
terdapat di bahasa yang memungkinkanalokasi dinamis.
• Bahasa yang tegar
• Bahasa yang tegar
Java
interpreter memeriksa semua akses sistem yang dilakukan. Program java
tidak dapat menyebabkan crash terhadap sistem. Java mempunyai mekanisme
exception handling yang ampuh. Exception-handling menyediakan cara untuk
memisahkan antara bagian penanganan kesalahan dengan bagian kode normal
sehingga menuntun ke struktur kode program yang lebih bersih dan
menjadikan aplikasi lebih tegar.
Karakteristik Java
1. Open Source
Java adalah bahasa yang bersifat open source atau free, dengan kata lain semua orang dapat mempelajarinya dengan mudah.
2. Berorientasi Objek (Object Oriented)
Pemrograman berorientasi objek memodelkan dunia nyata kedalam objek dan melakukan interaksi antar objek-objek tersebut.
3. Robust
Java mempunyai runtime-Exception handling untuk membantu mengatasi error pada pemrograman.
4. Portable
Source code maupun program Java dapat dengan mudah dibawa ke platform yang berbeda-beda tanpa harus dikompilasi ulang.
5. Case-sensitive
Java bersifat case-sensitive, artinya java membedakan huruf kecil dengan huruf besar atau kesamaan elemen suatu statement.
Struktur Program Java
Penulisan
program Java dapat dilakukan pada semua teks editor yang paling disukai
baik itu editor handal semacam eclipse dan netbeans ataupun editor
simple seperti editplus, dan crimson. Dalam pembuatan program java yang
harus diperhatikan dalam pembuatan program java adalah penulisan huruf
besar dan kecil karena java memiliki sifat Case Sensitive. Berikut
adalah bentuk umum dari penulisan program Java:
Pertama
dalam program Java minimal terdapat sebuah class, dimana nama dari class
tersebut diusahakan sama dengan nama file Java (arti dari class akan
dijelaskan pada pertemuan selanjutnya), dan setiap class harus dibuka
dengan tanda ‘{‘ dan ditutup dengan tanda ‘}’.
Contoh:
class Hello{
public static void main(String[] args)
{
(tulis code/ program disini)
}
}
Metode main () didefinisikan sebagai public static void, berikut penjelasannya:
• public, berarti metode ini dapat dipanggil dari luar class
• static, menunjukkan metode ini bersifat sama untuk semua class
• void, berarti metode ini tidak mengembalikan nilai.
• Argument args [ ] adalah array objek string argument baris-baris perintah yang dilewatkan ke kelas yang di eksekusi.
Didalam
penulisan program Java kita dapat membuat sebuah komentar, ada dua jenis
tipe komentar pada Java, yang pertama menggunakan pasangan simbol /*
dan */. Semua tulisan yang berada dalam tanda tersebut akan diperlakukan
sebagai komentar. Yang kedua menggunakan awalan
• public, berarti metode ini dapat dipanggil dari luar class
• static, menunjukkan metode ini bersifat sama untuk semua class
• void, berarti metode ini tidak mengembalikan nilai.
• Argument args [ ] adalah array objek string argument baris-baris perintah yang dilewatkan ke kelas yang di eksekusi.