java

43
PERKEMBANGAN TEKNOLOGI BAHASA PEMROGRAMAN JAVA Diajukan Untuk Memenuhi Tugas Mata Kuliah Teknologi Informasi dan Komunikasi Disusun Oleh : Nama : PROBO PAMUNGKAS NIM : 1102412030

Upload: asutenankoe

Post on 14-Dec-2014

1.383 views

Category:

Education


4 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Java

PERKEMBANGAN TEKNOLOGI BAHASA

PEMROGRAMAN JAVA

Diajukan Untuk Memenuhi Tugas Mata Kuliah

Teknologi Informasi dan Komunikasi

Disusun Oleh :

Nama : PROBO PAMUNGKAS

NIM : 1102412030

UNIVERSITAS NEGERI SEMARANG

2013

Page 2: Java

BAB I

PENDAHULUAN

A. Latar Belakang

Pada saat ini perkembangan zaman sudah semakin maju. Hal ini disebabkan oleh

perkembangan teknologi yang selalu mengalami kemajuan pesat. Hal ini pulalah yang

menyebabkan masyarakat saling bersaing satu sama lain dalam kemajuan teknologi tersebut.

Tidak sedikit orang saling menciptakan teknologi-teknologi baru untuk menggantikan

teknologi-teknologi lama yang dianggap sudah ketinggalan atau tidak layak pakai. Dan salah

satu contoh dari kemajuan teknologi yang baru tersebut adalah lahirnya bahasa pemrograman

Java.

Java adalah bahasa pemrograman yang dapat dijalankan di

berbagai komputer termasuk telepon genggam. Bahasa pemrograman yang saat ini sudah ada

antara lain: Cobol, Pascal, Basic dan lain-lain, termasuk yang paling banyak digunakan C++.

Bahasa ini awalnya dibuat oleh James Gosling saat masih bergabung di Sun

Microsystems yang 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.

Oleh karena itu, makalah ini dibuat untuk menjelaskan tentang perkembangan

teknologi bahasa pemrograman Java yang saat ini cukup berkembang di dunia.

Page 3: Java

B. Rumusan Masalah

Dari latar belakang yang telah dijelaskan, penulis dapat merumuskan masalah

sebagai berikut:

1. Apakah pengertian Java ?

2. Bagaimanakah sejarah bahasa pemrograman Java ?

3. Apakah karakteristik Java itu ?

4. Apa saja keunggulan dan kekurangan Java ?

5. Apa saja struktur program Java ?

6. Bagaimanakah perkembangan teknologi Java ?

7. Bagaimanakah dasar dan cara kerja bahasa pemrograman Java ?

8. Apa saja permasalahan Java dan bagaimanakah solusinya ?

C. Tujuan Penulisan

Adapun tujuan dari penulisan makalah ini antara lain:

1. Untuk mengetahui pengertian bahasa pemrograman Java

2. Untuk mengetahui sejarah Java

3. Untuk mengetahui karakteristik Java

4. Untuk mengetahui keunggulan dan kekurangan OS Android

5. Untuk mengenal struktur program Java

6. Untuk mengetahui perkembangan teknologi Java

7. Untuk mengetahui dasar dan cara kerja Java

8. Untuk mengetahui permasalahan yang terjadi dalam Java dan solusi permasalahan

tersebut

D. Kegunaan Penulisan

Adapun kegunaan dari penulisan makalah ini antara lain:

1. Untuk mengetahui perkembangan teknologi Bahasa pemrograman Java,

2. Untuk memenuhi tugas mata kuliah Teknologi Informasi dan Komunikasi

Page 4: Java

E. Metodologi Pengumpulan Data

Dalam penulisan makalah ini, metode pengumpulan data yang penulis gunakan adalah

metode kepustakaan. Yaitu dimana penulis mencari referensi melalui internet yang berkaitan

dengan pokok bahasan yang penulis kembangkan.

Page 5: Java

BAB II

PEMBAHASAN

A. Pengertian Java

Karena Java merupakan bahasa pemrograman, alangkah baiknya kita lebih mengenal

dulu mengenai bahasa pemrograman. Apa sebenarnya bahasa pemrograman itu. Mari kita

bahas lebih lanjut. Komputer bekerja seperti switching dan hanya mengenali 0 dan 1,

sedangkan manusia tidak (paham) berbicara dengan bahasa 0 dan 1, untuk itu diperlukan

bahasa pemrograman yang dapat menjadi perantara percakapan antara komputer dan

manusia. Bahasa pemrograman diubah ke dalam bahasa yang dipahami oleh komputer

dengan menggunakan interpreter atau compiler. Jadi bahasa pemrograman adalah perantara

percakapan antara computer dengan manusia agar saling bekerja dengan baik.

Lalu apa itu interpreter dan compiler dalam bahasa pemrograman. Compiler adalah

mengkompilasi source code menjadi bentuk file yang bisa dieksekusi. Sedangkan Interpreter

ialah mengkompilasi dan menjalankan source code secara langsung. Dalam bahasa

pemrograman juga terdapat tingkatan-tingkatan. Bahasa Pemrograman Tingkat Rendah

contohnya : Assembler, Bahasa Pemrograman Tingkat Sedang; contoh :C, Pascal, Fortran.

Bahasa Pemrograman Tingkat Tinggi; contoh : Java, C++, C#

Java merupakan suatu teknologi perangkat lunak yang di

dalamnya mencakup bahasa pemrograman. Selain itu Java juga

merupakan suatu platform yang memiliki virtual machine dan

library yang diperlukan untuk menulis dan menjalankan suatu

program. Java juga bisa dikatakan sebagai salah satu bahasa

pemrograman yang berorientasi objek (OOP-Object Oriented

Programming). Paradigma OOP adalah menyelesaikan masalah

dengan merepresentasikan masalah ke model objek. Untuk masalah OOP akan dibahas lebih

lanjut di sub bab berikutnya.

Page 6: Java

B. Sejarah Java

Java yang dikembangkan di Sun Microsystem berawal dari gagasan untuk

menciptakan suatu bahasa, perangkat lunak yang bebas dan tidak bergantung pada platform

atau sistem operasi tertentu (tidak hanya bekerja pada sistem operasi tertentu). Tujuan

awalnya adalah dengan menggunakan bahasa yang sudah ada, yaitu C++ namun seiring

dengan kemajuan yang dicapai, para pencipta Java menyadari bahwa akan lebih baik bila

mereka menemukan (menciptakan) bahasa mereka sendiri daripada mengembangkan C++.

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.

Dalam suatu wawancara pada pertengahan tahun 94 James Gosling mengatakan “We

could build a real cool browser. It was one of the few things in the client/serve mainstream

that needed some of the weird things we’d done: architecture neutral, real-time,reliable,

secure—issues that weren’t terribly important in the workstation world. So we built a

browser.” Mereka yakni Patrick Naughton dan Jonathan Payne

Page 7: Java

menjadikan perambah (browser) Mosaic sebagai landasan awal untuk membuat perambah

Java pertama yang dinamai Web Runner, terinsipirasi dari film 1980-an, Blade Runner.

Browser ini dibuat dengan menggunakan bahasa java untuk menunjukkan kemapuan dari

java. 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.

Sejak saat itu browser java memberikan lisensinya kepada browser lain untuk bias

menjalankan Applet dan pada tahun 1996 diberikan pada Internet Explorer. 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).

Setelahnya ikut bergabung pula berbagai pengembang ternama diantaranya IBM dan

Microsoft. Kemudian pada tahun berikutnya, Sun Microsystem Inc. merilis Java Software

Development Kit (JDK) pertamanya, JDK 1.1. Dan terus berkembang dari pemrograman

applet yang berjalan di browser menjadi pemrograman kelas dunia yang banyak digunakan

untuk pengembangan aneka ragam aplikasi. Tidak hanya pada komputer, Java juga dapat

berjalan pada bermacam-macam perangkat, mulai telepon genggam sampai aplikasi berskala

enterprise pada komputer server.

C. Karakteristik Java

Para pencipta Java di Sun Microsystem mendefinisikan Java sebagai bahasa yang

sederhana, berorientasi object, terdistribusi, terinterpretasi, kokoh, aman, netral arsitektur,

akrab, berkinerja tinggi, multi jalinan (multithreaded) dan dinamis.

Page 8: Java

1.  Sederhana 

        

Inti dari ke-"sederhana"-an Java terutama terletak pada kemiripannya dengan

C dan C++. Karena programmer-programmer masa kini khususnya yang tertarik

menggunakan Java telah memiliki pengalaman setidaknya dengan C dan mungkin

dengan C++, Java tentu saja terlihat sederhana dan akrab bagi programmer-

programmer ini.

 

         Java menyederhanakan bahasa C++ dengan menambahkan fitur-fitur

pendukung yang belum terdapat dalam C++ dan membuang beberapa fitur yang

membuat C++ menjadi bahasa yang rumit dan sulit untuk dikuasai. Java

sederhana karena hanya ia memiliki tiga tipe angka data primitif, tipe Boolean dan

array. Selebihnya, semua dalam Java adalah sebuah kelas. Salah satu fitur penting

yang ditawarkan Java (yang belum ada pada C++) adalah pengumpulan sampah

(garbage collection). Dengan mekanisme ini, user tidak perlu membebaskan

memori yang dialokasikan, karena semua dilakukan oleh Mesin Virtual Java. Java

juga mendukung penulisan program multi jalinan, yaitu suatu program yang dapat

melakukan lebih dari satu pekerjaan dalam waktu yang bersamaan.

2. Berorientasi Obyek

 

Untuk lebih jelasnya, berikut karakteristik OOP atau Berorientasi pada Obyek:

a. Abstraction ialah Cara kita melihat suatu system dalam bentuk yang

lebih sederhana, yaitu sebagai suatu kumpulan subsistem (object) yang

saling berinteraksi.

Contoh : Mobil adalah kumpulan sistem pengapian, system kemudi,

sistem pengereman

b. Modularity: Sifat object adalah modular. Object dapat ditulis dan

dimaintain terpisah (independen) dari object lain

c. Encapsulation: Mekanisme menyembunyikan suatu proses dalam

sistem untuk menghindari interferensi dan menyederhanakan

Page 9: Java

penggunaan sistem itu sendiri contoh : Tongkat transmisi (gigi) pada

mobil, Tombol on/off/pengaturan suhu pada AC

d. Inheritance: Suatu class dapat mewariskan atribut dan method kepada

class lain (subclass), serta membentuk class hierarchy

e. Polymorphism: Suatu object dapat memiliki berbagai bentuk, sebagai

object dari classnya sendiri atau object dari superclassnya

Contoh : Overloading: Penggunaan satu nama untuk beberapa method

yang berbeda (beda parameter), Overriding: Terjadi ketika deklarasi

method subclass dengan nama dan parameter yang sama dengan

method dari superclassnya

Dalam pendekatannya pada orientasi-obyek, Java lebih merujuk pada

SmallTalk daripada C++. Selain tipe data primitive-nya, semua yang ada pada

Java adalah kelas. Sebaliknya dalam C++ semuanya serba campur-aduk, dimana

programmer dapat secara bebas (benar-benar bebas)dalam mencampur kode-kode

orientasi obyek (kelas) (kelas) dengan kode prosedural (fungsi). Dalam Java

semua ini tidak diperbolehkan. Tidak ada fungsi global dalam Java, semua fungsi

harus dipanggil melalui sebuah obyek.

         Dukungan Java terhadap orientasi-obyek tidak termasuk penurunan

(inheritansi) ganda. Para perancang Java merasa kerumitan yang dimunculkan

inheritansi ganda tidak sebanding dengan keuntungan yang dihasilkan. Sebagai

ganti dari inheritansi ganda, Java kemudian menyediakan antarmuka (interface).

3. Terdistribusi 

        

Java memudahkan pembuatan aplikasi terdistribusi dengan sekumpulan kelas

yang digunakan pada aplikasi-aplikasi jaringan. Dengan menggunakan kelas URL

(Uniform Resource Locator) Java, suatu aplikasi dapat dengan mudah mengakses

server-jauh (remote server).

Page 10: Java

4. Terinterpretasi 

  

Karena Java adalah bahasa interpretasi, sekali Interpreter Java terpasang,

terinstal pada suatu mesin tertentu, mesin tersebut dapat secara langsung

menjalankan aplikasi-aplikasi Java (tidak peduli platform atau sistem operasi apa

yang terpasang pada mesin tersebut). Ketika menggunakan bahasa interpreter,

programmer juga terbebas dari kekhawatiran berkaitan dengan ketergantungan

antar modul. 

   Keuntungan lain adalah waktu yang digunakan untuk lingkaran edit-compile-

link-test dapat dipotong. Tanpa adanya langkah kompile dan link, maka bekerja

dalam lingkungan interpreter lebih sederhana dan lebih hemat waktu karena hanya

melalui lingkaran edit-test.

5. Kokoh 

 

Membuat suatu program yang terdistribusi, mendukung multi-jalinan yang

dapat dijalankan pada berbagai sistem operasi dan berbagai prosesor bukanlah

suatu pekerjaan yang mudah. Berdasarkan pemikiran ini, maka Java diciptakan

sebagai bahasa yang sangat ketat dalam penulisan (strongly typed language).

Dalam Java management memori telah disederhanakan dengan dua cara. Pertama

Java tidak mendukung manipulasi pointer atau aritmatik secara langsung,

sehingga mustahil bagi program Java untuk menumpuk (meng-overwrite) memori

atau mengkorupsi data. Kedua Java menggunakan mekanisme pengumpulan

sampah saat program berjalan (runtime) daripada pembebasan memori secara

eksplisit.

6. Aman 

        

Karena Java tidak menggunakan pointer yang secara langsung merujuk pada

lokasi memori seperti yang terdapat pada C atau C++, Java memiliki kendali

penuh terhadap semua kode yang ada pada lingkungan Java. Sebelumnya telah

diantisipasi bahwa aplikasi-aplikasi Java akan dijalankan di internet dan akan

Page 11: Java

secara dinamis dapat dijalankan bersama atau mengeksekusi program lain di

tempat yang berlainan melalui internet, maka para pengembang Java berpendapat

tentang perlu adanya kompiler Java yang akan menghasilkan kode bite Java yang

akan melewati standar keamanan runtime Java. Gagasan ini memunculkan ide

tentang pemeriksa kode byte yang akan memeriksa semua kode yang masuk dan

memastikan bahwa semua kode tersebut telah mematuhi serangkaian aturan yang

telah ditentukan dan aman untuk dijalankan.

7. Arsitektur Netral 

Sebelum dijalankan, program Java harus dikompile terlebih dulu

menggunakan kompiler Java. Proses kompilasi ini kemudian akan menghasilkan

suatu kode bite tertentu yang serupa dengan file kode (bahasa) mesin yang dapat

dieksekusi pada mesin apapun yang memiliki interpreter Java. 

Jadi, Java dapat dijalankan dalam mesin (komputer) dengan system operasi

apapun selama ia memiliki interpreter Java, dan dengan demikian maka tuntutan

arsitektur netral pada Java dapat dipenuhi.

8. Portable

Salah satu tujuan penting pembuatan Java adalah kode-kode Java haruslah

Portable, sehingga ketika arsitektur baru (baik itu perangkat keras ataupun sistem

operasi atau keduanya) berkembang, lingkungan Java dapat diterapkan dan

dipindahkan pada mereka. 

Pada Java, semua tipe data primitif (integer, long, float, double dan

sebagainya) memiliki ukuran tertentu, tidak bergantung pada mesin atau sistem

operasi dimana program Java dijalankan. Hal ini sangat berlawanan dengan

bahasa seperti C atau C++ yang menyerahkan ukuran tipe data primitif pada

kompiler dan mesin (serta sistem operasi). Java portable karena kompiler Java

sendiri ditulis menggunakan Java.

Page 12: Java

9. Berkinerja Tinggi

Sebuah aplikasi Java tidak akan menyamai kinerja aplikasi bahasa terkompilasi

penuh seperti C atau C++. Namun demikian untuk sebagian besar aplikasi termasuk

pengolahan grafis, satu dari berbagai macam hal yang dapat ditemui secara umum

pada World Wide Web, kinerja Java lebih dari cukup. 

Banyak pengadopsi awal C++ khawatir aanya kemungkinan penurunan kinerja

saat mereka mengubah program mereka dari C ke C++. Namun para pengadopsi

(pengguna) awal C++ menemukan walaupun program dalam C akan melebihi suatu

program C++ dalam banyak kasus, waktu untuk pengembangan lebih lanjut dan biaya

tidak sesuai dengan kinerja yang dihasilkan. 

Walupun aplikasi Java mungkin tidak dapat menyamai aplikasi C++, namun

secara normal aplikasi Java akan cukup cepat, dan Java memungkinkan user

melakukan banyak hal yang tidak dapat dilakukan dengan C++.

      

10. Multi-Jalinan 

Menulis suatu bahasa yang hanya bisa melakukan satu perkerjaan adalah hal

yang biasa dalam bahasa pemrograman. Program-program Java dapat terdiri atas

beberapa jalinan yang memungkinkan program untuk melakukan beberapa pekerjaan

sekaligus. Suatu contoh, sebuah program multi jalinan dapat me-render sebuah image

di layar pada satu jalinan disamping menerima masukan dari keyboard user pada

jalinan utama-nya. 

Dukungan terhadap beberapa jalinan tersinkronisasi sekaligus telah terbangun

(secara internal) pada Java dan lingkungan runtime-nya. Jalinan tersinkronisasi sangat

berguna dalam membuat aplikasi yang terdistribusi dan berbasis jaringan. Aplikasi

semacam ini dapat berkomunikasi dengan server jauh pada satu jalinan dan

berinteraksi dengan user pada jalinan yang lain.

Page 13: Java

11. Dinamis 

Karena terinterpretasi, Java adalah bahasa yang benar-benar dinamis. Saat

runtime, lingkungan Java dapat mengembangkan dirinya dengan terhubung pada

kelas-kelas yang mungkin terletak pada server-jauh pada suatu jaringan (misalnya,

lewat internet). Pada C++ setiap kali anggota variabel atau fungsi ditambahkan pada

suatu kelas, maka kelas tersebut dan semua kode tambahan yang merujuk pada kelas

tersebut perlu dikompile ulang. Java menyederhanakan masalah ini dengan

menyerahkan pada runtime. Saat runtime interpreter Java melakukan resolusi nama

ketika terhubung dengan kelas-kelas yang bersangkutan. Interpreter Java juga

bertanggung-jawab dalam menentukan penempatan obyek dalam memori. Dua fitur

pada interpreter Java ini memecahkan masalah berkaitan degan perubahan definisi

kelas ketika digunakan kelas-kelas yang lain.

D. Kelebihan dan Kekurangan Java

a. Keunggulan yang dimiliki Bahasa Pemrograman Java diantaranya :

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

adalahMicrosoft Windows, Linux, Mac OS dan Sun Solaris. Penyebabnya adalah

setiap sistem operasi menggunakan programnya sendiri-sendiri (yang dapat

diunduh dari situs Java) untuk meninterpretasikan bytecodetersebut.

2. OOP (Object Oriented Programming - Pemrogram Berorientasi Objek), uraian

sudah dijelaskan dalam karakteristik Java point 2 yakni berorientasi pada obyek.

3. Perpustakaan Kelas Yang Lengkap, Java terkenal dengan

kelengkapan library/perpustakaan (kumpulan program program yang disertakan

Page 14: Java

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. Sedangkan kelemahan yang terdapat dalam Java antara lain :

1. Kurang sesuai dengan slogan - 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 danObject

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.

Page 15: Java

E. Struktur Program Java

Secara prinsip program java dapat dibedakan menjadi 2, yaitu :

a) Aplikasi : Adalah program java yang dapat berdiri sendiri, dikompile dan

dieksekusi secara mandiri

Ciri utama suatu program java adalah aplikasi adalah didalamnya ada definisi

metod main dengan syntax :public static void main (String [] arg)

b) Applet : Program java yang dicompile menjadi file class (kode byte) dan

eksekusinya di-INSERT-kan dalam file HTML yang selanjutnya dieksekusi

dengan suatu browser tertentu

Applet juga dapat dieksekusi menggunaka program appletviewer dalam JDK

F. Perkembangan Teknologi Java

Seperti disebutkan di atas, Java merupakan bahasa pemrograman yang dapat

diimplementasikan pada berbagai lingkungan, seperti internet, telepon genggam

maupun komputer. Bahasa pemrograman Java secara garis besar dikelompokan

sebagai berikut :

a. J2SE (Standart Edition)

Teknologi Java ini dirancang untuk membuat aplikasi yang

berjalan pada PC dan workstation yang berada pada platform

Windows, Linux, Macintoch. J2SE terbagi menjadi dua bagian

besar yaitu J2SE Core dan J2SE Desktop.

a) J2SE Core digunakan untuk teknologi security,

debugging, database dan sebagainya.

b) J2SE Desktop meliputi beberapa teknologi JRE (Java

Runtime Environment), JFC (Java Foundation Classes),

Java Sound dan sebagainya.

Java Beans : Salah satu arsitektur J2SE

untuk aplikasi web. Komponen software

Page 16: Java

yang dapat dimanipulasi secara visual

pada sebuah tool visual

JFC (Java Foundation Classes)

merupakan bagian dari library java yang

didasarkan pada platform java untuk

mengembangkan aplikasi GUI

(Graphical User Interface)

Java Help : Platform independent dan

salah satu fitur dalam system yang

menawarkan fasilitas help secara

otomatis. API javahelp 2.0 sangat

berguna untuk membuat dokumentasi

online dan memberikan informasi secara

online pada para pengguna

Java Web Start : Salah satu framework

dalam java yang membantu memulai

aplikasi secara langsung dari internet

dengan menggunakan web browser

JDBC (Java Database Connectivity)

merupakan API (Application

Programming Interface) dan bagian dari

java standart edition yang digunakan

untuk akses data dari database

JMF (Java Media Framework)

merupakan API yang menjadikan

pengembangan java untuk memproses

dan menambahkan sumber audio-video

ke aplikasi dan applet

b. J2EE (Enterprise Edition)

Teknologi java ini digunakan untuk mengembangkan aplikasi-

aplikasi enterprise. Meliputi beberapa teknologi JSP (Java Server

Page 17: Java

Pages), Java servlet, CORBA (untuk aplikasi terdistribusi) dan

sebagainya.

a.) EJB (Enterprise Java Beans)

Platform java untuk sisi server digunakan untuk aplikasi

enterprise. Dengan menggunakan teknologi ini akan

membantu membuat aplikasi yang kecil, mudah

didistribusikan, dan aman.

b.) Java mail

Teknologi API java mail akan membantu pengguna

untuk membuat aplikasi mail dan pesan, juga didukung

platform dan protocol independent.

c.) JMS (Java Message Services)

Digunakan untuk mengirim pesan antarpengguna

aplikasi. Fasilitas ini merupakan tool untuk membuat

aplikasi enterprise.

d.) JSP (Java Server Pages)

Membantu para pengembang web dalam

mengembangkan dan maintenance isi web dalam format

seperti HTML dan XML. Dengan bantuan JSP, akan lebih

mudah dalam membangun aplikasi web di server.

e.) Java Servlets

Mempermudah pengembang menambah isi ke web

server dengan menggunakan platform java. Fitur ini

menambah fungsi dari web server.

c. J2ME (Micro edition)

Teknologi java ini digunakan pengembangan system mikro dan

system embedded seperti handphone, PDA, dan lain sebagainya.

Page 18: Java

a.) Connected Limited Device Configuration (CLDC)

Memberikan gambaran kemampuan JVM, inti dari

kumpulan API untuk alat-alat seperti pager dan mobile

phone.

b.) Mobile Information Device profile (MIDP)Salah satu konfigurasi pada java edition yang biasanya

digabungkan dengan CLDC, menyediakan lingkungan java

Runtime Environment untuk variasi peralatan mobile dan

PDA (Personal Digital Assistance). Dengan bantuan MIDP,

pengembang java dapat membuat aplikasi yang dapat

didistribusikan secara mobile dalam waktu yang singkat.

c.) Connected Device Configuration (CDC)

Standar kerangka kerja dari teknologi java yang

digunakan untuk membangun dan mendistribusikan aplikasi

java yang dapat disharing dalam jaringan yang luas dan alat

seperti pager, mobile phones, set top box, dan PDA.

d. Java Web Services

Merupakan aplikasi web berbasis enterprise dengan standar

XML dan protocol tertentu untuk bertukar data dengan klien.

G. Dasar Dan Cara Kerja Java

Java merupakan bahasa pemrograman compiler dan interpreter, sehingga

menjadikan Java dapat dijalankan pada berbagai platform. Java compiler akan

menerjemahkan source program kedalam bytecode. Hasil kompilasinya yang

berupa program java dapat dijalankan dengan bantuan java interpreter.

Page 19: Java

Java interpreter dapat dijalankan langsung dari command prompt atau via

applet viewer atau web browser (untuk applet). Hal ini menjadi alasan kenapa java

dapat berjalan pada berbagai platform yang terdapat interpreter pada system

computer tersebut. Kelemahannya adalah kecepatan operasi akan lebih lambat dari

program biasanya karena program bytecode harus diterjemahkan terlebih dahulu

oleh interpreter, kemudian dijalankan pada hardware.

Secara ringkas program java dijalankan seperti gambar berikut ini :

Gambar : Cara Kerja Program Java

Bila dituliskan lewat table akan seperti berikut ini :

Proses Tool Hasil

Kode Program Teks editor File extensi .java

Komplikasi Program Java Compiler File extensi .class (file bytecode

Jalankan Program Java Interpreter Output Program

Program didalam Java (Bytecode)

Dalam sebagian besar bahasa pemrograman, sebuah kode program harus dikompilasi

(compile) maupun di terjemahkan (interpreter) sehingga dapat dijalankan didalam sebuah

komputer. Software yang digunakan untuk melakukan kompilasi disebut compiler,

Page 20: Java

sedangkan yang digunakan untuk menterjemahkan disebut interpreter, perbedaan

antara compiler dan interpreter adalah pada proses eksekusi kodenya. Compiler akan

menterjemahkan isi program secara keseluruhan sedangkan interpreter menterjemahkan

baris demi baris. Karena interpreter prosesnya dilakukan baris demi baris maka interpreter

lebih lambar dibandingkan compiler.

Java menerapkan dua proses diatas, ini berarti java berperan sebagai compiler maupun

interpreter.mula-mula kode program yang ditulis dengan bahasa java akan di compile

menjadi suatu blok kode objek. dalam java kode ini disebut bytecode. Hasil akhir dari

program akan berupabytecode yang berkektensikan .class. selanjutnya bytecode akan

dieksekusi oleh interpreter. Untuk lebih jelasnya gambaran alur programnya seperti

berikut :

Gambar Proses pembentukan dan eksekusi program didalam java

 

Bytecode dapat dianggag sebagai sekumpulan perintah dalam bahasa mesin untuk

sebuah JVM (Java Virtual Machine) setiap intepreter java, baik berupa development

tool maupun sebuah Web Browser merupakan implementasi dari JVM.progam yang dibuat

dengan java hanya dapat dijalankan jika memiliki JVM.

1. Software yang dibutuhkan untuk sebuah Program JAVA

Page 21: Java

Dalam pembuatan program java kita membutuhkan dua buah software yaitu Java 2

SDK, Standard edition (J2SE) dan text edito seperti Notepad maupun notepad ++ namun

lebih baik jika menggunakan Notepad ++.

1. Intalasi Software Java 2 SDK, Standard Edition

Dalam penginstalan software ini sangatlah mudah karena kita tinggal mengikuti

panduan wizard yang ditampilkan.berikut adalah langkah penginstalan Java 2 SDK

standard edition(J2SE) pada OS windows

1. Langkah pertama adalah jalankan file installer java 2 SDK (jdk-1_5_0_07-

windows-i586-p.exe) selanjutnya akan ada tampilan berikut

Gambar 1.2 screenshot untuk licence agreement

Pilih I accept the….. kemudian next 

2. Seelanjutnya akan muncul form berikut kemudian pilih saja next:

Gambar 1.3 screenshot pilihan fitur J2SE develompent kit

Maka secara default tujuan instalasi akan disimpan pda c:\program files\

Page 22: Java

Gambar 1.4 proses instalasi JDK

3. Langkah no 2 diatas digunakan untuk melakukan instalasi JDK sedangankan JRE

nya belum ter-install. Kemudian akan muncul form berikut :

Gambar 1.5 screenshot pilihan fitur J2SE runtime Environtment

Pilih fitur yang diinginkan kemudian Next

4. Pilih web browser yang akan didaftarkan

Gambar 1.6 Screenshot pilihan browser yang akan didaftarkan

ceklist browsernya lalu next maka akan mucul form finish klik button finish.

Page 23: Java

2. Setting CLASSPATH

CLASSPATH adalah suatu variabel sistem yang digunakan untuk mengatakan kepada

program yang ditulis dengan bahasa JAVA tempat lokasi kelas-kelas yang akan

digunakan. Caranya sebagai berikut :

1. Klik kanan pada my computer

Gambar 1.7 system properties

Pada system properties pilih tab advanced kemudian pilih environment variables

2. Akan muncul form seperti berikut lalu klik 2x pada path:

Kemudian kita masukan lokasi bin java SDK kita yaitu di C:Program Files\Java\

jdk1.5.0_07\bin kemudian OK. Selesai

Page 24: Java

3. IDE Java

Setelah anda sukses menginstall java, kemudian anda perlu untuk mempersiapkan

teks editor atau IDE Java. Editor ini merupakan tool yang digunakan untuk menulis kode

program Java. Ada banyak pilihan yang dapat anda gunakan, seperti notepad, Vim joe dan

sebagainya. Namun untuk editor tersebut, anda perlu menjalankan Java via command

console/ console DOS.

Oleh karena itu muncul IDE Java, dimana anda dapat langsung menjalankan program

yang dibuat tanpa harus pindah dahulu ke command console. Ada beberapa pilihan antara

lain Netbeans, Editplus, JBuilder, Crismon, Eclipse, JCreator dan lain sebagainya.

Untuk memeriksa bahwa anda telah berhasil install Java, buka command console dan

ketik perintah C:\>javac <ENTER>

Jika anda sudah melihat tulisan seperti diatas maka anda sudah berhasil menginstall

Java dalam computer anda. Jika belum, maka pastikan : lokasi alamat PATH untuk Java

sudah sesuai dengan letak file java.exe, sesuaikan dengan lokasi dimana anda menginstall.

4. Membuat Program Sederhana

Setelah kita sudah mengistall software yang dibutuhkan dan Setting CLASSPATH

adalah mencoba membuat program sederhana .disini kita akan membuat program hanya

menampilkan output dari program yang dibuat, karena ini adalah yang paling sederhana

ini hanya merupakan indikator untuk mencoba apakah software terpasang dengan baik

atau belum.

1. Langkah-langkah yang perlu dilakukan untuk membuat programnya adalah sebagai

berikut :

1. Jalankan text editor (dalam hal ini sebagai contoh kita menggunakan notepad)

Yang didalam notepad tulisannya sebagai berikut :

Page 25: Java

Gambar 1.7 Kode program di notepad

Simpan file dengan nama program.java

Public class program {                             

Ini medifinisikan kelas baru dengan nama kelas yaitu program , dalam java seemua

program adalah kelas, tanda kurung kurawal buka dan tanda kurawal tutup adalah

untuk memulai sebuah blok program dan mengakhiri sebuah blok program.

Public static void main (string[] args) {                        

Baris ini akan memulai method main(). Method main adalah method utama yang

dimiliki oleh semua program java dan akan dieksekusi pertam kali saat program

dijalankan

System.out.prinln (“TES JAVA PROGRAMING”);                

Digunakan untuk menampilkan teks “TES JAVA PROGRAMING” ke layar output.

Dan yang terakhir adalah } untuk definisi dari kelas program

2. Langkah kedua setelah menuliskan kode diatas dinotepad dan menyimpannya

adalah melakukan kompilasi dan eksekusi program caranya sebagai berikut:

1. Jalankan aplikasi command prompt (CMD)

2. Masuk kedirektori tempat kita menyimpan program

Gambar 1.8 screenshot masuk direktori Java

3. Lakukan kompilasi terhadap program.java dengan menggunakan perintah berikut

:

Javac program.java                            

Page 26: Java

Jika sudah kita cek direktorinya apakah ada program.class nya :

Gambar 1.9 screenshot direktori JAVA

Karena sudah ada program hasil kompilasinya kemudian kita jalankan

programnya dengan cara tulis : java program                

Gambar 1.10 screenshot hasil dari program yang dijalankan

5. Tahap Kompilasi Java

1. Tulis / Ubah. Pemrogram menulis program dan menyimpannya di media

dalam bentuk berkas '.java'.

2. Kompilasi. Pengkompilasi membentuk bytecodes dari program menjadi

bentuk berkas '.class'.

3. Muat. Pemuat kelas memuat bytecodes ke memori.

4. Verifikasi. Peng-verifikasi memastikan bytecodes tidak mengganggu

sistem keamanan Java.

5. Jalankan. Penerjemah menerjemahkan bytecodes ke bahasa mesin.tidak

bisa di pakai‘’

Page 27: Java

H. Permasalahan dan solusi Java

Meski aplikasi Java telah banyak digunakan pada telepon nirkabel, namun sudah

menjadi hal umum bagi pengembang, bahwa Java tidak sepenuhnya dapat berjalan

pada semua tipe ponsel meski pada telepon genggam tersebut sudah ditanamkan suatu

platform Java.

Penyebabnya, yaitu implementasi Java oleh masing-masing vendor telepon seluler

tidaklah sama terutama pada fragmentasi API (Application Programming Interface).

Maka untuk mengatasi perbedaan tersebut berbagai perusahaan teknologi di dunia

seperti Nokia, Motorola, NTT DoCoMo, Sprint dan lainnya membentuk suatu

kolaborasi guna menyusun spesifikasi Java yang lebih jelas bagi vendor telepon

genggam, operator seluler, serta pengembang aplikasi. Spesifikasi tersebut dinamakan

Java Technology for Wireless Industry (JTWI).

Tujuan JTWI sendiri adalah untuk memperbaiki kompatibilitas, interoperabilitas,

dan kelangkapan implementasi Java pada telepon genggam. Spesifikasi JTWI sendiri

yaitu untuk meminimasi fragmentasi API serta memaksimalkan fungsionalitas pada

telepon genggam sehingga dapat memperluas penerapan aplikasi Java. JTWI

mendefinisikan tiga kategori spesifikasi yaitu mandatory, conditional required, dan

minimum configuration. Spesifikasi mandatory yaitu MIDP 2.0, conditional required

adalah MMAPI 1.1, dan minimum configuration adalah CLDC 1.0.

CLDC (Connected Limited Device Configuration) adalah spesifikasi yang ditujukan

pada perangkat elektronik yang memiliki sumber daya terbatas yang dikembangkan

untuk keperluan teknologi wireless Java, dimana memungkinkan pengguna ponsel

untuk menginstallkan aplikasi Java (MIDIlet) ke telepon genggam mereka. MIDP

(Mobile Information Device Profile) merupakan suatu spesifikasi untuk memperkaya

fitur pada CLDC dengan menyediakan tambahan kelas yang lebih spesifik pada tipe

perangkat.

Sedangkan MMAPI (Mobile Media API) merupakan suatu spesifikasi yang

ditujukan untuk menangani kemampuan multimedia pada telepon bergerak yang

berbasis Java. Pada JTWI dikenal juga istilah WMA (Wireless Messaging API) yaitu

Page 28: Java

spesifikasi yang ditujukan untuk menangani pengiriman dan penerimaan pesan

singkat pada platform Java.

Page 29: Java

BAB III

PENUTUP

A. Kesimpulan

Java merupakan 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.

Java sendiri merupakan bahasa pemrograman yang mudah dan cepat dipelajari.

Ditambah lagi Java memiliki berbagai macam kelebihan diantaranya Java yang

support Multiplatform (Microsoft Windows, Linux, Adnroid, Mac OS dan Sun

Solaris), OOP (Object Oriented Programming), Perpustakaan Kelas Yang Lengkap ,

Bergaya C++, Pengumpulan sampah 

Yang jelas peran bahasa pemrograman Java saat ini masih banyak digunakan,

walau saat ini sudah bermunculan bahasa pemrograman yang siap menyaingi Java,

namun saat ini Java menjadi bagian yang penting dalam perkembangan arah

kemajuan di bidang teknologi bahasa pemrograman.

Page 30: Java

DAFTAR PUSTAKA

http://romisatriawahono.net

http://id.wikipedia.org

http://www.angelfire.lycos.com/

http://zenarifin.wordpress.com/

http://erikandfiki.wordpress.com/

http://java-gagan.blogspot.com/