A. Sejarah JAVA
Bahasa pemrograman
Java terlahir 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, dan James Gosling,
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 lain 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. Konon kopi ini
berasal dari Pulau Jawa. Jadi nama bahasa pemrograman Java tidak lain
berasal dari kata Jawa (bahasa Inggris untuk Jawa adalah Java).
B. Pengertian
JAVA
Java
adalah bahasa pemrograman
yang dapat dijalankan di berbagai komputer termasuk telepon genggam. Bahasa ini awalnya
dibuat oleh James Gosling
saat masih bergabung di Sun Microsystems saat ini merupakan
bagian dari Oracle dan dirilis tahun 1995.
Bahasa ini banyak mengadopsi sintaksis yang terdapat pada C
dan C++ namun dengan sintaksis model objek yang
lebih sederhana serta dukungan rutin-rutin aras bawah yang minimal.
Aplikasi-aplikasi berbasis java umumnya dikompilasi ke dalam p-code
(bytecode) dan dapat dijalankan pada berbagai Mesin Virtual Java
(JVM). Java merupakan bahasa pemrograman yang bersifat
umum/non-spesifik (general purpose), dan secara khusus didisain untuk
memanfaatkan dependensi implementasi seminimal mungkin. Karena
fungsionalitasnya yang memungkinkan aplikasi java mampu berjalan di beberapa
platform sistem operasi
yang berbeda, java dikenal pula dengan slogannya, "Tulis sekali, jalankan di mana pun". Saat ini
java merupakan bahasa pemrograman yang paling populer digunakan, dan secara
luas dimanfaatkan dalam pengembangan berbagai jenis perangkat lunak aplikasi
ataupun aplikasi berbasis web.
C.
Kelebihan
dan Kekurangan JAVA
a. Kelebihan
JAVA
1.
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.
Penyebabnya adalah setiap sistem operasi menggunakan programnya sendiri-sendiri
(yang dapat diunduh dari situs Java) untuk meninterpretasikan bytecode
tersebut.
3.
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.
4.
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
Serikat 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.
5.
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).
b.
Kekurangan
JAVA
1. Tulis sekali, jalankan 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.
2. Mudah didekompilasi.
Dekompilasi adalah proses membalikkan dari kode jadi menjadi kode sumber. Ini
dimungkinkan karena kode 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.
3. 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.
D.
Karakteristik
Pemrograman JAVA
1.
Simple
(Sederhana).
Java
merupakan bahasa pemrograman paling populer saat ini. Sintak bahasa pemrograman
Java mirip dengan bahasa pemrograman C++. Bahasa pemrograman Java memang
berasal dari bahasa pemrograman C++ yang terlebih dahulu telah mengalami
penyederhanaan dan peningkatan. Banyak fitur (feature) bahasa pemrograman C++
yang jarang digunakan dan kurang menguntungkan dihilangkan. Sebagai contoh,
bahasa Java tidak mendukung turunan berlapis (multiple inheritance), union dan
tipe data pointer.
2.
Object-oriented
(Berorientasi obyek).
Bahasa
pemrograman berorientasi obyek memandang segala sesuatu yang ada di dunia ini
sebagai obyek. Sebagai contoh, lingkaran, orang, meja dan piutang dapat
dipandang sebagai obyek di Java. Bahasa pemrograman berorientasi obyek akan
menitikberatkan pada pembuatan obyek, pemanipulasian obyek serta memastikan
bahwa obyek yang satu dengan yang lain dapat bekerja bersama. Setiap obyek
mempunyai data (attribute atau property) dan operasi atau metoda (method) yang
digunakan untuk memanipulasi data. Programer dapat membuat obyek dimana metoda
merupakan satu-satunya cara untuk memanipulasi data.
3.
Distributed
(Terdistribusi).
Terdistribusi
melibatkan beberapa komputer untuk dapat bekerja bersama-sama dalam suatu
jaringan (network). Secara khusus, bahasa pemrograman Java telah didesain untuk
bekerja dalam lingkungan jaringan. Java mempunyai pustaka kelas (Java class
library) yang besar untuk berkomunikasi menggunakan protokol TCP/IP termasuk
HTTP dan FTP.
4.
Robust
(Kuat).
Java
memberikan banyak tekanan pada pengecekan awal terhadap kemungkinan kesalahan
(error). Kompiler Java dapat mendeteksi lebih dini kesalahan yang mungkin
muncul pada waktu program Java dijalankan (execution time). Dalam menulis
sebuah program, programer juga dituntut untuk bisa menangani exception yaitu
kesalahan yang muncul saat program dijalankan, sehingga program Java tetap
dapat berjalan pada eksekusi normal.
5.
Architecture-Neutral
(Tidak bergantung pada platform tertentu).
Kode
sumber Java (Java source code) yang sudah dirubah ke dalam bytecode Java dapat
dijalankan dengan menggunakan interpreter. Keistimewaan ini menjadikan Java
tidak bergantung pada platform (platform-independent). Dengan Java Virtual
Machine (JVM), Anda hanya menulis program sekali dan dapat menjalankan pada
platform berbeda seperti sistem operasi Microsoft Windows, OS/2, Macintosh,
UNIX dan IBM AS/400.
6.
Dynamic
(Dinamis).
Tidak
seperti bahasa pemrograman berorientasi objek C++ yang memerlukan kompilasi
ulang secara menyeluruh bila kelas di atasnya (parent class) mengalami
perubahan, Java menggunakan metode interfes (interface) untuk menghilangkan
ketergantungan ini, sehingga kelas di bawahnya (child class) atau obyek klien
(client object) tidak akan terpengaruh pada perubahan tersebut.
E.
Aturan dan Hasil Pemrograman JAVA
Aturan penulisan program di Java, Java adalah turunan dari C, sehingga Java memiliki sifat C yaitu Case sensitive, yaitu membedakan antara huruf besar dan kecil dalam sebuah file program di Java, hanya diijinkan memiliki 1 buah class yang bersifat public.
Dalam sebuah file program Java, hanya ada satu method main(method yang pertama kali dibaca oleh interpreter Java).
Nama sebuah file program Java harus sama dengan nama class yang memiliki method main() di dalam tubuhnya. Perhatikan bahwa tulisan nama file dengan nama class (huruf besar maupun kecilnya) haruslah persis sama.
//Nama File Welcome.java
class Welcome
{
public static void main(String args[])
{
System.out.println(“Welcome”);
}
}
Langkah selanjutnya :
1.Simpan dengan nama: Welcome.java
2.compile Welcome.java : javac Welcome.java
3.hasilnya akan menghasilkan : Welcome.class
4.jalankan Welcome.class: java Welcome.class atau java Welcome
5.akan keluar hasil :
" Welcome " (Tanpa Tanda Petik)
Programming Tips :
Dalam penulisan bahasa program, disarankan :
1. Huruf depan dari sebuah class atau method menggunakan huruf besar.
2. Menulis Komentar pada sebuah class atau method untuk memudahkan debug (pencarian kesalahan). Serta mempermudah orang lain membaca program kita.
Dalam dunia nyata, programmer bekerja secara team, jadi di usahakan partner team mengerti apa yang anda buat dengan memberikan komentar pada setiap script yang anda tulis.
class Welcome
{
public static void main(String args[])
{
System.out.println(“Welcome”);
}
}
Langkah selanjutnya :
1.Simpan dengan nama: Welcome.java
2.compile Welcome.java : javac Welcome.java
3.hasilnya akan menghasilkan : Welcome.class
4.jalankan Welcome.class: java Welcome.class atau java Welcome
5.akan keluar hasil :
" Welcome " (Tanpa Tanda Petik)
Programming Tips :
Dalam penulisan bahasa program, disarankan :
1. Huruf depan dari sebuah class atau method menggunakan huruf besar.
2. Menulis Komentar pada sebuah class atau method untuk memudahkan debug (pencarian kesalahan). Serta mempermudah orang lain membaca program kita.
Dalam dunia nyata, programmer bekerja secara team, jadi di usahakan partner team mengerti apa yang anda buat dengan memberikan komentar pada setiap script yang anda tulis.
3.
Membuat indentasi (jarak antara induk perintah dan anak perintah). Identasi
sebisa mungkin dibuat standard, semisal pada contoh diatas, jarak antara
tulisan class Welcome sebagai induk perintah dengan tulisan public sebagai anak
perintah adalah 5 spasi. Sekali lagi, ini untuk mempermudah dalam pemahaman
program.
Input Program
public class belajarjava { // simpan file Java dengan nama belajarjava.java
public static void main ( String [] args ) {
System.out.println (“Selamat Belajar Java “); // menampilkan output ke layar
}
}//Tutup
Hasil OutPut
" Selamat Belajar Java " (Tanpa Tanda Petik)
F.
Contoh
Program JAVA
Berikut
contoh program java kalkulator sederhana
import java.util.*;
public class kalkulator
{
// method operasi kali
public int kali(int a, int b){
int c= a*b;
return c;
}
// method operasi bagi
public float bagi(float a, float b){
float c= a/b;
return c;
}
//method operasi pangkat
public int pangkat(int a, int b){
int c=(int) Math.pow(a,b);
return c;
}
// method untuk input angka
public int inputAngka(){
String a;
int a2=0;
try {
Scanner sc = new Scanner(System.in);
a=sc.nextLine();
a2=Integer.parseInt(a);
}
catch (InputMismatchException e) {
System.err.println("Error: " + e);
}
return a2;
}
// method pemilihan menu dan pemanggilan method2 sesuai pilihan
public void pilihmenu(int pil){
int a=0;
int b=0;
float c=0;
switch(pil){
case 1 :
try
{
Scanner scan=new Scanner(System.in);
int array[]= new int [10];
int awal=0, tot;
for(int i=0;i<100;i++)
{
System.out.println("Masukkan angka ke-"+(i+1));
array[i]=scan.nextInt();
tot=awal+array[i];
awal=tot;
if(tot==-1 || i==9)
{
System.out.println("Total = "+tot);
break;
}
else if(tot>9999 || tot<-9999)
{
throw new IllegalArgumentException();
}
}
}
catch (InputMismatchException err)
{
System.err.println("ERORR INPUT");
}
catch (IllegalArgumentException err)
{
System.err.println("ERROR, jumlah digit tidak boleh lebih dari 5");
}
break;
case 2:
try
{
System.out.println("[Perkalian]");
System.out.print("angka 1: ");
a=this.inputAngka();
System.out.print("angka 2: ");
b=this.inputAngka();
c=this.kali(a,b);
System.out.println("------------ *");
System.out.println("hasil : "+c);
System.out.println();
if (c<-9999 || c>9999)
{
throw new IllegalArgumentException();
}
}
catch (NumberFormatException err)
{
System.err.println("Bukan Angka");
}
catch (IllegalArgumentException err)
{
System.err.println("ERROR, jumlah digit tidak boleh lebih dari 5");
}
break;
case 3 :
try
{
System.out.println("[Pembagian]");
System.out.print("angka 1: ");
a=this.inputAngka();
System.out.print("angka 2: ");
b=this.inputAngka();
c=this.bagi(a,b);
System.out.println("------------ /");
System.out.println("hasil : "+c);
System.out.println();
if (c<-9999 || c>9999)
{
throw new IllegalArgumentException();
}
}
catch (ArithmeticException err)
{
System.err.println("ERROR");
}
catch (NumberFormatException err)
{
System.err.println("Bukan Angka");
}
catch (IllegalArgumentException err)
{
System.err.println("ERROR, jumlah digit tidak boleh lebih dari 5");
break;
}
break;
case 4:
try
{
System.out.println("[Pangkat]");
System.out.print("angka 1: ");
a=this.inputAngka();
System.out.print("angka 2: ");
b=this.inputAngka();
c=this.pangkat(a,b);
System.out.println("------------ /");
System.out.println("hasil : "+c);
if (c<-9999 || c>9999)
{
throw new IllegalArgumentException();
}
}
catch (NumberFormatException err)
{
System.err.println("Bukan Angka");
}
catch (IllegalArgumentException err)
{
System.err.println("ERROR, jumlah digit tidak boleh lebih dari 5");
break;
}
break;
case 5:
System.out.println();
System.out.println("Anda Keluar");
break;
default:
System.out.println("-----------");
System.out.println("Salah Pilih");
System.out.println("-----------");
}
}
public static void main(String[] args)
{
int pil;
kalkulator kal= new kalkulator();
do {
System.out.println();
System.out.println("------------------");
System.out.println("MENU:");
System.out.println("1 Penjumlahan");
System.out.println("2 Perkalian");
System.out.println("3 Pembagian");
System.out.println("4 Pemangkatan");
System.out.println("5 Keluar");
System.out.println("------------------");
System.out.print("Masukkan Pilihan : ");
pil=kal.inputAngka();
kal.pilihmenu(pil);
} while (pil!=5);
}
}
Tidak ada komentar:
Posting Komentar