Makalah ini dibuat untuk memenuhi
tugas mata kuliah Teknologi Informasi dan Komunikasi
Oleh:
Nama : Sholakhuddin
NIM :1102412115
Prodi :
Teknologi Pendidikan
FAKULTAS
ILMU PENDIDIKAN
UNIVERSITAS
NEGERI SEMARANG
2013
BAB
I
PENDAHULUAN
A. Latar Belakang Masalah
Dewasa
ini perkembangan dunia informasi dan teknologi sangat cepat pada dasawarsa
terakhir sejak dimulainya era millennium. Perkembangan itu salah satunya
ditandai dengan keberadaan bahasa pemrograman java yang menyediakan berbagai
layanan. Bentuk layanan yang dihadirkan java sejatinya sangat berguna dan
membantu bagi kehidupan manusia. Mulai dari akses data, informasi aktual,
iklan, komunikasi, game dan sebagainya.
Java merupakan
bahasa pemrograman berorientasi objek yang dibuat oleh James
Gosling saat masih bergabung di Sun Microsystems sejak tahun 1991. Bahasa ini
dikembangkan dengan model yang mirip dengan bahasa C++ dan Smalltalk, namun
dirancang agar lebih mudah dipakai dan ber-platform independent, yaitu
dapat dijalankan di berbagai jenis sistem operasi dan arsitektur komputer.
Bahasa ini juga dirancang untuk pemrograman di internet sehingga dirancang agar
aman dan portabel.
Java
adalah bahasa pemrograman yang dapat dijalankan di berbagai komputer termasuk
telepon genggam. Bahasa 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). Untuk itu penulis tertarik meneliti tentang
“Perkembangan Bahasa Pemrograman Java”
B.
Rumusan masalah
1. Bagaimana pengertian dan sejarah java
?
2. Bagaimana pengembangan Java ?
3. Bagaimana karakteristik java ?
4. Bagaimana struktur pemrograman java ?
5. Bagaimana versi-versi yang terdapat
pada java ?
6. Bagaimana tipe data java ?
7. Bagaimana fitur-fitur java ?
8. Bagaimana aplikasi java 2 platform
micro edition (J2ME)-java MIDlet ?
9. Bagaimana kelebihan dan kekurangan
java ?
C.
Tujuan
1. Mengetahui pengertian dan sejarah
java
2. Mengetahui pengembangan java
3. Mengetahui karakteristik, struktur
pemrograman java
4. Mengetahui versi-versi, fitur-fitur,
aplikasi-aplikasi java
5. mengetahui kelebihan dan kekurangan
java
BAB II
PEMBAHASAN
Ø
Pengertian Java
Java menurut definisi
dari Sun adalah mana untuk sekumpulan teknologi untuk membuat dan menjalankan
perangkat lunak pada computer stand alone ataupun pada lingkungan jaringan.
Java 2 adalah generasi kedua dari java platform. Kata berdiri di atas sebuah
mesin interpreter yang diberi mana Java Virtual Machine (JVM). JVM inilah yang
akan membaca bytecode dalam file.class dari suatu program sebagai representasi
langsung dari program yang berisi bahasa mesin. Oleh karena itu, bahasa java
disebut sebagai bahasa pemrograman yang portable karena dapat dijalankan
pada berbagai sistem operasi, asalkan pada sistem operasi tersebut
terdapat JVM. Agar sebuah program Java dapat dijalankan, maka file dengan
ekstensi, java harus dikompilasi menjadi file bytecode. Untuk menjalankan
bytecode tersebut dibutuhkan JRE (Java Runtime Environment) yang memungkinkan
pemakai untuk menjalankan program Java, hanya menjalankan, tidak untuk membuat
kode baru lagi. JRE berisi JVM dan library Java yang digunakan. Java memiliki
beberapa versi library atau teknologi yang disebut juga sebagai edisi dari
bahasa pemrograman Java. Tiga edisi utama dari library tersebut adalah Micro,
Standard, dan Enterprise. J2ME (Java2 Micro Edition) Sekitar musim panas 1992
proyek ini ditutup dengan menghasilkan sebuah program Java Oak pertama, yang
ditujukan sebagai pengendali sebuah peralatan dengan teknologi layar sentuh
(touch screen), seperti pada PDA sekarang ini. Teknologi baru ini dinamai
"*7" (Star Seven). Setelah era Star Seven selesai, sebuah anak
perusahaan TV kabel tertarik ditambah beberapa orang dari proyek The Green
Project. Mereka memusatkan kegiatannya pada sebuah ruangan kantor di 100
Hamilton Avenue, Palo Alto. Perusahaan baru ini bertambah maju: jumlah karyawan
meningkat dalam waktu singkat dari 13 menjadi 70 orang. Pada rentang waktu ini
juga ditetapkan pemakaian Internet sebagai medium yang menjembatani kerja dan
ide di antara mereka. Pada awal tahun 1990-an, Internet masih merupakan
rintisan, yang dipakai hanya di kalangan akademisi dan militer. Mereka
menjadikan perambah (browser) Mosaic sebagai landasan awal untuk membuat
perambah Java pertama yang dinamai Web Runner, terinsipirasi dari film 1980-an,
Blade Runner. Pada perkembangan rilis pertama, Web Runner berganti nama menjadi
Hot Java. Pada sekitar bulan Maret 1995, untuk pertama kali kode sumber Java
versi 1.0a2 dibuka. Kesuksesan mereka diikuti dengan untuk pemberitaan pertama
kali pada surat kabar San Jose Mercury News pada tanggal 23 Mei 1995. Sayang
terjadi perpecahan di antara mereka suatu hari pada pukul 04.00 di sebuah
ruangan hotel Sheraton Palace. Tiga dari pimpinan utama proyek, Eric Schmidt
dan George Paolini dari Sun Microsystems bersama Marc Andreessen, membentuk
Netscape. Nama Oak, diambil dari pohon oak yang tumbuh di depan jendela ruangan
kerja "bapak java", James Gosling. Nama Oak ini tidak dipakai untuk
versi release Java karena sebuah perangkat lunak 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.
Bahasa Pemrograman Java
pertama lahir 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 inidimotori oleh Patrick Naughton, Mike Sheridan, James
Gosling dan Bill Joy, 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. Bahasa Pemrograman Java pertama lahir 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, James Gosling dan Bill Joy,
beserta sembilan pemrogram lainnya dari Sun Microsystems. Salah satu hasil
proyek ini adalah maskot Duke yang dibuat oleh Joe Palrang. Pertemuan proyek
berlangsung di sebuah gedung perkantoran Sand Hill Road di Menlo Park. Sekitar
musim panas 1992 proyek ini ditutup dengan menghasilkan sebuah program Java Oak
pertama, yang ditujukan sebagai pengendali sebuah peralatan dengan teknologi
layar sentuh (touch screen), seperti pada PDA sekarang ini. Teknologi
baru ini dinamai "*7" (Star Seven).
Setelah
era Star Seven selesai, sebuah anak perusahaan TV kabel tertarik ditambah
beberapa orang dari proyek The Green Project. Mereka memusatkan kegiatannya
pada sebuah ruangan kantor di 100 Hamilton Avenue, Palo Alto. Perusahaan baru
ini bertambah maju: jumlah karyawan meningkat dalam waktu singkat dari 13
menjadi 70 orang. Pada rentang waktu ini juga ditetapkan pemakaian Internet
sebagai medium yang menjembatani kerja dan ide di antara mereka. Pada awal
tahun 1990-an, Internet masih merupakan rintisan, yang dipakai hanya di
kalangan akademisi dan militer. Mereka menjadikan perambah (browser)
Mosaic sebagai landasan awal untuk membuat perambah Java pertama yang dinamai
Web Runner, terinsipirasi dari film 1980-an, Blade Runner. Pada perkembangan
rilis pertama, Web Runner berganti nama menjadi Hot Java.
Pada
sekitar bulan Maret 1995, untuk pertama kali kode sumber Java versi 1.0a2
dibuka. Kesuksesan mereka diikuti dengan untuk pemberitaan pertama kali pada
surat kabar San Jose Mercury News pada tanggal 23 Mei 1995. Sayang
terjadi perpecahan di antara mereka suatu hari pada pukul 04.00 di sebuah
ruangan hotel Sheraton Palace. Tiga dari pimpinan utama proyek, 7 Eric Schmidt
dan George Paolini dari Sun Microsystems bersama Marc Andreessen, membentuk Netscape.
Nama Oak, diambil dari pohon oak yang tumbuh di depan jendela ruangan kerja
"bapak java", James Gosling. Nama Oak ini tidak dipakai untuk versi
release Java karena sebuah perangkat lunak 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.
B. PENGEMBANGAN JAVA
Aplikasi Java sudah begitu
banyak digunakan dalam kehidupan sehari – hari. Apalagi aplikasi yang terdapat
pada handphone kebanyakan berbasis java. Disamping itu, keunggulan lain yang
dimiliki oleh java adalah multi platform, artinya setiap aplikasi yang kita
bangun menggunakan bahasa Pemrograman Java, maka akan berjalan dengan baik pada
sistem operasi apa saja, bisa di sistem operasi Windows, Linux, Unix dan
lain-lain. Sebuah keunggulan yang tidak dimiliki oleh bahasa pemrograman yang
lain, sehingga tidak heran kalau bahasa pemrograman Java di kenal dengan
istilah ”Create once, run anywhere”Lalu, kenapa Java di katakan sebagai
teknologi masa depan adalah karena fleksibilitas dan kemudahan menggunakannya
serta mampu mencakup keseluruhan aspek pemrograman yang dibutuhkan di masa
depan, yaitu :
Dengan Java kita mampu
membangun aplikasi yang berbasis server (website misalnya), teknologi ini
disebut dengan J2SE (Java versi 2 Standard Edition)
Dengan Java kita mampu
membangun aplikasi berbasis Teks maupun Grafik (Graphical User Interface),
teknologi ini disebut dengan J2EE
(Java versi 2 Enterprise Edition). Dengan Java kita mampu
membangun aplikasi berbasis Mobile, sehingga bisa jalan di Handphone, teknologi
ini disebut dengan J2ME (Java versi 2 Micro Edition).
Arah Pengembangan Java
Usia Java telah lebih dari 10
tahun, dan saat ini, Java (produk) dapat dikatakan sebuah implementasi dari
Java (spesifikasi) itu sendiri, dimana spesifikasi Java (spesifikasi)
dikeluarkan oleh badan yang disebut sebagai JCP (Java Community Process), yang
secara kebetulan dinahkodai oleh Sun Microsystems sebagai pencipta Java (produk
dan spesifikasi). Sebenarnya Implementasi Java itu sudah ada yaitu GNU Java
(dari GNU.org milik Richard Stallman), Harmony (dari Apache, dimana donasi
untuk solusi desktop yaitu AWT, merupakan sumbangan dari Intel, sedangkan
kepala projek ini bekerja di IBM), serta Sun Java. Sun Java ini memiliki banyak
turunan, yang dapat dikatakan dilisensikan, karena pihak lain tidak mau membuat
dari nol tetapi mau menggunakan Java sebagai “merk”nya, yaitu IBM, Oracle, Bea,
Blackdown (pembuat SDK Java untuk Linux) serta yang baru saja launching adalah
FreeBSD.
Dari cerita diatas, terlihat
bahwa banyak sekali vendor yang membuat Java, mulai dari yang Open Source
sampai yang komersil. Karena mengacu pada JCP, maka tidak ada kata
“propietary”, melainkan komersial (artinya mengkomersialisasikan implementasi
berdasarkan spesifikasi). Sebenarnya misteri dari semua ini terletak pada JSR
270, yang merupakan nomor untuk spesifikasi Java terbaru.yaitu Java SE 6.0,
yang saat ini memasuki beta. JSR 270 sebenarnya adalah kumpulan dari komponen
penyusun dari Java SE 6.0 seperti 202: Class File Update, 199: Compiler API,
269: Annotation Processors, 221: JDBCTM 4.0 software, 223: Scripting, 105: XML
Digital Signature, 173: Streaming API for XML, 222: JAXB 2.0, 250: Common
Annotations, 181: WS Metadata, dan 224: JAX-WS 2.0. Semua angka-angka tersebut
dapat dilihat di website JCP di http://www.jcp.org. Java SE 6.0 beta yang
terbaru memasukan Java DB (rebranding dari Apache Derby) kedalam Java SDK 6.0
membuat banyak protes, karena Java DB bukan bagian dari spesifikasi JCP, tetapi
sebuah projek Open Source yang merupakan donasi dari IBM, yang mana sebelumnya
bernama Cloudscape, hasil akuisisi dari Informix.
Pengembangan Java SE 6.0 milik
Sun atau sering disebut Sun Java SE 6.0, sudah berbeda dengan pengembangan Java
pada versi sebelumnya. Semua pihak dapat berpartisipasi dalam pengembangan Java
SE 6.0 yang diberi kode mustang. Saat ini karena Sun masih memperjuangkan kata
“compatible” antara implementasi Java (produk) yang dikembangkannya dengan Java
SE keluaran vendor lain, maka pengembangan mustang ini tidak 100% Open Source
versi OSI, dengan kata lain, source code didapat, tetapi dilarang memiliki dan
forking adalah ilegal. Websitenya adalah http://mustang.dev.java.net. Statement
ini menarik sekali, karena Sun berusaha mengamankan investasi Java bagi semua
pihak (termasuk kekuasaannya), karena bilamana tidak compatible, Java akan
berubah seperti halnya C/C++, yang mana setiap vendor C/C++ membuat
implementasi sendiri, dan ini yang membuat setiap projek C/C++ seperti lautan
yang berbeda berat jenis. Pastinya komponen vendor A tidak dapat digunakan di
vendor B, demikian juga sebaliknya, bilamana dapat, itupun tidak semudah Java,
hanya dengan perintah import, terutama di dunia multiplatform dan clustering,
implementasi API C/C++ memerlukan keahlian khusus.
Sun sedang mencari tahu cara
agar Java miliknya Open Source sesuai dengan versi OSI, tetapi kompatibilitas
yang diissuekan tetap terjaga. Ini juga terkait dengan statemen Jonathan
Schawatz, yang merupakan CEO Sun saat ini yang berlatar belakang software, yang
memiliki visi, semua software Sun akan di’open source’kan. Jika ini terjadi Sun
akan menjadi perusahaan Open Source terbesar didunia. Saat ini Sun adalah
perusahaan terbesar penyumbang aplikasi Open Source, beberapa yang terkenal
adalah Emac, NFS, Dtrace. Dapat dibayangkan Linux tanpa NFS? Pergerakan ini
sebenarnya juga sedang ditiru Microsoft, dengan produknya bernama .NET ke ECMA,
untuk spesifikasi CLR, C#. Hanya perbedaannya didalam JCP sudah ada 950
perusahaan dan entitas, termasuk satu anggota kenegaraan (Brazil). Sedangkan di
ECMA, mungkin baru Mono yang sedang menunggu implementasi WindowForm.
Sebenarnya sebelumnya Microsoft juga adalah salah satu dari perusahaan yang
melisensikan Java, tetapi Microsoft melakukan forking, sehingga terkena denda
miliyaran dollar. Sehingga saat ini mungkin dapat dikatakan anggota JCP
berkurang satu dari yang seharusnya.
C. KARAKTERISTIK JAVA
Java memiliki karakteristik yang diantaranya adalah
sebagai berikut:
·
Sederhana,
semudah C dan seampuh C++: berlawanan dengan anggapan orangorang bahwa bahasa
Java sulit untuk dipelajari, Java gampang untuk dipelajari terutama untuk orang
yang sudah mengenal pemrograman tapi belum terlalu terikat pada paradigma
pemrograman prosedural. Tentu saja ini berarti bahwa kita harus siap
mempelajari salah satu teknologi yang berkembang paling cepat di dunia dalam
dua tahun terakhir ini dengan banyak membaca tentunya baik dari buku maupun
melalui web.
·
Sangat
berorientasi objek (OOP) dengan implementasi yang sangat baik sehingga kita
bukan hanya belajar bagaimana membuat program yang baik (reusable, scalable,
dan maintanable) tetapi juga kita belajar bagaimana cara berfikir yang
baik untuk mengenali struktur masalah yang sedang kita hadapi dan memecahkannya secara sistematis dengan
pola-pola tertentu (patterns). Bahasa berorientasi objek biasanya
mempunyai ciri-ciri sebagai berikut:
o Abstraksi yang baik untuk memudahkan pemahaman dan
komunikasi.
o Enkapsulasi: penyembunyian informasi dari
pihak-pihak yang tidak memerlukannya sehingga kompleksitas tetap tertangani
dengan baik.
o Pewarisan dan polymorphism, teknik yang menyebabkan
objek menjadi modular dan mudah untuk dicopot dan dipasang objek yang lain
o Komposisi dan Interface, berguna untuk membuat
tingkat kopling yang lebih rendah dan struktur hirarki objek-objek yang rapih
sehingga kita bias mengintegrasikan komponen-komponen untuk membuat sistem yang
besar.
·
Open Platform,
Write Once Run Anywhere (WORA), portabel atau multi platform, program yang kita
buat dapat dijalankan di Windows, Linux/Unix, Solaris, dan MacIntosh tanpa
perlu diubah maupun di kompilasi ulang. Java juga bahasa yang paling sesuai
digunakan bersama dengan XML yang membuat data menjadi portabel, ini karena
kelahiran XML tidak terlepas dari dukungan parser-parser berbahasa Java. Selain
itu Java turut serta dalam mengkonvergenkan protocol menjadi Open protokol
yaitu IP (Internet Protocol) terutama dalam Micro Java
·
Berarsitektur netral: Program
Java merupakan independent platform. Program cukup mempunyai satu buah
versi yang dapat dijalankan pada platform berbeda dengan Java Virtual
Machine. Arsitekturnya yang kokoh
dan pemrograman yang aman didukung oleh komunitas Open Source (ketiga terbesar
setelah C dan C++ di SourceForge.net dan implementasi bahasa Java sudah menjadi
milik umum). Dalam Java program yang kita buat tidak mudah untuk “hang” karena
konflik pada memori biasanya diselesaikan dengan mengumpulkan objek-objek yang
sudah tak terpakai lagi secara otomatis oleh garbage collector. Penanganan
kesalahan juga dipermudah dalam Java dengan konsep Exception.
·
Bukan sekedar
bahasa tapi juga platform sekaligus arsitektur. Java mempunyai portabilitas
yang sangat tinggi. Ia dapat berada pada smartcard, pager, POS (Point of
Service), handphone, PDA, palm, TV, Embedded device (PLC, micro controller),
laptop, pc, dan bahkan server). Menyadari akan hal ini (one size doesn’t fit
all) Sun membagi arsitektur Java membagi tiga bagian, yaitu:
1.
Enterprise
Java (J2EE) untuk aplikasi berbasis web, aplikasi sistem tersebar dengan
beraneka ragam klien dengan kompleksitas yang tinggi. Merupakan superset dari
Standar Java.
2.
Standar Java
(J2SE), ini adalah yang biasa kita kenal sebagai bahasa Java, dan merupakan
fokus kita sekarang.
3.
Micro Java
(J2ME) merupakan subset dari J2SE dan salah satu aplikasinya yang banyak
dipakai adalah untuk wireless device / mobile device.
- Terdistribusi: Java dibuat untuk membuat aplikasi
terdistribusi secara mudah dengan adanya libraries networking yang
terintegrasi pada Java.
- Terinterpretasi:
Program Java dijalankan menggunakan interpreter yaitu Java
Virtual Machine (JVM). JVM merupakan aplikasi sederhana yang ditulis
dalam bahasa C untuk mengeksekusi program yang ditulis dalam bahasa Java.
JVM mengubah kode sumber (source code) Java yang telah dikompilasi
menjadi Java bytecodes sehingga dapat dijalankan pada platform yang
berbeda-beda.
- Kokoh (robust): Java
mempunyai reliabilitas atau keandalan yang tinggi. Compiler pada
Java mempunyai kemampuan mendeteksi eror secara lebih teliti dibandingkan
bahasa pemrograman lain. Java mempunyai runtime-Exception handling
untuk membantu mengatasi eror atau kesalahan pada pemrograman.
- Aman: Java
sebagai bahasa pemrograman untuk aplikasi internet dan terdistribusi,
memiliki beberapa mekanisme keamanan untuk menjaga aplikasi tidak
digunakan untuk merusak sistem komputer yang menjalankan aplikasi
tersebut.
- Portabel: Kode sumber (source code) maupun
program Java dapat dengan mudah dibawa ke platform yang
berbeda-beda tanpa harus dikompilasi ulang.
- Berkinerja Tinggi: Java
dapat melakukan optimasi pada byte code dengan baik sehingga
eksekusi program dapat dilakukan dengan cepat.
- Berkas berganda (multi-threaded): Berkas
yang dimaksud di sini yaitu bahwa Java mempunyai kemampuan untuk membuat
suatu program yang dapat melakukan beberapa pekerjaan sekaligus secara
simultan.
- Dinamis: Java
didesain untuk dapat dijalankan pada lingkungan yang dinamis. Perubahan
pada suatu class dengan menambahkan properties ataupun method
dapat dilakukan tanpa menggangu program yang menggunakan class
tersebut.
D. STRUKTUR PEMROGRAMAN JAVA
Bahasa pemrograman java, merupakan bahasa pemrograman
yang diturunkan dari C. Sehingga, sebagian besar syntax-nya hampir mirip dengan
C. Dalam bahasa Java juga dikenal sangat case sensitive, sehingga besar
kecilnya huruf yang kita ketikkan ke dalam program dapat mempengaruhi program
itu sendiri. Java yang sudah disusun menggunakan OOP murni, yaitu pada setiap
program harus memiliki sebuah class juga dapat disusun menjadi program procedural.
Jadi, supaya benar- benar menjadi program yang berbasis OOP kita harus mengenal
struktur java terlebih dahulu. Struktur bahasa pemrograman java, terdiri atas 3
layer (lapisan). Yaitu :
- Package, yaitu suatu pengelompokan class-class
dalam satu paket agar mudah digunakan. Suatu package dapat memiliki satu
atau lebih subpackage sehingga dapat membentuk suatu hierarki.
- Import, yaitu suatu deklarasi yang
digunakan untuk menunjukkan nama package yang digunakan dalam suatu
program java. Import juga memiliki hierarki seperti package.
- Class, yaitu merupakan ciri utama
program java. Class adalah inti dari program dengan ekstensi
Dalam program java, nama suatu class harus sama dengan nama file
*.java tersebut. Misal terdapat program hello.java, maka nama class
tersebut harus menjadi class hello{}. Class terdiri dari :
- Nama class
- Variabel
- konstruktor
- Method
E. VERSI JAVA
Bahasa pemprograman java telah mengalami beberapa
perubahan sejak versi JDK 1.0 serta berbagai penambahan kelas dan paket ke
perpustakaan standar. Sejak versi J2SE 1.4, evolusi Bahasa pemprograman java
telah diatur oleh Java Community Process (JCP), yang menggunakan Java
Specification Requests (JSRs) untuk mengusulkan dan menentukan penambahan dan
perubahan pada platform Java. Bahasa ini ditentukan oleh Java Language
Specification (JLS), perubahan pada JLS dikelola dengan JSR 901.
Setelah Java 7 rilis, Oracle berjanji untuk kembali ke
2 tahun siklus rilis. Akan tetapi, pada tanggal 18 April 2013, Oracle
mengumumkan bahwa mereka akan menunda Java 8 dengan satu tahun, dalam rangka
meningkatkan model keamanan Java. Lebih lengkapnya versi java dapat dirinci sebagai
berikut:
1. JDK Alpha and Beta
(1995)
Rilis ke publik
memiliki APIs dan ABIs yang sangat tidak stabil dan JDK Alpha and Beta
disediakan untuk browser web Java bernama WebRunner.
2. JDK 1.0 (23 Januari
1996)
Codename Oak. Versi
stabil pertama adalah JDK 1.0.2.disebut Java 1.
3. JDK 1.1 (19 Februari
1997)
Tambahan utama
meliputi:
o
sebuah retooling luas dari AWT model.
o
Inner classes ditambahkan ke bahasa
o
JavaBeans
o
JDBC
o
RMI
o
refleksi yang didukung Introspeksi saja, tidak ada
modifikasi pada runtime.
o
JIT compiler pada platform Microsoft Windows,
diproduksi untuk JavaSoft oleh Symantec
4. J2SE 1.2 (8 Desember
1998)
Nama kode Playground. Ini dan selanjutnya rilis
melalui J2SE 5.0 yang namanya retrospektif Java 2 dan nama versi
"J2SE" ( Java 2 Platform, Standard Edition ) diganti JDK untuk
membedakan platform dasar dari J2EE ( Java 2 Platform, Enterprise Edition ) dan
J2ME ( Java 2 Platform , Micro Edition ). Ini adalah rilis yang sangat
signifikan dari Java karena tiga kali lipat ukuran platform Java untuk 1.520
kelas dalam 59 paket.
Tambahan utama meliputi:
o
kata kunci strictfp
o
swing API grafis telah diintegrasikan ke dalam kelas
ini
o
Sun JVM dilengkapi dengan compiler JIT untuk pertama
kalinya
o
Java plug-in
o
Java IDL , sebuah IDL pelaksanaan CORBA
interoperabilitas
5. J2SE 1.3 (8 Mei 2000)
Nama kode Kestrel. Perubahan yang paling
menonjol adalah:
o
HotSpot JVM (HotSpot JVM pertama kali dirilis pada
bulan April 1999 untuk J2SE 1.2 JVM)
o
RMI telah dimodifikasi untuk mendukung kompatibilitas
dengan opsional CORBA
o
Penamaan Java dan Direktori Antarmuka (JNDI) termasuk
dalam perpustakaan inti (sebelumnya tersedia sebagai ekstensi)
o
Java Platform Debugger Architecture (JPDA)
o
Java Sound
o
Kelas proxy Sintetis
6. J2SE 1.4 (6 Februari
2002)
Codename Merlin. Ini
adalah rilis pertama platform Java dikembangkan di bawah Java Community Process
sebagai JSR 59 .
7. J2SE 5.0 (30 September
2004)
Nama kode Tiger.
Awalnya nomor 1,5, yang masih digunakan sebagai nomor versi internal. Versi ini dikembangkan di bawah JSR 176 . J2SE
5.0 memasuki masa akhir-publik-update pada April 8, 2008 pembaruan tidak lagi
tersedia untuk umum sebagai tanggal 3 Nopember 2009. Update akan tersedia untuk
Pelanggan Oracle hingga Mei 2014.
Java 5 adalah rilis
terakhir dari Java untuk secara resmi mendukung Windows 9x baris Microsoft
(Windows 95, Windows 98, Windows ME), sementara Windows Vista adalah versi
terbaru dari Windows yang J2SE 5 didukung pada sebelum ke Java 5 akan akhir
hidup pada bulan Oktober 2009. Java 5
adalah versi default Java diinstal pada Apple Mac OS X 10.5 (Leopard). Java 6
dapat diinstal dan ditetapkan sebagai default yang akan digunakan pada 64-bit
(Core 2 Duo dan lebih tinggi) mesin prosesor. [18] Java 6 juga didukung oleh
mesin 32-bit menjalankan Mac OS X 10.6 (Snow Leopard).
8. Java SE 6 (11 Desember
2006)
Nama kode Mustang. Pada
versi ini, Sun diganti nama "J2SE" dengan Java SE dan menjatuhkan
".0" dari nomor versi. internal penomoran untuk pengembang tetap
1.6.0. Versi ini dikembangkan di bawah JSR 270 . Selama tahap pengembangan,
baru dibangun termasuk perangkat tambahan dan perbaikan bug yang dirilis
sekitar mingguan. Versi beta yang dirilis pada bulan Februari dan Juni 2006,
menjelang rilis final yang terjadi pada tanggal 11 Desember 2006.
9. Java SE 7 (28 Juli
2011)
Java 7 (nama kode
Dolphin) adalah update besar yang diluncurkan pada 7 Juli 2011 dan dibuat
tersedia untuk pengembang pada tanggal 28 Juli 2011. Periode pembangunan ini disusun menjadi tiga
belas tonggak; Juni 6, 2011, yang terakhir dari tiga belas tonggak selesai.
Rata-rata, 8 membangun (yang umumnya termasuk perangkat tambahan dan perbaikan
bug) yang dirilis per tonggak. The daftar fitur di proyek OpenJDK 7
mencantumkan banyak perubahan.
10. Java SE 8 (Maret 2014)
Java 8 diharapkan Maret
2014 dan akan mencakup fitur yang direncanakan untuk Java 7 tetapi kemudian
ditangguhkan.
11. Java SE 9 (2016)
Pada JavaOne 2011,
Oracle membahas fitur mereka berharap untuk memiliki di 2016 rilis Java 9,
termasuk dukungan yang lebih baik untuk tumpukan multi-gigabyte, integrasi kode
asli yang lebih baik, dan self-tuning JVM.
12. Java SE 10 (belum
dikonfirmasi)
Ada spekulasi menghapus tipe data primitif dan
bergerak menuju 64-bit addressible array untuk mendukung set data yang besar.
F. TIPE DATA JAVA
Java memiliki tipe data yang
dapat dikategorikan menjadi duakelompok, yaitu tipe data primitif dan
referensi.
1. Tipe Data Primitif
Delapan macam tipe data
primitif dalam pemrograman Java, yaitu :
a.
Integer ( Bilangan
Bulat )
Integer merupakan tipe
data numerik yang digunakan apabilatidak berurusan dengan pecahan atau bilangan
desimal. Tipe datanumerik yang termasuk integer adalah sebagai berikut :
Byte : Memiliki nilai
integer dari -128 sampai +127 danmenempati 1 byte ( 8 bits ) di memori
Short : Memiliki nilai
integer dari -32768 sampai 32767 danmenempati 2 bytes ( 16 bits ) di memori
Int : Memiliki nilai
integer dari -2147483648 sampai2147483647 dan menempati 4 bytes ( 32 bits ) di memori
Long: Memiliki nilai -9223372036854775808 sampai 9223372036854775807 dan
menempati 8 bytes ( 64 bits) di memori.
b.
Floating Point (
Bilangan Pecahan )
Floating Point
digunakan untuk menangani bilangan decimal atauperhitungan yang lebih detail
dibanding integer. Semua bilangan pecahan atau desimal dalam Java tanpa
diakhiri huruf f akan dianggap sebagai double. Sedangkan bilangan
yang ingin dikategorikan sebagai
float harus diakhiri dengan huruf F. Misalnya : 4.22 F atau 2.314f. Sedangkan untuk
bilangan double, bisa menambah dengan huruf D, karena secara default
bilangan dengan koma atau pecahan atau desimal akan dianggap
sebagai double.
c.
Char
Char adalah karakter
tunggal yang didefinisikan dengan diawalidan diakhiri dengan tanda „ (petik
tunggal). Char berbeda dengan String, karena String
bukan merupakan tipe data primitif, tetapi sudahmerupakan sebuah objek. Tipe
char mengikuti aturan unicode, sehingga dapat menggunakan kode /u kemudian diikuti bilangan dari 0 sampai 65535, tetapi yang biasa digunakan adalah bilangan heksadesimal dari 0000 sampai FFFF.
d.
Boolean
Dalam Java dikenal tipe
data boolean yang terdiri dari dua nilai saja, yaitu true dan false. Boolean sangat penting dalam mengevaluasi suatu kondisi, dan sering digunakan untuk menentukan alur program.
2. Tipe Data Referensi
Kelebihan pemrograman
berorientasi objek adalah dapat mendefinisikan tipe
data baru yang merupakan objek dari class tertentu.Tipe data ini digunakan
untuk mereferensikan objek atau class tertentu,seperti String.
G. FITUR JAVA
1. Java
Virtual Machine (JVM)
JVM adalah sebuah mesin imajiner (maya) yang bekerja
dengan menyerupai aplikasi pada sebuah mesin nyata. JVM menyediakan spesifikasi
hardware dan platform dimana kompilasi kode Java terjadi. Spesifikasi inilah
yang membuat aplikasi berbasis Java menjadi bebas dari platform manapun karena
proses kompilasi diselesaikan oleh JVM.
Aplikasi program Java diciptakan dengan file teks
berekstensi .java. Program ini dikompilasi menghasilkan satu berkas bytecode
berekstensi .class atau lebih. Bytecode adalah serangkaian instruksi serupa
instruksi kode mesin. Perbedaannya adalah kode mesin harus dijalankan pada
sistem komputer dimana kompilasi ditujukan, sementara bytecode berjalan pada
java interpreter yang tersedia di semua platform sistem komputer dan sistem
operasi.
2. Garbage Collection
Banyak bahasa pemrogaman lain yang mengijinkan seorang
pemrogram mengalokasikan memori pada saat dijalankan. Namun, setelah
menggunakan alokasi memori tersebut, harus terdapat cara untuk menempatkan
kembali blok memori tersebut supaya program lain dapat menggunakannya. Dalam C,
C++ dan bahasa lainnya, adalah pemrogram yang mutlak bertanggung jawab akan hal
ini. Hal ini dapat menyulitkan bilamana pemrogram tersebut alpa untuk
mengembalikan blok memori sehingga menyebabkan situasi yang dikenal dengan nama
memory leaks.
Program Java melakukan garbage collection yang berarti
program tidak perlu menghapus sendiri objek – objek yang tidak digunakan lagi.
Fasilitas ini mengurangi beban pengelolaan memori oleh pemrogram dan mengurangi
atau mengeliminasi sumber kesalahan terbesar yang terdapat pada bahasa yang
memungkinkan alokasi dinamis.
3. Code Security
Code Security terimplementasi pada Java melalui
penggunaan Java Runtime Environment (JRE).Java menggunakan model pengamanan 3
lapis untuk melindungi sistem dari untrusted Java Code.
Pertama, class-loader menangani pemuatan kelas Java ke
runtime interpreter. Proses ini menyediakan pengamanan dengan memisahkan kelas
– kelas yang berasal dari local disk dengan kelas – kelas yang diambil dari
jaringan. Hal ini membatasi aplikasi Trojan karena kelas – kelas yang berasal
dari local disk yang dimuat terlebih dahulu.
Kedua, bytecode verifier membaca bytecode sebelum
dijalankan dan menjamin bytecode memenuhi aturan – aturan dasar bahasa Java.
Ketiga, manajemen keamanan menangani keamanan tingkat
aplikasi dengan mengendalikan apakah program berhak mengakses sumber daya
seperti sistem file, port jaringan, proses eksternal dan sistem windowing.
Setelah seluruh proses tersebut selesai dijalankan, barulah kode program di
eksekusi. Java juga menyediakan beragam teknik pengamanan lain :
a.
Bahasa dirancang untuk mempersulit eksekusi kode
perusak. Peniadaan pointer merupakan langkah besar pengamanan. Java tidak
mengenal operasi pointer. Di tangan pemrogram handal, operasi pointer merupakan
hal yang luar biasa untuk optimasi dan pembuatan program yang efisien serta
mengagumkan. Namun mode ini dapat menjadi petaka di hadapan pemrogram jahat.
Pointer merupakan sarana luar biasa untuk pengaksesan tak diotorisasi. Dengan
peniadaan operasi pointer, Java dapat menjadi bahasa yang lebih aman.
b.
Java memiliki beberapa pengaman terhadap applet.
Untuk mencegah program
bertindak mengganggu media penyimpanan, maka applet tidak diperbolehkan
melakukan open, read ataupun write terhadap berkas secara sembarangan. Karena
Java applet dapat membuka jendela browser yang baru, maka jendela mempunyai
logo Java dan teks identifikasi terhadap jendela yang dibuka. Hal ini mencegah
jendela pop-up menipu sebagai permintaan keterangan username dan password.
4. Applet
Program Java yang dapat
berjalan di atas browser, yang dapat membuat halaman HTML lebih interaktif.
5. Java Networking
Sekumpulan API yang
menyediakan fungsi untuk aplikasi-aplikasi jaringan, seperti penyediaan akses
untuk TCP, UDP, IP Address dan URL. Tetapi Java Networking tidak menyediakan
akses untuk ICMP dikarenakan alas an sekuriti dan pada kondisi umum hanya
administrator (root) yang bisa memanfaatkan Protokol ICMP.
6. Java Database
Connectivity(JDBC)
Menyediakan sekumpulan API
yang dapat digunakan untuk mengakses database seperti
Oracle,MySQL,PostgreSQL,Microsoft SQL Server.
7. Java Security
Java Security menyediakan
sekumpulan API untuk mengatur security dari aplikasi Java baik secara High
Level datau Low Level, seperti public/private key menegement dan certificates.
8. Java Swing
Menyediakan sekumpulan API
untuk membangun aplikasi-aplikasi GUI dan model GUI yang diinginkan bisa
bermacam-macam.
9. Java RMI
Java RMI menyediakan
sekumpulan API untuk membangun aplikasi-aplikasi Java yang mirip dengan model
RPC (remote Procedure Call), jadi objek-objek Java bisa di call secara remote
di Jaringan Komputer.
10. Java 2D/3D
Merupakan sekumpulan API untuk
membangun grafik-grafik 2D/3D yang menarik dan juga akses ke printer.
11. Java Server Pages (JSP)
Berkembang dari Java Servlet
yang digunakan untuk menggantikan aplikasi-aplikasi CGI.JSP yang mirip ASP dan
PHP merupakan alternatif terbaik untuk solusi aplikasi internet.
12. JNI (Java Native
Interface)
Merupakan sekumpulan API yang
digunakan untuk mengakses fungsi-fungsi pada library (*.dll atau *.so) yang
dibuat dengan bahasa pemrograman yang lain seperti C, C++, dan Basic.
13. Java Sound
Menyediakan kumpulan API untuk
manipulasi Sound.
14. Java IDL + CORBA
Menyediakan dukungan Java
untuk implementasi CORBA (Common Object Request Broker) yang merupakan model
distributed-Object untuk solusi aplikasi besar di dunia Networking.
15. Java Card
Java Card utamanya dipakai
untuk aplikasi-aplikasi pada smart card, yang sederhana wujudnya seperti SIM
Card pada Handphone.
16. JTAPI (Java Telephony
API)
Sekumpulan API untuk
memanfaatkan devices-devices telephony, sehingga cocok untuk aplikasi-aplikasi
CTI (Computer Telephony Integration) yang dibutuhkan seperti ACD (Automatic
Call Distribution) PCPBX dan lainnya.
H. SIMULASI APLIKASI
JAVA 2 PLATFORM MICRO EDITION (J2ME) - JAVA MIDlet
1. Teknologi Wireless
Java
Secara konsep, teknologi wireless dapat dibagi dalam dua
katagori, pertama untuk local dan kedua untuk area yang luas. Peralatan
yang termasuk dalam katagori pertama misalnya adalah remote control untuk
membuka atau mengunci mobil maupun garasi, telepon cordless 900Mhz, peralatan
mainan dengan radio control, atau jaringan wireless. Peralatan wireless jenis
pertama ini hanya bekerja untuk daerah dengan jangkauan yang tidak terlalu
jauh. Sedangkan peralatan jenis aplikasi yang kedua diantaranya adalah pager,
handphone, pda, dan sejenisnya.
Jangkauan dari perangkat tersebut
jauh lebih besar dari aplikasi jenis pertama. Karena jaringan yang ada di
permukaan bumi berupa cell-tower, peralatan komunikasi bergerak seperti
handphone menerima layanan dari sebuah wireless
carrier atau perusahaan yang mengoperasikan
cell-tower tersebut.
Aplikasi komunikasi bergerak, dalam
perkembangan awal masing-masing vendor
menghasilkan platform aplikasi dan sistem operasi sendiri. Sehingga sebuah
peralatan handphone Nokia dan Siemens mempunyai platform aplikasi
masing-masing. Perbedaaan aplikasi
menyebabkan suatu platform aplikasi maupun sistem operasi dalam handphone Nokia
tidak dapat dijalankan dalam peralatan handphone Siemens misalnya. Sehingga
berakibat memperburuk pengembangan aplikasi-aplikasi yang baru.
Standarisasi yang dilakukan untuk
membuat suatu bahasa pemrograman yang memiliki kebebasan platform atau platform
independence. Salah satu teknologi Java adalah
“write once run everywhere”,
sehingga protabilitas Java merupakan suatu kekuatan yang dimiliki Java.
Java dijalankan pada sistem operasi apapun tanpa perlu kompilasi ulang program
Java yang dibuat. Untuk komunikasi bergerak,
Sun Microsystem mengenalkan Java
2 Micro Edition (J2ME) yang merupakan salah satu bagian teknologi Java yang
digunakan untuk aplikasi Java yang berjalan pada perangkat mobile device dan
teknologi aplikasi wireless.
2. Java
Virtual Machine (JVM)
Java Virtual Machine adalah
software yang berfungsi untuk menjalankan program Java supaya dapat dimengerti
oleh komputer. Kode program Java ditulis menggunakan editor teks seperti
Notepad, Textpad, Editplus, Jcreator dan lainnya.
3. Java Application Programming Interface
(Java API)
Java API merupakan komponen-komponen
dan kelas Java yang sudah jadi, yang memiliki berbagai kemampuan. Kemampuan untuk menangani
objek, string, angka dan sebagainya
1. Java Applet merupakan program
Java yang berjalan di atas browser. Penggunaan applet ini akan membuat halaman
HTML lebih dinamis dan menarik.
2. Java
Networking
3. Java
Database Connectivity (JDBC)
JDBC API terdiri atas
class dan interface yang ditulis dalam
bahasa Java untuk sebagai alat bantu
bagi pembuat program (developer)
dan menyediakan sekumpulan API untuk mengatur keamanan mengakses database
seperti Oracle, MySQL, PostgreSQL, Microsoft SQL Server. Jadi keunggulan API
JDBC dapat mengakses sumber data dan berjalan pada semua Platform yang
mempunyai Java Viortual Machine (JVM).
4. Java
Server Pages (JSP)
JSP adalah suatu teknologi web berbasis bahasa pemrograman Java dan
berjalan pada platform Java. JSP merupakan pengembangan dari Servlet serta
merupakan bagian dari teknologi Java 2 Platform, Enterprise Edition
(J2EE).
5. Java
Card
4 Java 2
Platform TM
4.1 Java 2 Platform, Standard Edition (J2SE ) Platform digunakan untuk menjalankan dan
mengembangkan aplikasi Java pada level Personal
Computer (PC). Platform ini berisi class-class inti pada Java dan Graphical
User Interface (GUI).
4.2 Java 2 Platform, Micro Edition
(J2METM)
Platform ini digunakan
untuk menjalankan dan mengembangkan aplikasi-aplikasi Java pada handheld devices atau perangkat-perangkat
semacam handphone, Personal Digital
Assistance (PDA) dan PocketPC
4.3 Java
2 Platform, Enterprise Edition (J2EETM )
Platform ini berupa
paket yang berisi class-class dan
interface-interface yang digunakan untuk menjalankan dan mengembangkan
aplikasi Java berbasis web, seperti
class-class Servlet, Java Server Pages (JSP) dan Enterprise JavaBeans
(EJB) serta Java CORBA.
4.4 Java
2 Platform, Micro Edition (J2ME TM)
Komponen-komponen J2ME terdiri dari Java Virtual Machine (JVM) yang
digunakan untuk menjalankan aplikasi Java pada emulator atau handheld device, Java API (Aplication Programming Interface) dan tools lain untuk pengembangan aplikasi Java
semacam emulator Java Phone, emulator
Motorolla dari J2ME wireless toolkit.
Dalam pengembangan aplikasi wireless dengan Java, J2ME dibagi menjadi dua buah
bagian diantaranya ialah bagian configuration dan profile.
1. Lapisan Konfigurasi (Configuration Layer) J2ME mempunyai dua konfigurasi
yaitu `Connected Limited Device
Configuration (CLDC) dan Connected Device Configuration (CDC).
2. Lapisan Profil (Profile Layer)
J2ME mempunyai beberapa profil antara lain :
1. Mobile Iformation Device Profile
(MIDP)
2. Foundation Profile (FP)
3. Personal Profile
Dilihat dari Gambar 2.4 diatas maka J2ME (Java 2 Micro Edition) mempunyai
lapisan konfigurasi dan profile yang didukung oleh Java Virtual Machine
(C-Virtual Machine dan K-Virtual Machine).
3 Connected Limited Device Configuration (CLDC) Spesifikasi CLDC adalah
sebagai berikut
1. Mengimplementasikan subset dari J2SE]
2. JVM yang digunakan dikenal dengan
nama K-Virtual Machine (KVM)
3.Digunakan pada perangkat handheld
dengan ukuran memori terbatas (160-512
Kbytes)
4. Prosesor : 16 Bit atau 32 Bit
Pada bagian ini secara detail
CLDC diperlukan untuk pengembangan aplikasi wireless dengan MIDP
implementasinya CLDC digunakan untuk program Java pada perangkat keras dengan
ukuran memori yang terbatas, pada 160 sampai dengan 512 Kilobyte. Akibatnya, fitur fitur yang kurang penting
untuk diimplementasikan dalam handheld
device yang bersangkutan dari Java 2 harus dibuang.
5 MIDlets
Aplikasi yang berjalan pada sebuah perangkat yang mendukung MIDP disebut
dengan MIDlets, atau lebih singkatnya MIDlet merupakan aplikasi yang dibuat
menggunakan Java 2 Micro Edition dengan profile
Mobile Information Device Profile (MIDP).
MIDP dikhususkan untuk digunakan pada handset dengan kemampuan CPU, memori,
keyboard dan layer yang terbatas, seperti
handphone, pager, PDA dan sebagainya.
Gambar 2.6 Arsitektur aplikasi MIDP
Pada Gambar 2,6 Menunjukkan bahwa aplikasi yang mendukung perangkat MIDP adalah
aplikasi MIDlet yang juga termasuk bagian dari Java 2 Micro Edition.
5.1 Daur
Hidup (LifeCycle) MIDlet
Lifecycle dari sebuah MIDlet ditangani oleh Application Management
Software (AMS). AMS adalah sebuah
lingkungan tempat siklus dari sebuah MIDlet, mampu untuk diciptakan,
dijalankan, dihentikan maupun dihilangkan. AMS sering pula disebut dengan Java Application Manager (JAM). MIDlet
memiliki beberapa state, yaitu Pause,
Active dan Destroy. Ketika masing-masing
state dipanggil, beberapa method yang
bersesuaian dipanggil. Method-method
tersebut merupakan bawaan dari J2ME.
Untuk menjelaskan proses MIDlet dalam
Java Aplication Manager (JAM) adalah pada Gambar 2.7
Gambar 2.7 LifeCycle dan perubahan status
MIDlet
5.2.1
High Level API
Kelas-kelas yang
menyediakan fungsionalitas untuk pembuatan GUI pada MIDP ada pada paket javax.microedition.lcdui. Pada paket tersebut
terdapat tiga interface dan 21 kelas.
Interface tersebut adalah Display, Screen dan Form.
5.2.2
Low Level API
Pada level pemrograman
yang lebih rendah (low level), akan ditemukan
fungsionalitas yang lebih spesifik ke jenis handheld yang digunakan. Kelas-kelas untuk pemrograman GUI pada level
yang lebih rendah ini diimplementasikan oleh kelas
javax.microedition.lcdui.Canvas dan
javax.microedition.lcdui.Graphics. Kelas
Canvas ini memungkinkan pengguna untuk menggambar garis, titik dan
elemen-elemen dasar lain.
5.3
Servlet
Tujuan servlet adalah untuk meng-generate respons yang bersifat
dinamis.
Cara komunikasi antara client dan
server melalui protocol HTTP adalah sebagai berikut :
1.Client akan mengirimkan HTTP request ke server
2. Setelah request diterima oleh server, server akan memberikannya pada
servlet untuk dilakukan pemrosesan, misalnya akses ke database
3. Setelah pemrosesan selesai dilakukan, server akan mengembalikan
hasilnya ke client. Hasil pengembalian ini dapat
berbentuk file HTML yang akan ditampilkan di browser, image dan data
binary.
5.3.1 HTTP
Servlet
Dua buah tipe request
HTTP yang paling umum digunakan adalah
GET dan POST yang juga dikenal sebagai
request method. Request GET
digunakan untuk mendapatkan atau menerima informasi dari server. Pada umumnya request GET digunakan untuk menerima file HTML atau image. Sedangkan request POST
digunakan untuk mengirimkan data ke server. Request POST akan mengirimkan informasi server dalam bentuk HTML yang
berisi data yang dimasukkan oleh client.
5.4 Konsep
Database Manajement System (DBMS)
DBMS terdiri dari
Database dan Set Program pengelola untuk menambah data, menghapus data,
mengambil dan membaca data.
5.4.1 Structured Query Language (SQL)
MySQL adalah Relation
Database Manajemen Sistem yang didistribusikan secara gratis di bawah lisensi
GPL (General Public lisence). Suatu database relational menyimpan data dalam
table table terpisah. Hal ini memungkinkan kecepatan dan flexibelitas. MySQL
merupakan turunan salah satu konsep utama dalam database sejak lama yaitu SQL
(Struktured Query Language). MySQL menggunakan standar SQL (Structured Query
Language), yaitu bahasa standar yang paling banyak digunakan untuk mengakses
database dan SQL dirancang khusus untuk
berkomunikasi dengan database.
Gambar Tampilan dengan MySQL Front
Kelebihan dan Kekurangan Java
kelebihan
Java
Kelebihan utama dari Java diantaranya ialah:
- Multiplatform.
Kelebihan utama dari Java ialah dapat dijalankan di beberapa platform / sistem
operasi komputer, sesuai dengan prinsip tulis sekali, jalankan di
mana saja. Dengan kelebihan ini pemrogram cukup menulis sebuah program
Java dan dikompilasi (diubah, dari bahasa yang dimengerti manusia menjadi
bahasa mesin / bytecode) sekali lalu hasilnya dapat dijalankan
di atas beberapa platform tanpa perubahan. Kelebihan ini memungkinkan
sebuah program berbasis java dikerjakan diatas operating system Linux
tetapi dijalankan dengan baik di atas Microsoft Windows. Platform yang
didukung sampai saat ini adalah Microsoft
Windows, Linux, Mac OS dan Sun Solaris. Penyebanya adalah
setiap sistem operasi menggunakan programnya sendiri-sendiri (yang dapat
diunduh dari situs Java) untuk meninterpretasikan bytecode tersebut.
- OOP (Object Oriented
Programming – Pemrogram Berorientasi Objek) yang artinya semua
aspek yang terdapat di Java adalah Objek. Java merupakan salah satu
bahasa pemrograman berbasis objek secara murni. Semua tipe data diturunkan
dari kelas dasar yang disebut Object. Hal ini sangat
memudahkan pemrogram untuk mendesain, membuat, mengembangkan dan
mengalokasi kesalahan sebuah program dengan basis Java secara cepat,
tepat, mudah dan terorganisir. Kelebihan ini menjadikan Java sebagai salah
satu bahasa pemograman termudah, bahkan untuk fungsi fungsi yang advance
seperti komunikasi antara komputer sekalipun.
- 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.
- 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.
- 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).
Kekurangan
Java
- Tulis
sekali, perbaiki di mana saja – Masih ada beberapa hal
yang tidak kompatibel antara platform satu dengan platform lain.
Untuk J2SE, misalnya SWT-AWT bridge yang sampai
sekarang tidak berfungsi pada Mac OS X.
- Mudah didekompilasi.
Dekompilasi adalah proses membalikkan dari kode jadi menjadi kode sumber.
Ini dimungkinkan karena kode jadi Java merupakan bytecode yang
menyimpan banyak atribut bahasa tingkat tinggi, seperti nama-nama kelas,
metode, dan tipe data. Hal yang sama juga terjadi pada Microsoft .NET
Platform. Dengan demikian, algoritma yang digunakan program akan lebih
sulit disembunyikan dan mudah dibajak/direverse-engineer.
- Penggunaan memori yang banyak.
Penggunaan memori untuk program berbasis Java jauh lebih besar daripada
bahasa tingkat tinggi generasi sebelumnya seperti C/C++ danPascal (lebih
spesifik lagi, Delphi dan Object Pascal). Biasanya ini bukan
merupakan masalah bagi pihak yang menggunakan teknologi terbaru (karena
trend memori terpasang makin murah), tetapi menjadi masalah bagi mereka
yang masih harus berkutat dengan mesin komputer berumur lebih dari 4
tahun.
- Sun membagi arsitektur Java menjadi 4 bagian,
yaitu :
- Enterprize Edition(J2EE) untuk aplikasi Web,
aplikasi system tersebar dengan beraneka ragam klien dengan kompleksitas
yang tinggi. Merupakan SuperSet dari Standart Java.
- Standart Edition (J2SE) ini dikenal sebagai
bahasa Java.
- Micro Edtiton (J2ME) merupakan subset dari J2SE
dan salah satu aplikasinya yang banyak dipakai adalah untuk Mobile Device.
BAB III
PENUTUP
Kesimpulan
Kesimpulan yang dapat ditarik dari pembahasan
mengenai java yaitu:
1. Java dikenal sebagai bahasa pemrograman yang
bersifat strongly, yang berarti diharuskan mendeklarasikan tipe data dari semua
variable yang apabila lupa atau salah dalam mengikuti aturan pendeklarasian
variable, maka akan terjadi error pada saat proses kompilasi.
2. Tipe data yang terdapat pada bahasa pemrograman
Java pada umumnya tidak jauh berbeda dengan bahasa pemrograman lain seperti C,
C++, Pascal, Basic, dan lainnya, yakni terdiri dari integer, floating point,
char, dan boolean.
3. Aturan penulisan variabel pada bahasa pemrograman
Java juga tidak jauh berbeda dengan bahasa pemrograman lain seperti C, C++,
Pascal, Basic, dan lainnya, yakni harus diawali dengan huruf/abjad, karakter
mata uang, dan underscore ( _ ) dan terdiri dari huruf/abjad, angka, dan
underscore ( _ ), serta tidak boleh menggunakan kata-kata yang dikenal oleh
bahasa pemrograman Java (keyword), seperti byte, case, int, dan lainnya.
4. Sama halnya dengan semua bahasa dapat dipemrograman, Java juga menyediakan
operator-operator aritmatika untuk memanipulasi data numerik.
5. Selain operator aritmatika, Java juga mempunyai
operator-operator lain, seperti operator increment dan decrement, operator
assignment (penugasan), operator relasi, operator logical, operator bitwise
(yang terdiri dari and, or, xor, dan complement), dan operator precedence.
Saran
Dikarenakan cukup rumitnya bahasa pemrograman Java dan
semakin banyaknya pesaing yang berkompetisi di bidang pemrograman Java, maka
Penyusun menyarankan kepada pembaca (khususnya pemula), untuk sejak dini
mempelajari bahasa pemrograman tersebut.
Daftar
pustaka
Wicaksono,
Adi. 2002. Pemrograman Aplikasi Wireless
dengan Java. Elex Media Komputindo. Jakarta
----. 2001.
Java 2 Platform, Micro Edition Wireless Toolkit User’s Guide (Version
1.0.3). Sun Microsystems, Inc.
California.
http://ilmukomputer.org/2009/05/pemrograman-dengan-c-part-ii/
http://unyildadakan.com/java/sejarah-dan-perkembangan-java/
http://giriayoga.com/2010/10/28/sejarah-java/
.jpg)









0 komentar:
Posting Komentar