jam digital

20.21 viia 0 Comments

import javax.swing.*;

import java.awt.event.*;

import java.util.Date;

import java.awt.*;

class modulno3
extends JFrame {

// Deklarasi komponen Label

JLabel tampil_jam = new JLabel();

// Konstruktor

public modulno3() {

tampil_jam.setFont(new Font("Dialog", 1, 30));

this.getContentPane().setLayout(new FlowLayout());

this.getContentPane().add(tampil_jam);

// ActionListener untuk Keperluan Timer

ActionListener taskPerformer = new ActionListener() {

@Override
public void actionPerformed( ActionEvent evt) {

String nol_jam = "";

String nol_menit = "";

String nol_detik = "";

// Membuat Date

Date dt = new Date();

// Mengambil nilaj JAM, MENIT, dan DETIK Sekarang

int nilai_jam = dt.getHours();

int nilai_menit = dt.getMinutes();

int nilai_detik = dt.getSeconds();

// Jika nilai JAM lebih kecil dari 10 (hanya 1 digit)

if (nilai_jam <= 9) {

// Tambahkan “0? didepannya

nol_jam = "0";

}

// Jika nilai MENIT lebih kecil dari 10 (hanya 1 digit)

if (nilai_menit <= 9) {

// Tambahkan “0? didepannya

nol_menit = "0";

}

// Jika nilai DETIK lebih kecil dari 10 (hanya 1 digit)
if (nilai_detik <= 9) {
// Tambahkan “0? didepannya
nol_detik = "0";

}

// Membuat String JAM, MENIT, DETIK

String jam = nol_jam + Integer.toString(nilai_jam);
String menit = nol_menit + Integer.toString(nilai_menit);
String detik = nol_detik + Integer.toString(nilai_detik);
// Menampilkan pada Layar
tampil_jam.setText(" " + jam + " : " + menit + " : " + detik + " ");

}

};

// Timer

new Timer(1000, taskPerformer).start();

}

// MAIN

public static void main(String[] args) {

modulno3 jd = new modulno3();

jd.setTitle("Jam Digital");

jd.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

jd.setSize(200, 90);

jd.show();
String nama = JOptionPane.showInputDialog("Masukkan data nama anda");
String Time = null;

// Double jm=Double.parseDouble(Time);

String keterangan;
double jam = 0;
if(jam >= 00.01 && jam <= 10.00){
keterangan = "Sekarang sudah pagi";
}
else if(jam>=10.01 && jam <= 15.00){
keterangan = "Sekarang sudah siang";
}
else if(jam >= 15.01 && jam <= 18.00){
keterangan = "Sekarang sudah sore";
}
else{keterangan = "Sekarang sudah malam waktunya tidur.. :D";}

JOptionPane.showMessageDialog(null,nama+","+keterangan);

}
}



sesuaikan class

0 komentar:

upper case

20.18 viia 0 Comments

import javax.swing.*;
import java.util.Scanner;
class uppercase {
public static void main(String[] args) {
Scanner s=new Scanner(System.in);
System.out.println("masukkan kata:");
String kata=s.nextLine();
String input=JOptionPane.showInputDialog("Masukan Agka :");
int bilangan=Integer.valueOf(input);
int angka;
int huruf=0;
int jumlahkata=kata.length();
for (int i=0;i
{
char karakter=kata.charAt(i);

if(Character.isLowerCase(karakter)==false && kata !=" ")
{
System.out.println("huruf besar "+karakter);
huruf+=1;
}

}

System.out.println("jadi jumlah huruf besar "+huruf);
System.out.println("jadi jumlah kata:"+jumlahkata);
System.out.println("Program Penentu Bilangan Ganjil - Genap");
if (bilangan%2==0)
System.out.println("Angka "+ bilangan +" = Bilangan Genap"); // menampilkan apabila bilangan Genap
else
System.out.println("Angka "+ bilangan +" = Bilangan Ganjil"); // menampilkan apabila bilangan Ganjil
}
}

0 komentar:

calculator

19.54 viia 0 Comments

Public Class FormCalculator

Dim sign_Indicator As Integer = 0
Dim variable1 As Double
Dim variable2 As Double
Dim addBit As Integer = 0
Dim subBit As Integer = 0
Dim multBit As Integer = 0
Dim divBit As Integer = 0
Dim modBit As Integer = 0
Dim powerBit As Integer = 0
Dim permBit As Integer = 0
Dim combBit As Integer = 0
Dim andBit As Integer = 0
Dim orBit As Integer = 0
Dim xorBit As Integer = 0
Dim powerFunctionBit As Integer = 0
'Dim trigFunctionBit As Integer = 0
'Dim HypertrigFunctionBit As Integer = 0
'Dim InversetrigFunctionBit As Integer = 0
'Dim otherFuncsBit As Integer = 0
'Dim logicalFuncsBit As Integer = 0
' Dim memFuncsBit As Integer = 0
Dim fl As Integer = 0
Dim memoryVariable As Double = 0
'Dim scientificModeBit As Integer = 0

Private Sub btn0_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn0.Click
If sign_Indicator = 0 Then
displayText.Text = displayText.Text & CStr(0)
ElseIf sign_Indicator = 1 Then
displayText.Text = 0
sign_Indicator = 0
End If
fl = 1
End Sub

Private Sub btn1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn1.Click
If sign_Indicator = 0 Then
displayText.Text = displayText.Text & CStr(1)
ElseIf sign_Indicator = 1 Then
displayText.Text = 1
sign_Indicator = 0
End If
fl = 1
End Sub

Private Sub btn2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn2.Click
If sign_Indicator = 0 Then
displayText.Text = displayText.Text & CStr(2)
ElseIf sign_Indicator = 1 Then
displayText.Text = 2
sign_Indicator = 0
End If
fl = 1
End Sub

Private Sub btn3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn3.Click
If sign_Indicator = 0 Then
displayText.Text = displayText.Text & CStr(3)
ElseIf sign_Indicator = 1 Then
displayText.Text = 3
sign_Indicator = 0
End If
fl = 1
End Sub

Private Sub btn4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn4.Click
If sign_Indicator = 0 Then
displayText.Text = displayText.Text & CStr(4)
ElseIf sign_Indicator = 1 Then
displayText.Text = 4
sign_Indicator = 0
End If
fl = 1
End Sub

Private Sub btn5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn5.Click
If sign_Indicator = 0 Then
displayText.Text = displayText.Text & CStr(5)
ElseIf sign_Indicator = 1 Then
displayText.Text = 5
sign_Indicator = 0
End If
fl = 1
End Sub

Private Sub btn6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn6.Click
If sign_Indicator = 0 Then
displayText.Text = displayText.Text & CStr(6)
ElseIf sign_Indicator = 1 Then
displayText.Text = 6
sign_Indicator = 0
End If
fl = 1
End Sub

Private Sub btn7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn7.Click
If sign_Indicator = 0 Then
displayText.Text = displayText.Text & CStr(7)
ElseIf sign_Indicator = 1 Then
displayText.Text = 7
sign_Indicator = 0
End If
fl = 1
End Sub

Private Sub btn8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn8.Click
If sign_Indicator = 0 Then
displayText.Text = displayText.Text & CStr(8)
ElseIf sign_Indicator = 1 Then
displayText.Text = 8
sign_Indicator = 0
End If
fl = 1
End Sub

Private Sub btn9_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn9.Click
If sign_Indicator = 0 Then
displayText.Text = displayText.Text & CStr(9)
ElseIf sign_Indicator = 1 Then
displayText.Text = 9
sign_Indicator = 0
End If
fl = 1
End Sub

Private Sub displayText_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles displayText.KeyPress
e.Handled = True
If e.KeyChar Like "[0-9]" Or e.KeyChar = Chr(&H8) Then
e.Handled = False
End If
End Sub

Private Sub btnSign_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSign.Click
If displayText.Text.Length = 0 Then
displayText.Text = displayText.Text + CStr("-")
ElseIf displayText.Text <> "." Then
displayText.Text = displayText.Text * -1
End If
End Sub

Private Sub btnClearAll_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClearAll.Click
displayText.Clear()
sign_Indicator = 0
variable1 = 0
variable2 = 0
memoryVariable = 0
reset_SignBits()
End Sub

Private Sub btnClearTextbox_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClearTextbox.Click
displayText.Clear()
End Sub
Private Function reset_SignBits()
addBit = 0
subBit = 0
multBit = 0
divBit = 0
modBit = 0
powerBit = 0
permBit = 0
combBit = 0
andBit = 0
orBit = 0
xorBit = 0
fl = 0
Return 0
End Function

Private Function permutation(ByVal variable1, ByVal variable2)
Dim result As Double
result = Factorial(variable1) / Factorial(variable1 - variable2)
Return result
End Function

Private Function combination(ByVal variable1, ByVal variable2)
Dim result As Double
result = Factorial(variable1) / (Factorial(variable2) * Factorial(variable1 - variable2))
Return result
End Function
Private Function Calculate()
If displayText.Text <> "." Then

variable2 = displayText.Text
If fl = False Then
variable1 = variable2
ElseIf addBit = 1 Then
variable1 = variable1 + variable2
ElseIf subBit = 1 Then
variable1 = variable1 - variable2
ElseIf multBit = 1 Then
variable1 = variable1 * variable2
ElseIf divBit = 1 Then
variable1 = variable1 / variable2
ElseIf modBit = 1 Then
variable1 = variable1 Mod variable2
ElseIf powerBit = 1 Then
variable1 = Math.Pow(variable1, variable2)
ElseIf permBit = 1 Then
variable1 = permutation(variable1, variable2)
ElseIf combBit = 1 Then
variable1 = combination(variable1, variable2)
ElseIf andBit = 1 Then
variable1 = variable1 And variable2
ElseIf orBit = 1 Then
variable1 = variable1 Or variable2
ElseIf xorBit = 1 Then
variable1 = variable1 Xor variable2
Else
variable1 = variable2
End If
displayText.Text = CStr(variable1)

End If
Return 0
End Function

Private Sub btnAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAdd.Click
If displayText.Text.Length <> 0 Then
Calculate()
reset_SignBits()
addBit = 1
sign_Indicator = 1
End If
End Sub

Private Sub btnSub_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSub.Click

If displayText.Text.Length <> 0 Then
variable2 = displayText.Text
Calculate()
reset_SignBits()
subBit = 1
sign_Indicator = 1
End If
End Sub

Private Sub btnMult_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnMult.Click
If displayText.Text.Length <> 0 Then
Calculate()
reset_SignBits()
multBit = 1
sign_Indicator = 1
End If
End Sub

Private Sub btnDiv_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDiv.Click
If displayText.Text.Length <> 0 Then
Calculate()
reset_SignBits()
divBit = 1
sign_Indicator = 1
End If
End Sub

Private Sub btnModulus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnModulus.Click
If displayText.Text.Length <> 0 Then
Calculate()
reset_SignBits()
modBit = 1
sign_Indicator = 1
End If
End Sub

Private Sub btnPower_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnPower.Click
If displayText.Text.Length <> 0 Then
Calculate()
reset_SignBits()
powerBit = 1
sign_Indicator = 1
End If
End Sub
Private Sub btnEqual_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEqual.Click

If displayText.Text.Length <> 0 Then
Calculate()
reset_SignBits()
End If
sign_Indicator = 1
End Sub

Private Sub btnDecimal_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDecimal.Click
Dim i As Integer
Dim chr As Char
Dim decimal_Indicator As Integer = 0

If sign_Indicator <> 1 Then
For i = 0 To displayText.Text.Count - 1
chr = displayText.Text(i)
If chr = "." Then
decimal_Indicator = 1
End If
Next

If decimal_Indicator <> 1 Then
displayText.Text = displayText.Text & CStr(".")
End If
End If
End Sub

Private Sub btnBackSpace_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBackSpace.Click
If displayText.Text.Length <> 0 Then
displayText.Text = displayText.Text.Remove(displayText.Text.Length - 1, 1)
End If
End Sub














Private Sub btnsqrt_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnsqrt.Click
If displayText.Text.Length <> 0 Then
If displayText.Text <> "." Then
displayText.Text = Math.Sqrt(displayText.Text)
End If
sign_Indicator = 1
End If
End Sub

Public Function Factorial(ByVal temp)
Dim result As Double = temp
If temp = 0 Then
Return 1
Else
For i = temp - 1 To 1 Step -1
result = result * i
Next
End If
Return result
End Function

Private Sub btnSquare_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSquare.Click
If displayText.Text.Length <> 0 Then
displayText.Text = displayText.Text * displayText.Text
End If
sign_Indicator = 1
End Sub

Private Sub btnCube_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCube.Click
If displayText.Text.Length <> 0 Then
displayText.Text = displayText.Text * displayText.Text * displayText.Text
End If
sign_Indicator = 1
End Sub

Private Sub btnxPower4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnxPower4.Click
If displayText.Text.Length <> 0 Then
displayText.Text = displayText.Text * displayText.Text * displayText.Text * displayText.Text
End If
sign_Indicator = 1
End Sub

Private Sub btnM_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnM.Click
If displayText.Text.Length <> 0 Then
If memoryVariable = 0 Then
memoryVariable = CDbl(displayText.Text)
End If
End If
sign_Indicator = 1
displayText.Text = CStr(memoryVariable)
End Sub

Private Sub btnMplus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnMplus.Click
If memoryVariable <> 0 Then
memoryVariable = memoryVariable + memoryVariable
End If
sign_Indicator = 1
displayText.Text = CStr(memoryVariable)
End Sub

Private Sub btnMminus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnMminus.Click
If memoryVariable <> 0 Then
memoryVariable = memoryVariable - memoryVariable
End If
sign_Indicator = 1
displayText.Text = CStr(memoryVariable)
End Sub
End Class

0 komentar:

kebiasaan di moklet dan sebuah harapan

21.22 viia 0 Comments

Bicara tentang kebiasaan moklet banyak banget .Katanya si ya sifat anak moklet itu rajin,sopan,patuh sama guru pokoknya siswa moklet yang dlu sipp lah .. aku ga tau pasti banyak yang bilang seperti itu . Tapi makin tua umur moklet akhirnya sifat dari anak moklet itu sendiri mulai ada yang ilang . Apalagi masalah kesopanan , udah mulai ilang tuh . Dibilang banyak tugas bener banget tapi tugas itu berguna banget untuk masa depan, kalo rajin ngerjakan tugas kalo udah kerja pasti cepet ngerjain tugas yang disuru oleh bos .
Moklet sekolah yang beda dari yang lain , banyak anak yang sekolah di situ berasal dari luar malang . Masuk sekolah pun pagi banget . Beda banget dah sama sekolah lain . Biasanya kalo lagi gak ada kerjaan anak cowo pada main dota atau ada juga yang dengerin lagu ,internetan ,dll .
Berharap nama moklet tetap terus terkenal sebagai sekolah IT . Siswanya tetap selalu menjaga perilaku, "attitude is everything" . Tetap menjaga kesenioritasan ,dari mulai angkatan 1 sampai sekarang.Dan sebuah impian mempunyai sebuah program dengan nama java moklet bisa terkenal sampai ke mancanegara. AMIN

0 komentar:

impian

21.02 viia 0 Comments

Berharap java moklet bisa jadi aplikasi yang paling banyak di minati semua orang mulai dari kalangan atas sampai kalangan bawah .Mudah di dapatkan dimana saja . Lebih kreatif dan berinovasi meluncurkan program baru , dan nama moklet pun terkenal sampai mancanegara . hahaha . Gak bisa bayangin dah . Semoga keinginan dan harapan tersebut bisa terkabul , entah 5 tahun atau lebih . AMIN

0 komentar:

menjalankan program java

20.56 viia 0 Comments


1. jika belum menggunakan notepad ++ maka install terlebih dahulu
2. Kemudian save file tersebut dengan nama youtube.java . dan letakkan folder tersebut di local disk c (hardisk yang tempat instalan program) kemudian buat folder baru dan beri nama new folder ketikkan
class apples{
public static void main(String args[]) {
system.out.println("Hello youtube!");
}
}
3. Buka command prompt ketikkan cd \ kemudian ketikkan dir
4. Kemudian ketikkan pada cmd cd new folder lalu ketikkan dir dan lihat di situ youtube.java sudah muncul apa belum, jika seperti di bawah ini maka java tersebut sudah berhasil
5. Kemudian ketikkan pada cmd javac youtube.java jika tidak terdapat eror maka sudah berhasil .
6. Ketikkan pada cmd java apples maka akan muncul “Hello youtube !”

bisa di jalankan di linux lho ....

0 komentar:

tutorial menginstal JDK ( java development kit )

20.00 viia 0 Comments


1. Jika belum mempunyai instalan JDK maka bisa download dengan cara buka website java.sun.com .
2. Cari layanan download kemudian pilih JAVA SE kemud
ian pilih JDK 6 Update 13 with JAVAFX SDK.
3. Unutk mengetahui apakah java sudah terinstal apa belum maka kita buka command prompt kemudian ketikkan javac . Jika muncul seperti di bawah ini maka java belum terinstal

4. install JDK tersebut ikuti sesuai procedure
5. kemudian buka command prompt lagi dan ketikkan javac. Jika muncul seperti diatas maka belum terinstal .
6. buka local disk c ( hardisk tempat program di install ) kemudian buka program files kemudian buka folder java lalu buka folder bin , cari file sesuka anda kemudian klik kanan properties lalu copy location file tersebut
7. klik kanan my computare kemudian pilih advance kemudian pilih Environment Variables I gambakemudian akan muncul seperti gambar di bawah ini .
Klik new sesuai dengan yang di tunjuk kemudian ketikkan variable name dengan nama Path Kemudian variable valuenya diisi hasil copy (hasil copyannya dari folder bin kemudian memilih satu file yang selanjutnya location dari file trsebut di copy lalu di paste di variable value)
8. nama variable path tersebut masuk user variable for acer
Kemudian klik ok .
9. kemudian buka cmd kembali lalu ketikkan
javac akan muncul seperti bawah ini tapi jika gagal maka ulangi langkah-langkah seperti diatas sampai berhasil
10. java sudah siap di jalankan

0 komentar:

Attitude is Everything

18.00 viia 0 Comments

“Attitude is a little thing, but can make big differences”(Sikap adalah suatu hal kecil, tetapi dapat menciptakan perbedaan yang besar)

Helen Keller adalah wanita yang kehilangan fungsi indra pendengaran dan penglihatan sejak usia 19 bulan. Namun ketika sadar akan kondisi dirinya, ia masih

selalu bersyukur kepada Tuhan Yang Maha Esa. "Aku berterima kasih kepada Tuhan atas segala cacatku. Karena cacat yang kuderita, aku berhasil menemukan diriku sendiri, pekerjaanku dan Tuhanku," kata sarjana lulusan Harvard University di Amerika itu. Dengan kekuatan imannya, ia pun dapat melakukan fungsinya sebagai manusia secara optimal, yakni sebagai seorang penulis karya sastra dan guru bagi orang-orang buta dan tuli.
Letakkan satu standar yang lebih tinggi, sehingga potensi diri kita dapat ditingkatkan. William Faulkner, seorang novelis peraih hadiah nobel, mengatakan, "Impikan dan bidiklah selalu lebih tinggi daripada yang Anda sanggupi. Janganlah hanya bercita-cita lebih baik daripada pendahulu atau sesama Anda. Cobalah menjadi lebih baik daripada diri sendiri."

Artinya, kita senantiasa memerlukan impian sebagai kontrol terhadap sikap dan mencapai kemajuan hidup yang berarti.Selain impian, ada satu hal yang penting disini yaitu antusiasme. Kata itu berasal dari bahasa Yunani, yaitu en theos artinya God in you –Tuhan bersamamu- Disaat kita sedang bersemangat, pada saat itulah Tuhan senantiasa mendampingi kita. Dengan semangat itulah manusia menciptakan impian yang lebih besar, berusaha memperoleh kemajuan-kemajuan serta mencapai sukses. Elbert Hubbart pun menegaskan, "Nothing great has ever been accomplished without enthusiasm.” (Tidak ada satupun kemajuan menakjubkan untuk diraih tanpa antusiasme.) Semangat dapat terus ditingkatkan dengan mengisi setiap detik waktu kita dengan kebiasaan-kebiasaan yang konstruktif. Kebiasaan-kebiasaan positif itu diantaranya mendengar, membaca, berbicara dan bergaul dengan orang yang positif. Jika seseorang dapat mempertahankan dan meningkatkan semangat hidup dalam dirinya, maka sikapnya menjadi lebih terarah hingga dapat menikmati hal-hal yang benar-benar menakjubkan di dunia ini. Sikap yang benar-benar didasari oleh faktor-faktor spiritual, impian dan antusiasme yang kuat pada kenyataannya selalu positif. Sikap positif itu sendiri sangat mempengaruhi seseorang untuk dapat mengekplorasi seluruh potensi diri dan meraih kesuksesan maupun kebahagiaan. Sikap ternyata yang terpenting bagi kemajuan atau kebahagiaan Anda saat ini dan di masa-masa yang akan datang.

0 komentar:

Teknologi Java

15.20 viia 0 Comments

JAVA adalah salah satu bahasa pemrograman komputer yang berorientasi objek, diciptakan oleh satu tim di Sun Microsystem, perusahan workstation UNIX yang cukup terkenal. JAVA diciptakan berdasarkan bahasa C++, dengan tujuan “platform independent” (dapat dijalankan pada berbagai jenis hardware tanpa kompilasi ulang), dengan slogan “Write Once Run Anywhere” (WORA). Dibandingkan dengan bahasa C++ maka JAVA pada hakekatnya lebih sederhana, dan memakai objek secara murni.

Sebagai perkenalan aplikasi maka tim pengembang Java menciptakan HotJava, suatu aplikasi yang ditulis dalam bahasa JAVA. HotJava adalah aplikasi “Web-Browser” yang mampu menjalankan program-program JAVA yang disebut “Applet” pada halaman Web. Munculnya JAVA telah meransang munculnya dinamika dalam dunia Web, tidak statis lagi, dan bisa memberi layanan interaktif. Dewasa ini semua Web-Browser sudah menunjang aplikasi JAVA bahkan kemunculan Java telah memicu munculnya hal-hal baru seperti JavaScript, Visual J++, Active-X dll, yang berusaha menandingi kekuatan JAVA dalam dunia Web.

Walaupun aplikasi-aplikasi JAVA umumnya dirancang untuk Web, namun pada hakekatnya JAVA adalah bahasa “general purpose” yang bisa dipakai untuk menulis program pada umumnya seperti pada bahasa C dan C++.

James Gosling

James Gosling

Bahasa JAVA tidak muncul secara tiba-tiba, atau karena penemuan aksidental. Asal usul JAVA dimulai pada tahun 1991 ketika Sun MicroSystem sedang melakukan eksperimen penelitian pada produk elektronika. James Gosling (kepala proyek penelitian) beserta Patrick Naughton ditugaskan untuk merancang perangkat lunak yang independent, tidak bergantung pada jenis perangkat keras agar bisa dipakai pada berbagai peralatan elektronik. James Gosling kemudian memakai bahasa C++ namun ternyata dia mengalami berbagai kesulitan, oleh karena itu suatu bahasa baru diciptakan yang didasarkan pada C++ namun dengan beberapa perbaikan. Bahasa ini kemudian disebut Oak, dan dipakai untuk membuat perangkat lunak cerdas bagi peralatan-peralatan elektronik buatan Sun MicroSystem. Pada tahun 1994 ketika Web mulai populer, maka nama bahasa Oak kemudian diganti menjadi JAVA (salah satu sebabnya karena ternyata nama Oak terlebih dahulu telah dipakai untuk hal yang lain, kemudian nama JAVA kelihatannya belum ada yang pakai hanya dipakai untuk nama kopi panas, dan menurut Gosling nama ini cukup “cool”, Gosling ter-inspirasi menggunakan nama Java ketika sedang meminum kopi). JAVA kemudian dipakai untuk membuat suatu browser yang bernama WebRunner, setelah berhasil browser ini kemudian disebut HotJava dengan simbol secangkir kopi panas.

Tahun 1995 merupakan tahun yang paling penting bagi bahasa Java. JAVA dan HotJava kemudian diumumkan di Web, versi Alpha dirilis pada awal tahun 1995. JAVA pada awalnya hanya diperuntukkan bagi SPARC Solaris, kemudian di-implementasikan juga pada Windows NT, dan pada musim panas 1995 baru di-implementasi untuk Windows 95 dan Linux. JAVA versi Beta 1 diumumkan pada musim gugur 1995, kemudian disusul dengan versi Beta 2 pada bulan Desember, pada saat yang sama MicroSoft dan IBM menyatakan dukungan mereka terhadap teknologi JAVA.

Pada tanggal 23 Januari 1996, JAVA 1.0 resmi diumumkan dan disediakan pada Web untuk di-download, kemudian NetScape 2.0 salah satu browser terkenal mengadopsi JAVA dan JAVASCRIPT. Perkembangan JAVA tidak berhenti disana, berbagai teknologi yang berkaitan kini telah diperkenalkan, seperti J2EE (Java 2 Enterprise Edition), JavaBean, Java Server Page (JSP), dan JME (Java Mobile Edition).

Salah satu kemampuan dari bahasa JAVA adalah pemakaian Applet pada halaman Web untuk suatu bentuk interaksi dengan pengunjung situs Web, misalnya seperti yang ditampilkan pada salah satu halaman Web berikut ini dimana Applet dipakai untuk belajar sejarah Mesir.

Karakteristik JAVA

Menurut definisi yang diberikan oleh Sun MicroSystem, JAVA adalah bahasa pemrograman yang simple, object-oriented, distributed, interpreted, robust, secure, architecture neutral, portable, high-performance, multithreaded, dan dynamic.

Java bahasa yang simple: rancangan bahasa Java dibust sedemikian rupa sehingga dengan cepat dapat dikenali dan dipahami oleh programmer pertama karena mirip dengan bahasa C / C++ dan yang kedua lebih sederhana dari C/C++ dalam beberapa hal, karena hal-hal yang sulit pada C/C++ sudah dihilangkan pada Java, misalnya pemakaian pointer.

Java bahasa yang simple: rancangan bahasa Java disebut sedemikian rupa sehingga dengan cepat dapat dikenali dan dipahami oleh programmer pertama karena mirip dengan bahasa C / C++ dan yang kedua lebih sederhana dari C/C++ dalam beberapa hal, karena hal-hal yang sulit pada C/C++ sudah dihilangkan pada Java, misalnya pemakaian pointer.

Java adalah bahasa yang object-oriented : konsep objek diterapkan pada pembuatan program Java, bahkan Java menggunakan konsep objek ini secara murni, sehingga tidak mungkin seseorang membuat program Java tanpa mendefinisikan class dan menggunakan object.

Java adalah bahasa yang distributed : bahasa Java dirancang sedemikian rupa sehingga mendukung pembuatan aplikasi dalam jaringan komputer. Java menyediakan beberapa kelas-objek untuk mendukung aplikasi jaringan yang dihimpun dalam paket java.net.

Java adalah bahasa yang robust : rancangan Java dibuat sehingga mengurangi kemungkinan program menjadi beku (freeze) ketika dijalankan, kemungkinan error diminimalkan, misalnya dengan menerapkan strong-typed sehingga program bisa terhindar dari kesalahan karena tipe data yang keliru. Java menerapkan pula model memory yang dapat mencegah memory yang corrupt dan overwrited, misalnya dengan membuang pemakaian pointer.

Java adalah bahasa yang secure : secara otomatis Java menerapkan pengamanan terhadap aplikasi sehingga mengurangi kemungkinan adanya serangan dari pengguna jaringan.

Java adalah bahasa yang architecture neutral : program Java yang telah di-kompilasi dapat dijalankan pada berbagai mesin dan tidak bergantung pada satu arsitektur komputer saja.

Java adalah bahasa yang portable : program Java sangat mudah dipindahkan dari satu mesin ke mesin lain tanpa di-kompilasi ulang, karena pada hakekatnya ketika di-kompilasi maka program Java diubah kedalam format bytecode yang diterima oleh semua mesin, kemudian pada setiap mesin ini tersedia Java-run-time atau Java-virtual-machine (JVM) yang dapat menjalankan bytecode.

Java adalah bahasa yang high-performance : pada hakekatnya program C yang telah dikompilasi berjalan jauh lebih cepat dari Java, karena hasil kompilasi C adalah bahasa mesin dari komputer yang dipakai meng-kompilasi, namun hasil kompilasi ini belum tentu bisa jalan pada komputer yang berbeda arsitektur. Program Java dikompilasi menjadi bytecode yang bisa jalan diberbagai mesin, namun ketika dijalankan bytecode ini harus diterjemahkan oleh JVM kedalam bahasa mesin yang sesuai, sehingga lebih lambat dari C, namun karena Java dapat digunakan pada jaringan komputer yang kenyataan-nya tidak terlalu cepat karena hambatan saluran komunikasi maka program Java masih terasa cukup cepat.

Java adalah bahasa yang multithreaded : Java dirancang untuk menangani berbagai aplikasi yang jalan secara bersamaan, misalnya memainkan lagu, sambil melakukan download, dan pengguna sedang melakukan scrolling pada window yang diamati-nya. Kejadian ini yang disebut multithreaded.

Java adalah bahasa yang dynamic : bahasa Java dirancang untuk ber-adaptasi dengan lingkungannya yang dapat berubah dengan cepat, Java dapat memanggil berbagai kelas-objek pada saat dibutuhkan, walaupun harus melalui jaringan, disamping itu Java memiliki representasi run-time sehingga objek yang sedang digunakan oleh suatu aplikasi dapat diperiksa berasal dari kelas yang mana melalui informasi run-time.

JAVA : Kompilator dan Interpreter

Sebelum bahasa Java diperkenalkan sebagai bahasa pemrograman maka pada umumnya bahasa program seperti Pascal, C, dan C++ menggunakan kompilator untuk menterjemahkan program menjadi bahasa assembly atau bahasa mesin. Bahasa BASIC dikenal sebagai bahasa interpreter dimana program tidak di-kompilasi tetapi langsung diterjemahkan oleh interpreter pada saat baris program diketik kedalam memory komputer.

Bahasa Java pada hakekatnya menggunakan kedua teknik tersebut, kompilator dan juga interpreter. Ketika program Java yang sedang di-edit akan di-rekam maka nama file-nya harus memiliki ekstensi .java. File source ini kemudian di-kompilasi dengan kompilator javac menjadi file bytecode, bukan assembly dan bukan bahasa mesin. Hasil kompilasi ini dalam bytecode tersimpan dalam file dengan ekstensi .class, file ini tidak bisa dijalankan (eksekusi) karena bukan bahasa mesin atau assembly.

Diperlukan suatu interpreter untuk menjalankan file .class hasil kompilasi, interpreter ini bisa termuat dalam Web-browser yang telah meng-adopsi Java untuk menjalankan Java Applet, atau bisa dalam bentuk interpreter java.exe untuk menjalankan aplikasi java.

Interpreter Java biasa disebut sebagai JVM (Java Virtual Machine) yang disediakan oleh Sun Microsystem untuk setiap platform, dengan teknik ini maka program Java bisa berslogan WORA, karena program yang di-distribusi adalah hasil kompilasi .class yang bentuknya sama untuk setiap platform, kemudian nanti setelah .class ini mau dijalankan, maka barulah di-interpret oleh masing-masing JVM yang ada pada setiap platform.


0 komentar: