Minggu, 14 Oktober 2012

Bahasa Pemrograman JAVA

Hy Guys,,,
Yuukz Kita belajar bahasa pemrograman Java dan juga Konsep dasarnya,,
Didalam Bahasa pemrograman java kita harus mengenal dulu dasar-dasarnya,, mulai dari Apa itu JAVA??? kelebihan-kelebihannya,, mengapa kita harus belajar Java?? de-el-el ^^
Ok lanjooott kita cari tau apa itu JAVA?????
Java sebagai salah satu bahasa pemrograman baru menjanjikan banyak kemudahan bagi programer junior maupun senior. Tutorial ini akan membawa Anda mengenal lebih jauh bahasa ini melalui pembahasan konsep model perancangan dan petunjuk sederhana penggunaannya..

Apakah JAVA????
java adalah salah bahasa pemrogaman yang paling terkenal di dunia. nama java di ambil dari kopi kesukaan james gosling. konon katanya kopinya berawal dari jawa, dalam bahasa inggris java berartikan jawa. pengertian 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. itu adalah sedikit  sejarah dari java.

Kelebihan JAVA,,,''''''

*Ada beberapa keunggulan Java yang membuatnya menjadi salah satu bahasa pemrograman utama [Horstmann]:

Sederhana:  perbaikan dari C++. Tidak  tidak ada header file, pointer, operator overloading, multiple inheritance. Walaupun demikian, Java masih lebih rumit dan lebih sulit dipelajari dibandingkan VB dan PHP.

Object Oriented: Mirip dengan C++, kecuali untuk multiple inheritance yang diganti Java dengan Interface.
Network-Savvy: Mudah untuk membuat program yang memanfaatkan TCP/IP, HTTP dan FTP.
Berkinerja tinggi: JIT (Just In Time) compiler merubah bytecode menjadi machine code sehingga aplikasi dapat dijalankan lebih cepat.

Robust: Mengurangi error dengan menghilangkan pointer dan melakukan early checking.

Multithreaded: Multithreading mudah dilakukan di Java, fitur ini sangat bermanfaat untuk memaksimalkan multicore processor.

Aman: mencegah overruning runtime stack, corrupting memory, read dan write file tanpa ijin.

Architecture Neutral dan Portable: Menggunakan virtual machine dengan byte code, memudahkan Java untuk digunakan di mesin lain. Code Java akan dicompile menjadi byte code (.class)  yang kemudian dijalankan oleh JVM (Java Virtual Machine).

Kekurangan JAVA,,,""""
  • 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.
  • 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.
  • 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.


FITUR JAVA
       Java api menyediakan fitur-fitur yang menarik bagi yang ingin menggunakan Java untuk mengembangkan aplikasi. Ada berbagai fitur yang ditawarkan oleh Java api antara lain sebagai berikut :
• Applet
        Java applet merupakan program Java yang berjalan di atas browser. Dengan menggunakan Java applet, maka halaman html akan lebih dinamis dan menarik, sangat cocok untuk pengembangan aplikasi-aplikasi berbasis web.

• Java networking
        Java networking merupakan sekumpulan api (application programming interface). Yang menyediakan fungsi-fungsi untuk aplikasi-aplikasi jaringan. Java networking menyediakan akses untuk tcp, udp, ip address dan url. Java networking tidak menyediakan akses untuk icmp dikarenakan alasan keamanan dan pada kondisi umum hanya administrator (root) yang bisa memanfaatkan protokol icmp.

• Java database connectivity (jdbc)
       Jdbc menyediakan sekumpulan api yang dapat digunakan untuk mengakses database seperti oracle, mysql, postgresql, microsoft sql server.

• Java security
        Java security menyediakan sekupulan api untuk mengatur security dari aplikasi Java baik secara high-level ataupun low-level, seperti public private key management dan certificates.

• Java swing
      Java swing menyediakan sekumpulan api untuk membangun aplikasiaplikasi gui (graphical user interface) dan model gui yang diinginkan bisa bermacam-macam, bisa model Java, model motif/cde atau model yang dependent terhadap platform yang digunakan.

• Java rmi
        Java rmi menyediakan sekumpulan api untuk membangun aplikasiaplikasi Java yang mirip dengan model rpc (remote procedure call) jadi object-object Java bisa di-call (dipanggil) secara remote (acak) pada jaringan komputer.

• Java 2d/3d
         Java 2d/3d menyediakan sekumpulan api untuk membangun grafik-grafik 2d/3d yang menarik dan juga akses ke printer.

• Java server pages
       Berkembang dari Java servlet yang digunakan untuk menggantikan aplikasi-aplikasi cgi, jsp (Java server pages) yang mirip asp dan php merupakan alternatif terbaik untuk solusi aplikasi internet.

• Jni (Java native interface)
        Jni menyediakan sekumpulan api yang digunakan untuk mengakses fungsi-fungsi pada library (*.dll atau *.so) yang dibuat dengan bahasa pemrograman yang lain seperti C, C++, dan basic.

• Java sound
         Java sound menyediakan sekumpulan api untuk manipulasi sound.

• Java idl + corba
        Java idl (interface definition language) menyediakan dukungan Java untuk implementasi corba (common object request broker) yang merupakan model distributed-object untuk solusi aplikasi besar di dunia networking.

• Java card
         Java card utamanya digunakan untuk aplikasi-aplikasi pada smart card, yang sederhana wujudnya seperti sim card pada handphone.

• Jtapi (Java telephony api)
         Java telephony api menyediakan sekumpulan api untuk memanfaatkan devices-devices telephony, sehingga akan cocok untuk aplikasi-apliaksi cti (computer telephony intergration) yang dibutuhkan seperti acd (automatic call distribution), pc-pbx dan lainnya.


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:
    • java.lang: Peruntukan kelas elemen-elemen dasar.
    • java.io: Peruntukan kelas input dan output, termasuk penggunaan berkas.
    • java.util: Peruntukan kelas pelengkap seperti kelas struktur data dan kelas kelas penanggalan.
    • java.net: Peruntukan kelas TCP/IP, yang memungkinkan berkomunikasi dengan komputer lain menggunakan jaringan TCP/IP.
    • java.awt: Kelas dasar untuk aplikasi antarmuka dengan pengguna (GUI)
    • java.applet: Kelas dasar aplikasi antar muka untuk diterapkan pada penjelajah web.

Mengapa belajar Java?
Akibat hal-hal yang disebutkan diatas, (dan kurangnya persaingan)  Java digunakan di berbagai kalangan industri. Gambar dibawah adalah lowongan di bidang IT di Indonesia yang mengandung keyword “Java” (id.jobsdb.com, diambil 17 mei 09).


 Terdapat 49 lowongan yang terkait dengan Java. Bandingkan dengan yang lain: 48 lowongan PHP, 26 ASP, 8 C++, 7 C#, 0 Ruby, 0 Phyton dan 11 VB.  Walaupun dari jumlah lowongan PHP setara dengan Java, gaji programmer Java umumnya lebih tinggi.

Java Platform
Java mencakup banyak aspek sehingga dapat membingungkan. Istilah-istilah seperti J2SE, J2EE, J2ME, Struts, Spring, Seam, Servlet, Applet, Hibernate, Ibatis,  Pojo, JSF, JPA dapat terlihat mengerikan. Kuncinya adalah tidak semua hal mengenai Java harus dipelajari sekaligus.  Yang terpenting adalah dasarnya dulu, kemudian yang lain dapat dipelajari sesuai dengan kebutuhan.

Eclipse
Eclipse adalah IDE (Integrated Development Environment) yang digunakan untuk memudahkan pengembangan aplikasi Java. Selain Eclipse terdapat IDE lain seperti Netbeans, IntelliJ dan Jbuilder.

Walaupun Netbeans adalah IDE yang paling mudah digunakan langsung setelah diinstall (out of the box), tapi Eclipse lebih mudah dicustomize melalui plugin dan memiliki komunitas yang lebih luas dan tidak dimiliki oleh sebuah perusahaan tertentu (Netbeans dimiliki oleh Oracle). Oleh karena itu tutorial ini akan menggunakan Eclipse Java IDE yang dapat di-download di eclipse.org.


#Memulai Pemrograman Java
Untuk membuat program Java, seperti telah disebutkan sebelumnya, Anda membutuhkan JDK. Proses instalasi JDK tersebut sangat mudah dan tidak membutuhkan pengetahuan tertentu. Namun untuk menggunakannya Anda perlu melakukan beberapa penyesuaian dengan sistem operasi Anda. Umumnya yang perlu Anda lakukan adalah memasukkan path ke direktori JDK Anda ke setting path pada sistem operasi Anda. Misalkan direktori JDK Anda adalahC:\jdk1.4 maka pada Windows 98 Anda cukup menambahkan baris perintah SET PATH=C:\jdk1.4\bin pada file autoexec.bat Anda. Untuk Windows NT/2000/XP Anda cukup menambahkan direktori C:\jdk1.4\bin pada variabel pathdi System Environment. Caranya: klik kanan ikon My Computer, pilih Properties. Kemudian pilih tab Advanced. Lalu klik tombol Environment Variables, cari variabel path, kemudian tambahkan path direktori JDK Anda ke dalam variabel tersebut. Untuk Linux, tambahkan baris perintah SET CLASSPATH=(direktori jdk Anda) ke file profile Anda. Untuk mencoba JDK, ketikkan perintah java dan javac pada shell prompt (atau DOS Command Prompt). Jika perintah tersebut sudah dikenali maka program java atau javac akan menampilkan sintaks penggunaan. Untuk kemudahan dan berbagai fasilitas tambahan Anda dapat menggunakan Integrated Development Environment (IDE) untuk bahasa Java seperti Visual CafĂ© dari Symantec atau JBuilder dari Borland.
Urutan langkah-langkah yang harus Anda lakukan untuk membuat sebuah program Java sederhana adalah:

    1. Membuat source code program dengan editor teks apapun. Ingat, file tersebut harus berekstensi .java dan case sensitive.
  1. Mengkompile source code dengan perintah javac. Misalnya: javac HelloWorld.java. Jika berhasil, hasilnya adalah file bytecode berakhiran .class.
  2. Mengeksekusi bytecode dengan perintah java. Parameter dari perintah ini adalah nama file hasil kompilasi tanpa ekstensi .class. Contoh: java HelloWorld.
Source Code
Berikut kode untuk HelloWorld.java:
public class HelloWorld

{

public static void main(String[] args)
{
System.out.println("Apa Kabar Dunia?");
}
}
Dan ini sebuah contoh lain, yaitu applet sederhana untuk menampilkan teks di applet. Sebutlah file ini bernama HelloWorldApplet.java:
import java.awt.Graphics;

public class HelloWorldApplet extends java.applet.Applet

{
public void paint(Graphics g)
{
g.drawString("Apa Kabar Dunia?", 5, 25);
}
}
Secara gamblang dapat diperhatikan bahwa struktur kedua program sangat mirip, dan hanya berbeda dalam konteks eksekusi. Kedua program ini akan dibahas lebih lanjut setelah kita membahas cara mengkompile dan mengeksekusi program tersebut.
Perlu diingat bahwa bahasa Java bersifat case sensitive, sehingga Anda harus memperhatikan penggunaan huruf besar dan kecil. Selain itu penulisan source code program tidak harus memperhatikan bentuk tertentu, sehingga Anda bisa saja menuliskan semua baris source code tersebut dalam satu baris asal Anda tidak lupa membubuhkan tanda titik koma (;), atau menuliskan tiap kata dalam satu baris tersendiri. Namun dianjurkan Anda mengikuti layout seperti pada contoh agar program Anda mudah dibaca dan dimengerti.
Kompilasi
Setelah kedua file disave dengan nama HelloWorld.java dan HelloWorldApplet.java, kita akan mengkompile kedua program tersebut dengan perintah:
prompt> javac HelloWorld.java

prompt> javac HelloWorldApplet.java
Perlu diperhatikan bahwa direktori aktif Anda saat ini adalah direktori tempat Anda meletakkan file-file program tersebut. Anda tetap dapat mengkompile program Anda dari direktori berbeda dengan perintah:
prompt> javac (direktori program)/namafile.java
Setelah perintah ini selesai, Anda akan melihat bahwa telah tercipta dua buah file .class, yaitu bytecode hasil kompilasi source code kita.
Sintaks Program
Sekarang kita akan mencoba membahas elemen-elemen dalam kedua source code tersebut.
Pada awal Listing 2 kita menemukan perintah import. Pada tahap awal ini Anda perlu mengetahui bahwa pernyataan tersebut hanya berfungsi mempermudah penulisan metode atau dalam bahasa pemrograman lain disebut prosedur atau fungsi. Jadi Anda hanya perlu menulis Graphics sebagai pengganti java.awt.Graphics, karena kita telah mengimpor java.awt.Graphics.
Kemudian di masing-masing listing terdapat pernyataan public class. Pernyataan ini adalah pernyataan pembuka sebuah kelas. Kelas sendiri digunakan untuk menciptakan objek. Ingat bahwa Java berorientasi objek. Kata public di depannya berfungsi agar kelas tersebut dapat diakses oleh semua program lain. Untuk saat ini anggaplah objek sebagai suatu item yang dapat dimanipulasi oleh sebuah program. Dalam Listing 2 terdapat tambahan kata extends. Hal ini berarti kelas yang kita buat akan mewarisi sifat-sifat dari kelas yang kita extends. Dengan kata lain kita menjadikan kelas yang kita extends sebagai himpunan bagian dari kelas kita buat.
Kemudian kita menemukan baris pernyataan public static void main(String[] args) dan public void paint(Graphics g). Keduanya adalah pernyataan pembuka sebuah metode. Metode sendiri adalah kumpulan pernyataan untuk melakukan suatu tugas tertentu dalam kelas. Keduanya sebenarnya mempunyai fungsi yang sama namun dalam konteks yang berbeda. Dalam setiap aplikasi harus ada sebuah metode yang bernama main yang akan dieksekusi pertama kali saat program tersebut dieksekusi. Sementara dalam applet, metode yang pertama kali akan dieksekusi ketika applet diload adalah paint. Kata public di depannya mempunyai fungsi yang sama dengan kata public yang ada di depan baris permulaan kelas. Namun nantinya Anda akan menemukan juga bentuk lain seperti private dan protect yang akan kita bahas nanti.
Pada Listing 1 terdapat kata static pada pernyataan pembuka metode main. Hal ini berarti metode main tidak mengubah atau menggunakan objek yang diciptakan oleh kelas tersebut, sehingga dapat dikatakan berdiri sendiri dan tidak terikat dengan objek. Dalam metode main dalam aplikasi, parameternya adalah selalu String[] args, di mana args hanyalah sebuah nama dari objek array dari String. Array ini nantinya akan berisi parameter-parameter yang diberikan user sebagai argumen command line. Sementara Anda tidak perlu mengerti mengenai parameter tersebut, cukup diingat bahwa bentuk metode main harus selalu demikian.
Kemudian di dalam kedua metode pada kedua listing tersebut, kita menemukan sebuah pernyataan. Anda tentu dapat saja meletakkan lebih dari satu pernyataan dalam sebuah metode. Setiap pernyataan dalam sebuah metode dipisahkan oleh titik koma dan akan dieksekusi satu persatu. Kedua pernyataan pada listing ternyata memanggil sebuah metode lain yaitu metode println dan paint. Tentunya dapat Anda perhatikan bahwa untuk memanggil sebuah metode diperlukan tiga komponen yaitu:
  1. Objek yang ingin kita pakai. Dalam hal ini objek System.out dan Graphics g.
  2. Nama metode yang ingin kita pakai. Dalam hal ini println dan paint.
  3. Sepasang tanda kurung yang berisi informasi tambahan yang diperlukan oleh metode yang dipanggil, yaitu parameter.
Dalam Listing 1, pernyataan System.out.println("Apa Kabar Dunia?"); berarti carilah objek out dalam kelas System kemudian panggil metode println dari objek out dengan parameter berupa string "Apa Kabar Dunia?". Sedang dalamListing 2, pernyataan g.drawString("Apa Kabar Dunia?", 5, 25); berarti carilah objek g kemudian panggil metode drawString pada objek g dengan parameter "Apa Kabar Dunia?”, 5, 25);.
Eksekusi
Setelah selesai membahas sintaks dasar Java dalam kedua listing, selanjutnya kita akan mencoba mengeksekusi kedua program ini. Untuk program pertama yang berupa aplikasi biasa, kita tinggal mengetikkan perintah java HelloWorldpada prompt dan pesan Apa Kabar Dunia? akan tampil di layar (atau mungkin di tempat lain, bergantung sistem operasi Anda). Sedangkan untuk applet kita mesti membuat sebuah file HTML sebagai pembungkus—atau pemanggilnya. Berikut diberikan contoh file HTML untuk membungkus applet yang kita buat.
<HTML>

<HEAD>

<TITLE>Coba Applet</TITLE>
</HEAD>
<BODY>
<APPLET CODE="HelloWorldApplet.class" WIDTH=150 HEIGHT=25>
</APPLET>
</BODY>
</HTML>
Beri nama helloword.html dan simpanlah di direktori yang sama dengan lokasi file-file .java dan .class sebelumnya. Untuk mengeksekusi applet kita cukup membuka file HTML tersebut di browser yang Java-enabled atau mengetikkan perintah appletviewer namafile.html di prompt.

Penutup
Untuk saat ini Anda telah mempunyai gambaran tentang bagaimana proses pembuatan program Java secara sederhana dalam bentuk aplikasi biasa atau applet. Anda juga dapat mencoba mengembangkan program sederhana tersebut sesuai dengan keinginan Anda berdasarkan hal-hal yang sudah Anda ketahui. Konsep dasar yang sudah Anda dapatkan akan dikembangkan lebih lanjut dalam topik-topik tutorial selanjutnya. Selamat mencoba!



Tidak ada komentar:

Poskan Komentar