SlideShare une entreprise Scribd logo
1  sur  30
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
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. Aplikasiaplikasi 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.
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
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.
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.
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
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.
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 programmerprogrammer 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
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).
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-compilelink-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
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.
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.
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
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/direverseengineer.

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

fasilitas

API

javahelp

help
2.0

secara
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

merupakan

Media
API

yang

Framework)
menjadikan

pengembangan java untuk memproses
dan menambahkan sumber audio-video
ke aplikasi dan applet

b. J2EE (Enterprise Edition)

Teknologi java ini digunakan untuk mengembangkan aplikasiaplikasi enterprise. Meliputi beberapa teknologi JSP (Java Server
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.
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.
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,
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
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_07windows-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
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.
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
FilesJavajdk1.5.0_07bin kemudian OK. Selesai
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 :
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
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„‟
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
spesifikasi yang ditujukan untuk menangani pengiriman dan penerimaan pesan
singkat pada platform 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.
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/

Contenu connexe

Similaire à Java

Ppt java rullyamrizal-1102412020
Ppt java rullyamrizal-1102412020Ppt java rullyamrizal-1102412020
Ppt java rullyamrizal-1102412020
mutia902
 
Makalah java final
Makalah java finalMakalah java final
Makalah java final
aditamayahya
 
Tugas java praktektohir
Tugas java praktektohirTugas java praktektohir
Tugas java praktektohir
pencari buku
 
Tugas latihan java tohir 1
Tugas latihan java tohir 1Tugas latihan java tohir 1
Tugas latihan java tohir 1
pencari buku
 
Rangkuman tentang java
Rangkuman tentang javaRangkuman tentang java
Rangkuman tentang java
Fitra Sani
 
[Www.indowebster.com] jeni-intro1-bab02-pengenalan bahasa-java
[Www.indowebster.com] jeni-intro1-bab02-pengenalan bahasa-java[Www.indowebster.com] jeni-intro1-bab02-pengenalan bahasa-java
[Www.indowebster.com] jeni-intro1-bab02-pengenalan bahasa-java
Than Thi Habidan
 

Similaire à Java (20)

Ppt java rullyamrizal-1102412020
Ppt java rullyamrizal-1102412020Ppt java rullyamrizal-1102412020
Ppt java rullyamrizal-1102412020
 
Makalah java
Makalah javaMakalah java
Makalah java
 
OOP Dalam Pemrograman Java
OOP Dalam Pemrograman JavaOOP Dalam Pemrograman Java
OOP Dalam Pemrograman Java
 
Pemrograman II -1.pdf
Pemrograman II -1.pdfPemrograman II -1.pdf
Pemrograman II -1.pdf
 
Pert 2 PBO
Pert 2 PBOPert 2 PBO
Pert 2 PBO
 
Makalah java
Makalah javaMakalah java
Makalah java
 
Java ppt
Java pptJava ppt
Java ppt
 
Java
JavaJava
Java
 
Makalah java final
Makalah java finalMakalah java final
Makalah java final
 
Tugas java praktektohir
Tugas java praktektohirTugas java praktektohir
Tugas java praktektohir
 
Tugas latihan java tohir 1
Tugas latihan java tohir 1Tugas latihan java tohir 1
Tugas latihan java tohir 1
 
Rangkuman tentang java
Rangkuman tentang javaRangkuman tentang java
Rangkuman tentang java
 
Java
JavaJava
Java
 
Os java
Os javaOs java
Os java
 
Java ppt
Java pptJava ppt
Java ppt
 
Java
JavaJava
Java
 
[Www.indowebster.com] jeni-intro1-bab02-pengenalan bahasa-java
[Www.indowebster.com] jeni-intro1-bab02-pengenalan bahasa-java[Www.indowebster.com] jeni-intro1-bab02-pengenalan bahasa-java
[Www.indowebster.com] jeni-intro1-bab02-pengenalan bahasa-java
 
Makalah Perulangan Java
Makalah Perulangan JavaMakalah Perulangan Java
Makalah Perulangan Java
 
Makalah Perulangan Java
Makalah Perulangan JavaMakalah Perulangan Java
Makalah Perulangan Java
 
Wida nursyahidah 6701140054_pis1405_tugas apsi
Wida nursyahidah 6701140054_pis1405_tugas apsiWida nursyahidah 6701140054_pis1405_tugas apsi
Wida nursyahidah 6701140054_pis1405_tugas apsi
 

Plus de asutenankoe

Plus de asutenankoe (6)

Mikrotik
MikrotikMikrotik
Mikrotik
 
Html5
Html5Html5
Html5
 
Android 1102412030
Android 1102412030Android 1102412030
Android 1102412030
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Android 1102412030
Android 1102412030Android 1102412030
Android 1102412030
 
Android [makalah ku]
Android [makalah ku]Android [makalah ku]
Android [makalah ku]
 

Dernier

Modul 2 - Bagaimana membangun lingkungan belajar yang mendukung transisi PAUD...
Modul 2 - Bagaimana membangun lingkungan belajar yang mendukung transisi PAUD...Modul 2 - Bagaimana membangun lingkungan belajar yang mendukung transisi PAUD...
Modul 2 - Bagaimana membangun lingkungan belajar yang mendukung transisi PAUD...
pipinafindraputri1
 
Contoh PPT Seminar Proposal Teknik Informatika.pptx
Contoh PPT Seminar Proposal Teknik Informatika.pptxContoh PPT Seminar Proposal Teknik Informatika.pptx
Contoh PPT Seminar Proposal Teknik Informatika.pptx
IvvatulAini
 
HAK DAN KEWAJIBAN WARGA NEGARA ppkn i.ppt
HAK DAN KEWAJIBAN WARGA NEGARA ppkn i.pptHAK DAN KEWAJIBAN WARGA NEGARA ppkn i.ppt
HAK DAN KEWAJIBAN WARGA NEGARA ppkn i.ppt
nabilafarahdiba95
 

Dernier (20)

MODUL AJAR BAHASA INDONESIA KELAS 6 KURIKULUM MERDEKA.pdf
MODUL AJAR BAHASA INDONESIA KELAS 6 KURIKULUM MERDEKA.pdfMODUL AJAR BAHASA INDONESIA KELAS 6 KURIKULUM MERDEKA.pdf
MODUL AJAR BAHASA INDONESIA KELAS 6 KURIKULUM MERDEKA.pdf
 
Modul 2 - Bagaimana membangun lingkungan belajar yang mendukung transisi PAUD...
Modul 2 - Bagaimana membangun lingkungan belajar yang mendukung transisi PAUD...Modul 2 - Bagaimana membangun lingkungan belajar yang mendukung transisi PAUD...
Modul 2 - Bagaimana membangun lingkungan belajar yang mendukung transisi PAUD...
 
Contoh PPT Seminar Proposal Teknik Informatika.pptx
Contoh PPT Seminar Proposal Teknik Informatika.pptxContoh PPT Seminar Proposal Teknik Informatika.pptx
Contoh PPT Seminar Proposal Teknik Informatika.pptx
 
BAHAN PAPARAN UU DESA NOMOR 3 TAHUN 2024
BAHAN PAPARAN UU DESA NOMOR 3 TAHUN 2024BAHAN PAPARAN UU DESA NOMOR 3 TAHUN 2024
BAHAN PAPARAN UU DESA NOMOR 3 TAHUN 2024
 
Topik 4_Eksplorasi Konsep LK Kelompok_Pendidikan Berkelanjutan
Topik 4_Eksplorasi Konsep LK Kelompok_Pendidikan BerkelanjutanTopik 4_Eksplorasi Konsep LK Kelompok_Pendidikan Berkelanjutan
Topik 4_Eksplorasi Konsep LK Kelompok_Pendidikan Berkelanjutan
 
Aksi Nyata Menyebarkan (Pemahaman Mengapa Kurikulum Perlu Berubah) Oleh Nur A...
Aksi Nyata Menyebarkan (Pemahaman Mengapa Kurikulum Perlu Berubah) Oleh Nur A...Aksi Nyata Menyebarkan (Pemahaman Mengapa Kurikulum Perlu Berubah) Oleh Nur A...
Aksi Nyata Menyebarkan (Pemahaman Mengapa Kurikulum Perlu Berubah) Oleh Nur A...
 
MODUL AJAR MATEMATIKA KELAS 3 KURIKULUM MERDEKA.pdf
MODUL AJAR MATEMATIKA KELAS 3 KURIKULUM MERDEKA.pdfMODUL AJAR MATEMATIKA KELAS 3 KURIKULUM MERDEKA.pdf
MODUL AJAR MATEMATIKA KELAS 3 KURIKULUM MERDEKA.pdf
 
MODUL AJAR SENI RUPA KELAS 6 KURIKULUM MERDEKA.pdf
MODUL AJAR SENI RUPA KELAS 6 KURIKULUM MERDEKA.pdfMODUL AJAR SENI RUPA KELAS 6 KURIKULUM MERDEKA.pdf
MODUL AJAR SENI RUPA KELAS 6 KURIKULUM MERDEKA.pdf
 
MODUL AJAR BAHASA INDONESIA KELAS 5 KURIKULUM MERDEKA.pdf
MODUL AJAR BAHASA INDONESIA KELAS 5 KURIKULUM MERDEKA.pdfMODUL AJAR BAHASA INDONESIA KELAS 5 KURIKULUM MERDEKA.pdf
MODUL AJAR BAHASA INDONESIA KELAS 5 KURIKULUM MERDEKA.pdf
 
KELAS 10 PERUBAHAN LINGKUNGAN SMA KURIKULUM MERDEKA
KELAS 10 PERUBAHAN LINGKUNGAN SMA KURIKULUM MERDEKAKELAS 10 PERUBAHAN LINGKUNGAN SMA KURIKULUM MERDEKA
KELAS 10 PERUBAHAN LINGKUNGAN SMA KURIKULUM MERDEKA
 
Konseptual Model Keperawatan Jiwa pada manusia
Konseptual Model Keperawatan Jiwa pada manusiaKonseptual Model Keperawatan Jiwa pada manusia
Konseptual Model Keperawatan Jiwa pada manusia
 
Aksi Nyata Disiplin Positif Keyakinan Kelas untuk SMK
Aksi Nyata Disiplin Positif Keyakinan Kelas untuk SMKAksi Nyata Disiplin Positif Keyakinan Kelas untuk SMK
Aksi Nyata Disiplin Positif Keyakinan Kelas untuk SMK
 
Prakarsa Perubahan dan kanvas ATAP (1).pptx
Prakarsa Perubahan dan kanvas ATAP (1).pptxPrakarsa Perubahan dan kanvas ATAP (1).pptx
Prakarsa Perubahan dan kanvas ATAP (1).pptx
 
Program Kerja Public Relations - Perencanaan
Program Kerja Public Relations - PerencanaanProgram Kerja Public Relations - Perencanaan
Program Kerja Public Relations - Perencanaan
 
MODUL AJAR BAHASA INGGRIS KELAS 6 KURIKULUM MERDEKA.pdf
MODUL AJAR BAHASA INGGRIS KELAS 6 KURIKULUM MERDEKA.pdfMODUL AJAR BAHASA INGGRIS KELAS 6 KURIKULUM MERDEKA.pdf
MODUL AJAR BAHASA INGGRIS KELAS 6 KURIKULUM MERDEKA.pdf
 
PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...
PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...
PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...
 
HAK DAN KEWAJIBAN WARGA NEGARA ppkn i.ppt
HAK DAN KEWAJIBAN WARGA NEGARA ppkn i.pptHAK DAN KEWAJIBAN WARGA NEGARA ppkn i.ppt
HAK DAN KEWAJIBAN WARGA NEGARA ppkn i.ppt
 
vIDEO kelayakan berita untuk mahasiswa.ppsx
vIDEO kelayakan berita untuk mahasiswa.ppsxvIDEO kelayakan berita untuk mahasiswa.ppsx
vIDEO kelayakan berita untuk mahasiswa.ppsx
 
PPT MODUL 6 DAN 7 PDGK4105 KELOMPOK.pptx
PPT MODUL 6 DAN 7 PDGK4105 KELOMPOK.pptxPPT MODUL 6 DAN 7 PDGK4105 KELOMPOK.pptx
PPT MODUL 6 DAN 7 PDGK4105 KELOMPOK.pptx
 
Intellectual Discourse Business in Islamic Perspective - Mej Dr Mohd Adib Abd...
Intellectual Discourse Business in Islamic Perspective - Mej Dr Mohd Adib Abd...Intellectual Discourse Business in Islamic Perspective - Mej Dr Mohd Adib Abd...
Intellectual Discourse Business in Islamic Perspective - Mej Dr Mohd Adib Abd...
 

Java

  • 1. 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
  • 2. 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. Aplikasiaplikasi 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.
  • 3. 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
  • 4. 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.
  • 5. 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.
  • 6. 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
  • 7. 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.
  • 8. 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 programmerprogrammer 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
  • 9. 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).
  • 10. 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-compilelink-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
  • 11. 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.
  • 12. 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.
  • 13. 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
  • 14. 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/direverseengineer. 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.
  • 15. 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
  • 16. 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 otomatis. fasilitas API javahelp help 2.0 secara 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 merupakan Media API yang Framework) menjadikan pengembangan java untuk memproses dan menambahkan sumber audio-video ke aplikasi dan applet b. J2EE (Enterprise Edition) Teknologi java ini digunakan untuk mengembangkan aplikasiaplikasi enterprise. Meliputi beberapa teknologi JSP (Java Server
  • 17. 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.
  • 18. 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.
  • 19. 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
  • 20. komputer. Software yang digunakan untuk melakukan kompilasi disebut compiler, 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
  • 21. 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_07windows-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
  • 22. 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.
  • 23. 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 FilesJavajdk1.5.0_07bin kemudian OK. Selesai
  • 24. 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 :
  • 25. 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
  • 26. 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„‟
  • 27. 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
  • 28. spesifikasi yang ditujukan untuk menangani pengiriman dan penerimaan pesan singkat pada platform Java.
  • 29. 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.