IMPLEMENTASI BAHASA PEMROGRAMAN JAVA UNTUK PEMBELAJARAN
“Diajukan
untuk memenuhi salah satu tugas dari mata kuliah Teknologi Informasi dan
Komunikasi”
Dosen
pengampu: Septia Lutfi M,pd
Disusun Oleh : Mutia Nurotul Bariyah
NIM : 1102412022
Rombel : 02 (dua)
NIM : 1102412022
Rombel : 02 (dua)
TEKNOLOGI PENDIDIKAN
FAKULTAS ILMU PENDIDIKAN
UNIVERSITAS NEGERI SEMARANG
2013
KATA PENGANTAR
Alhamdulilah, puji
syukur saya haturkan kehadirat Allah SWT. Atas rahmat-Nya lah saya dapat
menyelesaikan makalah ini dengan baik.
Tak lupa saya juga haturkan terima kasih
yang sebesar-besarnya kepada semua pihak yang telah mendukung dan membantu
dalam menyelesaikan makalah ini.
Saya menyadari bahwa Makalah ini memang belum mencapai
kesempurnaan, masih banyak kekurangan-kekurangan yang harus diperbaiki. Untuk
itu, saya sebagai penyusun mengharapkan kritik dan saran yang membangun dari para pembaca agar dapat
memperbaiki dalam penulisan Makalah yang saya buat selanjutnya.
Akhirnya
saya sebagai penyusun
berharap, semoga Makalah yang saya buat dapat menambah wawasan kepada saya pada
khususnya dan kepada para pembaca pada umumnya.
Mutia Nurotul Bariyah
Daftar
Isi
Halaman
Halaman
Sampul .................................................................................................1
Kata
Pengantar .....................................................................................................2
Daftar
Isi ..............................................................................................................3
BAB I. PENDAHULUAN
A. Latar
Belakang
...................................................................................4
B. Rumusan
Masalah ..............................................................................5
C. Tujuan
................................................................................................5
BAB II. PEMBAHASAN
A. Pengertian
Java ...................................................................................6
B. Sejarah
Java
........................................................................................7
C. Evolusi
Java Platfrom
........................................................................10
D. Edisi
Java
...........................................................................................11
E. Fitur-fitur
Java
...................................................................................14
F. Kegunaan
Java ...................................................................................20
G. Aturan
Dasar Java
..............................................................................22
H. Karakteristik
Bahasa Pemrograman Java.....................................................................................................22
I. Konsep
OOP Java...............................................................................25
J. Implementasi
Bahasa Pemrograman Java
Untuk
Pembelajarn Geometri..............................................................................................29
K. Kelebihan
dan Kekurangan Java ........................................................30
BAB III. PENUTUP
A. Simpulan
............................................................................................34
B. Saran
..................................................................................................35
C. Daftar
Pustaka ....................................................................................36
BAB
I
PENDAHULUAN
A. LATAR BELAKANG
Dengan
kondisi dunia yang semakin mengglobal, tak dapat dipungkiri bahwa kemajuan
perkembangan teknologi setiap tahunnya sudah menjadi barang wajib untuk
melakukan inovasi baru dari berbagai variasi yang berbasis Teknologi Informasi (TI).
Jika kita melihat realita masa sekarang nampaknya perbaharuan teknologi yang
sangat signifikan dan semakin modern, selalu diikuti oleh penggemar bidang IT.
Karena terbukti di zaman sekarang teknologi komputer sudah menyusupi hampir
semua bidang kehidupan manusia, baik dari tingkat pemerintah pusat sampai
pemerintah desa, perusahaan, supermarket, mini market, maupun
lembaga pendidikan dari semua jenjang hampir semua mengenal komputer. Komputer
dapat dijadikan sarana belajar dengan konsep e-learning yang melatih kita untuk
belajar mandiri.
Saat
ini, dengan perkembangan teknologi yang semakin berkembang dengan lingkungan
yang semakin luas dan banyak diminati, dan mempunyai nilai ekonomi yang sangat
tinggi yaitu dunia pemrograman komputer. Seperti halnya dunia pemrograman
komputer dikenal banyak bahasa pemrograman komputer, seperti C, C++, Pascal
Basic, Java, dan lain-lain. di anatara
bahasa pemrograman, java adalah yang paling diminati, karena perannya yang
sudah tidak diragukan lagi dan ke eksisannya dalam perkembangan TI. Oleh karena
itu yang akan dibahas dalam makalah ini adalah bahasa pemrograman java, dan
hal-hal menarik yang ada dalam bahasa pemrograman java.
B.
RUMUSAN
MASALAH
A. Apa
Pengertian Java ?
B. Bagaimana
Sejarah Munculnya Java ?
C. Seperti
Apa Evolusi Java Platfrom ?
D. Apa
Saja Edisi Java ?
E. Apa
Saja Fitur-fitur Java ?
F. Apa
Kegunaan Java ?
G. Bagaimana
Aturan Dasar Pada Java ?
H. Seperti
Apa Karakteristik Bahasa Pemrograman
Java ?
I. Bagaimana
Konsep OOP Pada Java ?
J. Bagaimana
Implementasi Bahsa Pemrograman Java Untuk Pembelajaran Geometri ?
K. Apa
Kelebihan dan Kekurangan Java ?
C.
TUJUAN
Makalah
ini disusun dengan tujuan sebagai sarana untuk mengikuti
pesatnya
perkembangan di bidang teknologi informasi dan komunikasi di masa sekarang,
salah satunya pada dunia pemrograman yang sekarang semakin banyak diminati dan
banyak hal menarik yang dapat di pelajari menegenai dunia pemrograman java
serta untuk menambah wawasan kita tentang bahasa pemrograman Java, yang
ternyata dapat pula diimplementasikan dalam pembelajaran geometri. Selain itu
tujuan disusunya makalah ini adalah untuk memenuhi tugas dari mata kuliah
Teknologi Informasi dan Komunikasi.
BAB II
PEMBAHASAN
A. PENGERTIAN JAVA
Java
adalah sebuah platfrom teknologi pemrograman yang dikembangkan oleh Sun
Micrisystem. Pertama kali dirilis tahun 1991 dengan nama kode Oak, yang
kemudian pada tahun 1995 kode Oak diganti dengan nama Java. Yang memotivasi
Java dibuat adalah untuk membuat sebuah bahasa pemrograman yang portable dan
independent terhadap pltfrom (platfrom independent). Java juga dapat membuat
perangkat lunak yang dapat ditanamkan (embedded) pada berbagai mesin dan
peralatan konsumer seperti handphone, microwave, remote control, dan lain-lain.
kemudian hal ini Java memiliki konsep yang disebut “write once run everywhere”
tersebut.
Kita
lebih suka menyebut Java sebagai sebuah teknologi dibanding hanya sebuah bahasa
pemrograman, karena Java lebih lengkap dibanding hanya sebuah bahasa pemrograman
konvensional. Dalam tingakatan level bahasa pemrograman, Java tergolong bahasa
tingkat lebih tinggi (higher-level language). Ciri khas dari bahasa yang
tingkatannya lebih tinggi adalah kemampuan user untuk memanipulasi operasi pada
level hardware lebih rendah. Bahkan pada bahasa higher-lever seperti Java, user
benar-benar tidak dapat melakukan manipulasi pada level hardware secara
kangsung, karena operasi-operasi pada hardware misalnya; pengalokasian memory,
penghapusan data pada memory sudah dilakukan secara otomatis oleh Java Virtual Machine (JVM).
Java
2 adalah generasi kedua dari Java platfrom. Sebuah mesin interpreter yang
diberi nama Java Virtual Machine (JVM). JVM ini lah yang akan membaca bytecode
dalam file. Class dari suatu program sebagai reprsentasi langsung dari program
yang berisi bahasa mesin. Dengan demikian bahasa java disebut sebagai bahasa
pemrograman yang portabel karena dapat dijalankan pada berbagai sistem operasi
seperti, Windows, Linux, Unix, MacOS, atau SymbianOS (mobile) asalkan pada
sistem operasi tersebut terdapat JVM. Kunci dari portabilitas ini adalah keluaran
hasil kompilasi java bukanlah file executable melainkan berbentuk bytecode.
Sebenarnya
eksekusi interpreter lebih lambat dibandingkan dengan kompilasi executable,
maka Sun menyuplai teknologi HotSpot yang menyediakan compiler JIT (Just
In-Time) untuk bytecode dan menjadi bagian dari JVM untuk mengkompilasi bytecode
menjadi executable code secara real-time, sehingga menjalankan aplikasi
Java lebih cepat.
Ekstensi
java harus dikompilasikan menjadi file bytecode, agar program java dapat
dijalankan. 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.
B.
SEJARAH
JAVA
Bahasa pemrograman Java pertama lahir dari The Green Project, yang berjalan selama 18 bulan, dari
awal tahun 1991 hingga musim panas1992. 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.
Selanjutnya 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. Yang kemudian perusahaan
itu menjadi bertambah maju serta jumlah karyawan yang meningkat dalam kurun
waktu yang cukup singkat, awalnya 13 lalu menjadi 70 orang. Dan pada rentan
waktu ini juga ditetapkan pemakaian internet sebagai medium yang menjembatani
kerja dan ide diantara mereka. Yang pada waktu itu internet hanya dipake di
kalanagan akademisi dan militer saja.
Terinspirasi dari film tahun 80-an, Blade Runner. Mereka menjadikan
perambah (browser) Mosaic sebagai landasan awal untuk membuat perambah java
pertama yang dinamai Web Runner, yang pada perkembanagan rilis pertama berganti
nama menjadi Hot Java.
Sun kemudian mengumumkan bahasa java sebagai bahasa yang mampu menjalankan
web secara interaktif dan aman. Pada pertengahan tahun 1995 Netscape
mengumumkan akan mengadopsi java di dalam browser mereka, sehingga pada waktu
itu secara defaco menjadi bahasa standar di dunia maya Internet. Perkembangan
java dipermudah lagi dengan tersedianya JDK (Java Development Kit) di situs
milik Sun yang dapat di download secara gratis. Kemudian di akhir tahun
1995,IBM dan Microsoft memutuskan untuk membeli lisensi Java untuk dipakai
dalam teknologi mereka. Bahasa Java itu sendiri dikembangkan dari bahasa sebelumnya
yaitu C++, karena proyek Green tersebut telah dikembangkan oleh orang-orang
yang dulunya bekerja dengan bahasa C++. Java lahir dari kebutuhan akan sebuah
pemrograman berorientasi objek. Java itu sendiri diciptakan karena ketidak
puasan akan kinerja C++ karena dinilai memeiliki banyak bug, berbiaya besar dan
tergantung pada platfrom.
Sekitar bulan Maret 1995, untuk pertama kali kode java versi 1.0a2 dibuka kesuksesan
mereka diikuti dengan pemberitaan
pertama kali pada surat kabar San
Jose Mercury News pada tanggal 23 Mei 1995.
Sayangnya
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 merk dagang tersebut, sehingga diambil nama penggantinya
menjadi “Java”. Nama ini diambil dari kopi murni yang digiling langsung dari
biji (kopi tubruk) kesukaan Gosling.
Versi keluaran awal java ditahun 1996 sudah merupakan versi relase sehingga
dinamakan java versi 1.0, versi ini menyertakan banyak paket standar awal yang
terus dikembangkan pada versi selanjutnya, seperti;
·
Java lang, yaitu peruntukan kelas elemen-elemen dasar
·
Java io, yaitu peruntukan kelas input dan output,
termasuk penggunaan berkas
·
Java until, yaitu peruntukan kelas pelengkap seperti
kelas struktur data dan kelas penaggalan
·
Java net, yaitu peruntukan kelas TCP/IP
·
Java awt, yaitu kelas dasar untuk aplikasi antar muka
dengan pengguna (GUI)
·
Java applet, yaitu kelas dasar aplikasi antar muka
untuk diterapkan pada penjelajah web
C.
EVOLUSI
JAVA PLATFROM
Munculnya
browser-browser baru, standar HTML pun mulai dikenal
namanya serta diperhitungkan keberadaannya, DOM menjadi lebih lengkap fiturnya
walaupun kegunaanya berbeda antar browser. Semakin banyak hal yang dapat
dilakukan Javascript, kebutuhan cross platfrom pun akhirnya muncul akibat
kurangnya monopoli browser. Pustaka dan framework Javascript pun banyak lahir,
hal itu tidak saja menjawab kebutuhan cross platfrom, pustaka ini juga menambahkan
fitur yang hilang lewat Javascript itu sendiri misalnya, struktur class,
variabel privat dan publik, pemanggil fungsi secara asinkron, emulasi
threading, dan masih banyak lagi.
Tidak hanya populer disisi klien, karakteristik Javascript rupanya juga
diinginkan disisi server (Jaxer). Bahkan kini telah berevolusi menjadi
platfrom, bukan hanya sekedar bahasa pelengkap. Banyak pihak yang kini
menawarkan platfrom dengan dukungan Javascript, bahkan ada yang
ekslusif mendukung javascript saja. Berikut ini contoh-contohnya platform
javascript:
·
Appjet
Layanan ini bekerja, sama seperti yang
dilakukan oleh Google lewat Google App Engine. Appjet ini hanya mendukung
Javascrip. Satu set API yang cukup komprehensif (printing,
utilities, xhr, etc) ditambah dengan pustaka sumbangan dari parapenggunanya
membuat Appjet mampu menjadi prasarana Rapid Prototyping.
·
TitaniumApp
Layanan ini banyak meniru
kesuksesan AdobeAIR dengan memberikan
SDK Opensource yang dapat dipakai untuk membangun desktop, web dan mobile app
dengan mudah melalui HTML, CSS dan Javascript API. Namun saat ini layanan
inibelum lengkap, tetapi akan tetap menarik karena akan berbeda dengan yang ada
di ADOBE AIR.
·
Javascript dari Joyent
Joyent telah berkecimpung dalam hal
application acceleration dan scaling service dengan produk Jpyent
acceleratiornya. Bahkan dalam waktu lalu telah mengakuisisi Reasonably Smart,
akan diluncurkan platfrom berbasis javascript.
D.
EDISI
JAVA
Sebagian
besar bahasa pemrograman modern berdiri atas diatas pustaka-pustaka kelas yang
telah ada untuk mendukung fungsionalitas. Sementara pada bahasa pemrograman
java, kelompok-kelompok kelas yang berkaitan erat dengan fungsi java yang
dimasukkan kedalam satu paket, bervariasi sesuai dengan edisi java. Dengan
masing-masing paket digunakan untuk maksut tertentu, baik untuk applet,
aplikasi standar, Skala Enterprise dan produk konsumer.
Seperti
yang telah diuraikan diatas bahawasannya Java merupakan bahasa pemrograman yang
dapat dijalankan disemua platfrom, diberagam lingkungan seperti; Internet,
Consumer electronic product dan Computer applications. Java platfrom tersedia
dalam tiga edisi untuk keperluan yang berbeda yaitu :
1. Java
2 Micro Edition (J2ME)
2. Java
2 Standard Edition (J2SE)
3. Java
2 Enterprise Edition (J2EE)
Pada pengembangan Enterprise applicationkita
menggunakan sejumlah besar paket. Pada Consumer Electronic Product, hanya
sebagian kecil bahasa yang diggunakan. Masing-masing edisi berisis Java 2
Software Development Kit (SDK) untuk mengembangkan aplikasi Java 2 Run Time
Environtmen untuk menjalankan aplikasi.
Java
memiliki beberapa versi library atau teknologi yang disebut juga sebagai edisi
dari bahasa pemrograman java. Tiga edisi utama dari library adalah Micro,
Standard, dan Enterprise. J2ME (Java2 Micro Edition) merupakan edisi library
yang dirancang untuk membuat aplikasi desktop untuk digunakan pada device
tertentu seperti pagers dan mobile phone, handheld PDA dan set-top box. J2ME
sembari menyediakan bahasa Java yang sama serta unggul dalam hal portabilitas
dan sefe network delivery seperti J2SE dan J2EE. J2ME menggunakan sekumpulan
paket yang lebih kecil. J2Me berisi subset paket J2SE ditambah dengan paket
spesifik Micro Edition Java.aplikasi J2ME juga dapat diskala agar dapat
berjalan pada aplikasi J2SE dan J2EE.
Untuk merancang aplikasi yang jalan pada alat
kecil seperti telepon genggam, koputer genggam dan pager. J2SE (Java2 Standart
Edition) merupakan edisi library yang dirancang untuk membuat aplikasi desktop
atau applet pada web browser dengan bahasa dasar yang mendukung grafis, M/K,
keamanan, konektivitas basis data dan jaringan. The Java 2 Platfrom, Standard
Edition (J2SE) juga menyediakan lingkungan pemrograman yang kaya fitur, serta
stabil, aman dan cross-platfrom. Edisi ini mendukung koneksi ke basis data,
rancanagan antar muka pengguna aplikasi dan jaringan komputer sebagai
paket-paket dasar bahasa pemrograman Java.
J2EE
(Java2 Enterprise Edition) merupakan edisi librari java yang dirancang untuk
membuat aplikasi enterprise yang memerlukan antar muka dengan sumber data (data
source). J2EE dapat pula dikatakan bahwa J2EE adalah kelompok yang lebih besar
dengan J2SE di dalamnya. The Java 2 Platfrom, Enterprise Edition (J2EE) juga
menyediakan lingkungan untuk membangun dan menjalankan multitier enterprise
applications. J2EE berisi paket-paket didalam Standard Edition serta ditambah
dengan paket untuk mendukung pengembangan Enterprise JavaBeans, Java Servlet,
javaServer pages dan kendali transaksi yang fleksibel.
Java
Virtual Machine (JVM) adalah sebuah spesifikasi untuk sebuah komputer abstrak.
JVM terdiri dari sebuah kelas pemanggil dan sebuah interpreter Java yang
mengeksekusi kode arsitektur netral. Kelas pemanggil memanggil file. Class dari
kedua program Java dan Java API untuk dieksekusi oleh interpreter Java.
Interpreter Java mungkin sebuah perangkat lunak interpreter yang menterjemahkan
satu kode byte pada satu waktu, atau mungkin sebuah just-intime (JIT) kompiler
yang menurunkan bytecode
arsitektur netral kedalam bahasa mesin untuk host computer.
JMF
API (Java Media Framework Application Programming Interface) adalah extension
dari J2SE yang dikonsentrasikan untuk pemrograman pada multimedia streaming
(JMF version 2.1.1e). JMF version 2.1.1e sudah mendukung RTP (Realtime
Protocol) yang digunakan sebagai protokol aplikasi yang realtime seperti
audio/video streaming. Dengan menggunakan API ini akan mempermudah dalam
meng-implementasikan realtime protocol pada multimedia streaming.
JMF
API merupakan arsitektur yang menggabungkan protokol dan pemrograman interface
untuk merekam, mentransmisi, dan playback media. Pada JMF 2.1.1e, Sun’s sebagai
perusahaan pengembang bahasa pemrograman java berinisiatif untuk membawa
pemrosesan time-base media kedalam bahasa pemrograman Java. Time-base media
adalah mengubah data yang diterima dengan berdasarkan waktu, termasuk
didalamnya seperti audio dan video klip, MIDI, dan animasi.
Karakteristik
time-basedmedia adalah dibutuhkannya waktu untuk mengirimkan dan memproses
media. Streaming media dapat dikatakan ketika media data dialirkan harus
ditemukan timing yang yang tepat untuk menerima dan menampilkannya. Misalkan,
ketika sebuah film dimainkan, data tidak dapat dikirimkan dengan cepat sehingga
akan terjadi delay pada waktu playback. Artinya, jika data tidak dapat
dikirimkan dan di proses dengan cepat maka akan kehilanagan data atau dropping
frame untuk memperbaiki playback.
Dalam
mengatasi masalah waktu transfer data maka dikembangkan banyak
formataudio/video seepperti Cinepak, MPEG-1, H.263, JPEG,
PCM, Mu-Law, G.723.1 dan lain-lain. Dari masing masing format tersebut akan
mempengaruhi kualitas video/audio, kebutuhan CPU, dan bandwidth.
E.
FITUR-FTUR
JAVA
Fitur-fitur
Java antara lain;
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.
Gerbage Collection
Dimana disini
terdapat banyak bahasa pemrograman lain dengan memberi kebebasan seorang
programmer untuk mengalokasikan memory pada saat program yang dijalankan yang selanjutnya
memory tersebut harus ditempatkan kembali blok memory tersebut supaya program
lain juga dapat menggunakannya. Dalam C, C++dan bahasa lainnya, yang
bertanggungjawab adalah seorang programmer tentang hal ini. Namun apabila programmer
tersebut lupa, akan menyebabkan suatu keadaan yang biasa disebut dengan nama
memory leaks. Memory leaks, adalah suatu keadaan dimana suatu blok memory yang
dialokasikan, namun tidak pernah dibebaskan oleh pihak yang bertanggungjawab
(program), jika memory yang dialokasikan tidak dibebaskan dari memory, maka
akan mengurangi ketersediaan memory yang akan digunakan oleh sistem operasi dan
aplikasi lainnya. Dengan demikian apabila terdapat dalam jumlah yang besar ,
sudah tentu sangat mempengaruhi kinerja sistem operasi dan aplikasi lainnya.
Dengan gerbage collection program tidak perlu menghapus sendiri objek-objek
yang tidak digunakan lagi, sehingga akan mengurangi beban pengelolaan memory
oleh programmer dan mengeleminasi sumber kesalahan memory leaks tersebut.
3.
Code Security
Code security
ini terimplementasi pada Java dengan melalui penggunaan Java Runtime
Environment (JRE). Java menggunakan tiga lapis model pengamanan untuk
melindungi sistem dari untrusted Java Code, yaitu diantaranya;
a. Clas
loader, menangani pemuatan kelas java ke runtime interpreter, local disk denga
kelas-kelas yang diambil dari jaringan. Hal ini membatasi aplikasi Trojan
karena kelas - kelas di local disk di muat terlebih dahulu. proses ini
menyediakan pengamanan dengan memisahkan kelas-kelas yang berasal dari local
disk yang dimuat terlebih dahulu.
b. Bytecode verifier membaca
bytecode sebelum dijalankan dan
menjamin bytecode memenuhi
aturan-aturan dasar bahasa Java
c. Manajemen
keamanan menangani keamanan tingkat aplikasi dengan mengendalikan apakah
program berhak mengakses sumber daya seperti file , port jaringan , proses
eksternal dan sistem widowing. Sistem
windowing adalah komponen dari GUI
yang khususnya pada lingkungan desktop yang mendukung pelaksanaan manajer
window dan memberikan dukungan dasar untuk perangkat keras grafis, perangkat
penunjuk seperti mouse dan keyboard.
Sementara itu teknik pengamanan lain yang disediakan Java,
antara lain yaitu;
1.
Bahasa dirancang untuk mempersulit eksekusi kode
perusak. Peniadaan pointer merupakan langkah besar pengamanan. Java tidak
mengenal operasi pointer. Di tangan programmer 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 programmer
jahat. Pointer merupakan sarana luar biasa untuk pengaksesan tak diotorisasi.
Dengan peniadaan operasi pointer, Java dapat menjadi bahasa yang lebih aman.
2.
Java memeiliki pengamanan 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. Applet sendiri dapat didefinisikan sebuah
program kecil yang ditulis dengan menggunakan bahasa pemrograman Java yang
diakses melalui halaman web dan dapat di-download ke dalam mesin klien yang
kemudian menjalankannya didalam jendela penjelajah web.
Dalam pemrograman Java, terdapat pula fitur-ftur yang tersedia dalam bahasa
pemrograman Java. Sehingga banyak orang menyebut java memiliki prospek yang
bagus, diantaranya yaitu seperti;
·
Aksesibilitas dari berbagai lokasi dunia
Java sebagai bahasa pemrograman yang ditujukann untuk
internet, sehingga java dapat diakses melalui wolrd wide web serta dapat di
akses dari lokasi manapun di seluruh dunia. Dengan demikian ini sangat memudahkan
bagi pengguna di seluruh dunia. Untuk mengakses mereka hanya membutuhkan akses
internet agar dapat mengakses java.
·
Sistem yang bebas virus
Java mengimplementasikan strong type-cheking pada
komputer pengguna, perubahan pada program akan ditandai sebagai error dan
program tidak akan dapat dijalankan. Type checking adalah sistem pengecekan
dimana kode akan dicek apakah terdapat perubahan dalam kode asli. Jika firus
mengubah kode tersebut, maka program tidak akan dijalankan. Sehingga komputer
aman dari serangan virus.
·
Aplikasi yang cocok dengan berbagai
platform.
Java juga merupakan
pemrograman bahasa yang dapat digunakan diberbagai platfrom (platfrom
independent Application). Java compiler meng-compile java code menjadi
intermediate bytecode yang dapat dibaca oleh JMV (Java Virtual Machine). Java
Interpreter pada browser yang mendukung java agar dapat mengeksekusi bytecode
ini. Dengan proses kompilasi bytecode dan interpretasinya oleh web browser,
program pada java dapat dijalankan diberbagai hardwaredan sistem operasi,
asalkan sistem operasi ini memiliki web browser yang mendukung Java atau Java
Interpreter.
·
Java 2D/3D
Menyediakan sekumpulan API yang
digunakan untuk membangun grafik 2D/3D.
·
Java Server Page (JSP)
Berkembang dari Java Servlet yang dipakai
untuk mengganti aplikasi CGI, JSP yang mirip ASP dan PHP merupakan alternatif
untuk solusi aplikasi internet.
·
Java Native Interface (JNI)
Menyediakan sekumpulan API yang
digunakan untuk mengakses fungsi – fungsi di library yang dibuat dari bahasa penrograman
lain.
·
Java Sound
Menyediakan sekumpulan API yang
digunakan untuk memanipulaisi Sound.
·
Java Interface
Definition Language + COBRA(Common Object
Request Broker)
·
Java IDL menyediakan dukungan Java untuk implementasi
COBRA yang merupakan model distributed Object untuk solusi aplikasi besar di
dunia networking.
·
Java Card
Digunakan pada aplikasi smart card.
·
Java Telephony API (JTAPI)
Menyediakan sekumpulan API untuk
memanfaatkan peralatan telephony, sehingga cocok untuk aplikasi Computer
Telephony Integration yang diperlukan seperti Automatic Call Distribution,
PC-PBX dan lain sebagainya.
·
Bahasa Berorientasi Objek
Meskipun Java dipengaruhi bahasa-bahasa yang lalu, namun Bahasa Java bukan
turunan langsung dari bahasa manapun, dan juga tidak dirancang untuk kompatibel
secara kode sumber dengan bahasa-bahasa sebelumnya. Bahasa Java secara
menyeluruh baru.
·
Bahasa Statically Typed
Seluruh objek dalam program harus dideklarasikan lebih dahulu sebelum
digunakan. Ini memungkinkan kompiler Java menentukan dan melaporkan terjadinya
pertentangan (ketidakkompatibelan) tipe yang merupakan barikade awal untuk
mencegah kesalahan yang tidak perlu (seperti mengurangkan variable bertipe integer
dengan variable bertipe string).
Kelebihan lain dari fitur ini adalah kode program dapat dioptimasi untuk
menghasilkan program berkinerja tinggi.
·
Bahasa Dikompilasi
Sebelum menjalankan program di bahasa Java, program dikompilasi menggunakan
Java compiler. Kompilasi akan
menghasilkan file bytecode yang
sama fungsinya dengan file kode
mesin dan dapat dieksekusi disemua Java
Interpreter. Java Interpreter
membaca file “bytecode” dan
menerjemahkan perintah “bytecode” menjadi perintah-perintah bahasa mesin yang
dapat dieksekusi.
·
Bahasa yang Aman
Salah satu prinsip kunci pembuatan Java adalah keselamatan dan keamanan.
Bahasa Java (implementasinya) telah memperoleh pengalaman aspek keamanan dari Java Applet.
·
Bahasa Independen terhadap Platform
Platform independence adalah
kemampuan program bekerja di sistem operasi atau sistem komputer berbeda.
Bahasa Java merupakan bahasa yang secara sempurna tidak bergantung pada platform. Tipe variabel
Java mempunyai ukuran yang sama di semua platform
sehingga variabel bertipe integer
(int, long) berukuran sama tidak
peduli dimana program Java dikompilasi.
·
Bahasa Multithreading
Thread adalah untuk menyatakan program
komputer melakukan lebih dari satu tugas di satu waktu yang sama. Java
menyediakan kakas untuk menulis program multithread,
program mempunyai lebih dari satu thread
eksekusi pada saat yang sama sehingga memungkinkan program menangani beberapa
tugas secara baik. Semua aplikasi pasti sedikitnya mempunyai satu thread yang
merepresentasikan jalur utama eskekusi.
·
Bahasa yang Didukung Garbage Collector
Program Java melakukan garbage
collection yang berarti pemrogram tidak perlu menghapus sendiri
objek-objek yang tidak digunakan lagi. Fasilitas ini mengurangi beban
pengelolan memori oleh pemrogram dan mengurangi atau mengeliminasi sumber
kesalahan terbesar yang terdapat di bahasa yang memungkinkan kesalahan alokasi
dinamis.
·
Bahasa yang Mampu Diperluas
Program Java mendukung native
method, yaitu fungsi ditulis di bahasa lain, biasanya C atau C++.
Dukungan native method
memungkinkan pemrogram menulis fungsi yang dapat dieksekusi lebih cepat dibanding
fungsi ekivalen di Java. Native method
secara dinamis akan di-link ke
program Java, yaitu diasosiasikan dengan program saat jalan. Bahasa
mempunyai banyak fitur modern
yang bagus untuk pengelolaan sistem kompleks.
F. KEGUNAAN JAVA
Jika kita sering bergelut dengan aplikasi-aplikasi
yang tersedia sekarang ini, tentunya sangat banyak kegunaan Java dalam
komputer. Ada beberapa aplikasi dan situs yang tidak akan berfungsi jika,
terkecuali jika mempunyai Java yang terinstal. Dimana hal tersebut akan bertambah
banyak setiap harinya. Karena kelebihan Java sendiri adalah cepat, aman dan
handal. Dari laptop untuk pusat data, konsol game untuk superkomputer ilmiah,
ponsel ke internet, atau singkatnya dunia maya. Berikut merupakan kegunaan Java
platfrom, diantaranya yaitu :
1. Pembuatan
perangkat lunak pada satu platfrom dan menjalankannya pada hampir semua
platfrom lain.
2. Membantu
pembuatan programuntuk dijalankan pada browser Web dan layanan Web.
3. Pembuatan
aplikasi server-side untuk forum online, toko, jajak pendapat, HTML pemrosesan
from , dan banyak lagi.
4. Membantu
mengkombinasikan aplikasi atau layanan menggunakan bahasa Java sehingga
tercipta sebuah aplikasi atau layanan yang sangat disertakan.
5. Menciptakan
aplikasi yang kuat dan efisien untuk ponsel, prosesor terpencil, produk murah
konsumen, dan hampir semua perangkat yang lain dengan basic digital.
Bagi
para maniak downloader keberadaan Java tentunya sangat membantu beragam bentuk
pengunduhan di internet, contoh spesifikasinya adalah ketika hendak mengunduh
video dari situs terkenal youtube.com melalui situs mengunduh keepvid.com.
ketika menekan tombol unduh setelah memasukan url (alamat) video, maka akan
keluar sebuah peringatan dihalaman itu yang berisis bahawa untuk mengunduh
video ini haruslah sudah terinstal Java di Computer. Dengan kata lain tanpa
keberadaan Java yang terinstal , maka tidak tidak akan bisa mengunduh video
yang kita inginkan.
G. ATURAN
DASAR JAVA
Aturan dasar dari
penggunaan sintaks bahasa Java, yaitu:
§ Java bersifat case-sensitive
§ Secara umum Java mengabaikan spasi kosong
(karakter yang tidak muncul pada layar, misalnya kosong, tab, baris baru)
§ Brace {} adalah simbol peneglompokan pada
dala Java yang menandai bagian awal dan akhir dari suatu program
§ Setiap pernyataan Java diakhiri dengan simbol
;.
§ Simbol // membuat sebuah baris komentar,
simbol /* ... */ membatasi bagian awal dan akhir suatu komentar.
§ Komentar javadoc khusus digunakan untuk
men-generate dokumentasi HTML untuk program Java, dapat menciptakan komentar
javadoc dengan memulai baris dengan /** dan mengakhirinya dengan */.
§ Java memiliki beberapa kata yang dicadangkan
dan tidak bisa digunakan dalam ekspresi biasa. Kata-kata tersebut keyword.
§ Kelas pertama dalam program Java (disebut
kelas penegndali) harus memiliki nama yang sam dengan file dimana ia disimpan.
H. KARAKTERISTIK
BAHASA PEMROGRAMAN JAVA
a. Karakter
Java
Sintaks Java
merupakan pengembangan dari bahsa C, C++. Berikut adalah beberapa karakter
tentang pemrograman Java :
1.
Bersifat
portable dan platfrom independent. Program Java yang telah ditulis akan dapat
dieksekusi di mesin apapun tanpa harus mengubah dari program tersebut.
2.
Memiliki
garbage collection yang dapat mendealokasikan memori secara otomatis
3.
Menghilangkan
sifat pewarisan berganda yang terdapat pada C++.
4.
Mengurangi
pointer aritmateka. Pengaksesan memori secara langsung dengan menggunakan
pointer memungkinkan program untuk melakukan suatu tindakan yang tidak
seharusnya atau tidak boleh dilakukan. Untuk mengurangi kemungkina kesalahan seperti ini penggunaan pointer pada
Java telah dibatasi dengan menggunakan reference.
5.
Memilki
array sejati
6.
Mengurangi
keracunan antara pemberian nilai pada statement conditional.
b. Karakteristik
Java
Ada
pula beberapa karakteristik mengenai bahasa pemrograman Java, yaitu sebagai
berikut:
a.
Sederhana
Bahasa pemrograman
Java menggunakan sintaks mirip C++, namun sintaks pada java telah banyak
mengalami perubahan perbaikkan. Terutama untuk menghilangkan pointer yang rumit
dan multipleinhritance. Java juga menggunakan automatic memory allocationdan
memory garbage collection.
b.
Berorientasi
Obyek (Obyek Oriented)
Java menggunakan pemrograman berorientasi obyek yang
membuat program dapat dibuat secara modular dan dapat dipergunakan kembali.
Pemrograman berorientasi obyek memodelkan dunia nyata ke dalam obyek dan
melakukan interaksi antar obyek-obyek tersebut.
c. Terdistribusi
(Distributed)
Java dibuat untuk membuat aplikasi terdistribusi
secara mudah dengan adanya leberries networking yang terintegrasi pada Java.
d. Interpreted
Program Java dijalankan menggunakan interpreted
yaitu Java Virtual Machine (JVM). Hal ini menyebabkan source code Java yang
telah dikomplikasi menjadi java bytecode dapat dijalankan pada platfrom yang
berbeda-beda.
e. Robust
Java mempunyai relibilitas yang tinggi. Compiler pada Java mempunyai
kemampuan mendeteksi error secara lebih teliti dibandingkan
bahasa pemrograman lain. Java mempunyai runtime-Exception handing untuk
membantu mengatasi error pada pemrograman.
f. Secure
Sebagai bahasa pemrograman untuk aplikasi internet
dan terdistribusi, java memiliki beberapa mekanisme keamanan untuk menjaga
aplikasi tidak digunakan untuk merusak sistem komputer yang menjalankan
aplikasi tersebut.
g. Architecture
Neutral
Program Java merupakan platfrom independent. Program
cukup mempunyai satu buah versi yang dapat dijalankan pada platform berbeda
dengan Java Virtual Machine.
h. Portable
Source code maupun program Java dapat dengan mudah
dibawa ke platform yang berbeda-beda tanpa harus dikompilasi ulang.
i.
Perfomance
Perfomance pada Java sering dikatakan kurang tinggi.
Namun performance Java dapat ditingkatkan mengguanakan kompilasi Java lain
seperti buatan inprise, Microsoft ataupun Symantecyang menggunakan Just In Time
Compilers (JIT).
j.
Multitheaded
Java mempunyai kemampuan untuk membuat suatu program
yang dapat melakukan beberapa pekerjaan secara sekaligus dan simultan.
k. Dynamic
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.
I.
KONSEP OOP
DAN JAVA
Dalam pemrograman, java merupakan bahasa pemrograman
berorietasi objek. Pemrograman
berorintasi objek atau disebut object oriented programming ialah
suatu bahasa pemrograman yang dikembangkan untuk membentuk
objek-objek. Jadi, java menggunakan kelas untuk membentuk objek-objek
tersebut.
Seperti yang dijelaskan di atas bahwa java memiliki
sifat yang portable, karena java bisa dijalankan disemua jenis sistem operasi tanpa
harus mengkompilasi ulang. Jadi, ketika java dibuat dalam sistem operasi
windows, untuk menjalankan pada sistem operasi lain. oleh karena itu dengan
bahasa pemrograman java akan dimanjakan dengan kemudahan-kemudahan yang
tersedia.
Dalam pemrograman berorientasi objek
menekankan pada konsep-konsep seperti berikut;
A. Class
Yaitu kumpulan atas devinisi data dan fungsidalam
suatu unit untuk suatu tujuan tertentu. Sebagai contoh “class of dog” merupakan
suatu unit yang terdiri atas definisi data dan fungsi-fungsi menunjukkan pada
berbagai macam perilaku/turunan dari anjing. Sebuah class adalah dasar dari
modularitas dan struktur dalam pemrograman berorientasi object. Class merupakan
contoh abstrak dari sebuah objek yang telah terbentuk dari proses
penyederhanaan. Contoh nyata atau perwujudan dari sebuah objek dinamakan intance.
B. Object
Object adalah sebuah entiti yang memiliki keadaan
behavior dan identitas yang tugasnya dirumuskan dalam suatu lingkup masalah
dengan baik. Inilah intance yang sebenarnya dari sebuah class, ini juga yang
dikenal intance. Intance sendiri dibuat pada waktu meng-intantiate class
menggunakan kata kunci new dalam sistem registrasi siswa. Contoh dari sebuah
object yaitu entiti Student.
C. Atribut
Atribut menunjuk pada elemen data dari sebuah
object. Atribut menyimpan informasi tentang object. Dikenal juga sebagai member
data, variabel intance, propertiatau sebuah flied data. Kembali pada contoh
sistem registrasi siswa, dimana atribut dari sebuah siswa adalah nomor siswa.
D.
Method
Sebuah method
menjelaskan behavior dari sebuah object. Method juga dikenal sebagai fungsi
atau proseur, sebagai contoh methode yang mungkin tersedia untuk entiti siswa
adalah method register.
E. Abstraksi
Yaitu kemampuan sebuah program untuk melewati aspek informasi yang
diproses olehnya, yaitu kemampuan untuk memfokus pada inti. Setiap objek dalam
sistem melayani sebagai model dari “pelaku” abstrak yang dapat melakukan kerja,
laporan dan perubahan keadaannya dan berkomunikasi dengan obejk lainnya. Dalam
sistem ini tanpa harus mengungkapkan bagaimana kelebihan ini diterapkan. Proses
fungsi atau metode dapat juga dibuat abstrak, dan teknik digunakan untuk
mengembangkan sebuah pengabstrakan.
F.
Enkapsulasi
Memastikan pengguna
sebuah objek tidak dapat mengganti keadaan dalam dari sebuah objek dengan
cara-cara yang tidak layak, karena hanya metode dalam objek tersebut yang
diberi ijin untuk mengakses keadaannya. Setiap objek mengakses interface yang
menyebutkan bagaimana objek lainnya dapat berinteraksi dengannya. Obejek
lainnya tidak akan mengetahui dan tergantung pada trepresentasi dalam objek
tersebut.
G.
Pewarisan
Pewarisan adalah keuntungan besar dalam pemrograman berbasis object karena suatu sifat atau method didefinisikan dalam superclass, sifat ini secara otomatis diwariskan dari semua subclasses. Jadi, dapat dituliskan kode method hanya sekali dan dengan demikian dapat digunakan oleh semua subclass. Dari konsep penurunan ini suatu kelas bisa diturunkan menjadi kelas baru yang masih mewarisi sifat-sifat kelas orangtuanya. Hal ini dapat dianalogikan dengan kelas manusia. Manusia merupakan turunan dari orang tuanya dan sifat-sifat orang tua diwarisi olehnya. Bisa ditarik kesimpulan bahwa semua kelas di dunia selalu memiliki hirarki yang menggambarkan silsilah kelas tersebut.
Pewarisan adalah keuntungan besar dalam pemrograman berbasis object karena suatu sifat atau method didefinisikan dalam superclass, sifat ini secara otomatis diwariskan dari semua subclasses. Jadi, dapat dituliskan kode method hanya sekali dan dengan demikian dapat digunakan oleh semua subclass. Dari konsep penurunan ini suatu kelas bisa diturunkan menjadi kelas baru yang masih mewarisi sifat-sifat kelas orangtuanya. Hal ini dapat dianalogikan dengan kelas manusia. Manusia merupakan turunan dari orang tuanya dan sifat-sifat orang tua diwarisi olehnya. Bisa ditarik kesimpulan bahwa semua kelas di dunia selalu memiliki hirarki yang menggambarkan silsilah kelas tersebut.
H.
Polimorfisme
melalui pengiriman pesan
Polimorfisme adalah
kemampuan dari sebuah object untuk membolehkan mengambil beberapa bentuk yang
berbeda. Secara harfiah, “poli” berarti banyak sementara “morph” berarti
bentuk. Tidak bergantung kepada pemanggilan subrutin, bahasa orientasi objek
dapat mengirim pesan; metode tertentu yang berhubungan dengan sebuah pengiriman
pesan tergantung kepada objek tertentu di mana pesan tersebut dikirim.
Contohnya, bila sebuah burung menerima pesan “gerak cepat”, dia akan
menggerakan sayapnya dan terbang. Bila seekor singa menerima pesan yang sama,
dia akan menggerakkan kakinya dan berlari. Keduanya menjawab sebuah pesan yang
sama, namun yang sesuai dengan kemampuan hewan tersebut. Ini disebut
polimorfisme karena sebuah variabel tunggal dalam program dapat memegang
berbagai jenis objek yang berbeda selagi program berjalan, dan teks program
yang sama dapat memanggil beberapa metode yang berbeda di saat yang berbeda
dalam pemanggilan yang sama. Hal ini berlawanan dengan bahasa fungsional yang
mencapai polimorfisme melalui penggunaan fungsi kelas pertama.
J. IMPLEMENTASI
BAHASA PEMROGRAMAN JAVA UNTUK PEMBELAJARAN GEOMETRI
Seperti yang telah dijelaskan diatas bahwa
aplikasi-aplikasi yang terdapat didalam software atau hardware komputer dapat
dijadikan pembelajaran dengan menggunakan konsep e-learning. Seperti halnya
dengan adanya potensi pembelajaran menggunakan telepon seluler yang disebut
mobile atau perangkat lunak mobile learning berbasis Java untuk pembelajaran
geometri bidang datar.
Learning (m-learning). Sistem atau aplikasi m-learning
seharusnya dibuat agar dapat diakses secara luas dan independen terhadap
platfrom mauoun divais yang digunakan. Oleh karena itu aplikasi atau sistem
harus dibuat dengan teknologi yang memiliki interoperabilitas dan
kompatibilitas tinggi serta dapat berjalan pada lingkungan yang beragam dan
aspek desain instruksional yang juga tak kalah pentingnya dalam pembangunan
aplikasi mobile learning. Dengan rangkaian diatas bahasa pemrograman Java akan
sangat berperan penting dalam proses m-learning tersebut karena dengan
kemudahannya untuk dapat berjalan di semua platfrom tanpa harus mengubah kode
sedikitpun hanya dengan syarat pada sistem yang digunakan sudah terdapat JRE
(Java Runtime Envvironment). Hal ini lah yang akan menjadi kekuatan java
sebagai bahasa pemrograman multiplatfrom
write once run anyware.
Kemudian, sistem yang akan dibangun dan diberi nama mobile geobid adalah sebuah
rekayasa software mobile learning application. Dengn fokus utama mobile geobid
adalah aplikasi mobile untuk telepon seluler dengan menggunakan pendekatan
kontekstual, yaitu sebuah konsep belajar mengajar yang membantu para guru
menghubungkan isi dari mata pelajaran dengan situasi nyata, dan memotivasi para
siswa untuk membuat hubungan antara pengetahuan dan mengaplikasikan pengetahuan
yang mereka miliki kedalam kehidupan mereka baik sebagai anggota keluarga,
masyarakat, negara dan didalam kerja keras mereka terdapat suatu proses belajar
terus-menerus.
Pada pembelajaran mobile ini, pembelajaran matematika
geometri bidang disajikan teks yang merupakan isi pembelajaran dan
gambar-gambar yang menunjukkan konteks geometri bidang yang sedang dijelaskan,
selain itu teks pembelajaran dirancanga agar siswa merasa pembelajaran ini
dilaksanakan layaknya pembelajaran tradisional dimana guru mendampingi secara
langsung.
Perancangan perangkat lunak mobile learnig berbasis Java
untuk pembelajaran geometri datar ini dilakukan dengan Rational Unifed Process
(RUP) dengan merancang struktur kelas berdasarkan hasil analisis kebutuhan
dengan pendekatan kontektual dan perancangan subsistem dan antar muka
komponen-komponen yang akan diimplementasikan. Selanjutnya implementasi mobile
Geobid dilakukan dengan mengimplementasikan semua kelas yang telah dirancang
dengan menggunakan Java yang merupakan open satandard yang portable telah
memberikan dukungan bagi pengembanagan
aplikasi yang beragam, yaitu aplikasi yang berjalan pada perangkat, yang
kemudian bergerak dengan J2ME, sehingga diharapkan aplikasi mlearning akan
dapat berjalan pada banyak platfrom mesin, sistem operasi yang divais.
K.
KELEBIHAN SERTA KEKURANGAN BAHASA PEMROGRAMAN
JAVA
a.
Kelebihan
bahasa pemrograman Java, beberapa diantaranya, yaitu:
·
Multiplatfrom
Kelebihan
utama dari Java adalah dapat dijalankan pada beberapa platfrom sistem operasi
komputer, yang sesuai dengan prinsip tulis sekali, jalankan dimana saja dengan
kelebihan ini. Pemrogram cukup menulis sebuah program Java dan dikompilasi
(diubah dari bahasa yang dimengerti manusia menjadi bahasa mesin atau
bytecode). Keudian hasilnya dapat dijalankan diatas beberapa platfrom
tanpa adanya perubahan. Dengan kelebihan ini memungkinkan sebuah program
berbasis Java dapat dikerjakan diatas sistem operasi Linux serta dapat
dijalankan dengan baik diatas Microsoft Windows. Platfrom yang didukung samapi
saat ini adalah Microsoft Window, 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 atau 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 melengkapi seluruh kebutuhan pembangunan
aplikasi.
·
Bergaya C++, memiliki sintaks seperti
bahasa pemrograman C++ sehingga menarik banyak pemrogram C++ untuk berpindak ke
Java. Saat ini pengguna Java sangat banyak, bahkan sebagian besar penggunanya
adalah pemrogram C++ yang berpindak ke Jav. Bahkan dalam dalam proses
pembelajaran di Perguruan Tinggi di Amerika mulai berpindak ke Java, dengan
mengajarkan java kepada peserta didiknya karena dianggap lebih mudah untuk
dipahami oleh peserta didik dan dapat berguna pula 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).
b. Kekurangan
dari bahasa pemrograman Java, diantaranya, yaitu:
·
Tulis sekali, jalankan di mana saja –
Masih ada beberapa hal yang tidak kompatibel antara platform satu dengan
platform lain. Untuk J2SE, misalnya SWT-AWT bridge yang sampai sekarang tidak
berfungsi pada Mac OS X.
·
Mudah didekompilasi. Dekompilasi adalah proses
membalikkan dari kode jadi menjadi kode sumber. Ini dimungkinkan karena kode
jadi Java merupakan bytecode yang menyimpan banyak atribut bahasa tingkat
tinggi, seperti nama-nama kelas, metode, dan tipe data. Hal yang sama juga
terjadi pada Microsoft. NET Platform. Dengan demikian, algoritma yang digunakan
program akan lebih sulit disembunyikan dan mudah dibajak/direverse-engineer.
·
Penggunaan memori yang banyak. Penggunaan
memori untuk program berbasis Java jauh lebih besar daripada bahasa tingkat
tinggi generasi sebelumnya seperti C/C++ dan Pascal (lebih spesifik lagi,
Delphi dan Object Pascal). Biasanya ini bukan merupakan masalah bagi pihak yang
menggunakan teknologi terbaru (karena trend memori terpasang makin murah),
tetapi menjadi masalah bagi mereka yang masih harus berkutat dengan mesin
komputer berumur lebih dari 4 tahun.
BAB
III
PENUTUP
A. SIMPULAN
Pada dasarnya bahasa pemrograman
java termasuk ke dalam golongan tingkatan bahasa dengan level lebih tinggi
dengan yang lainnya. Karena banyak kelebihan serta keunggulan Java di banding
dengan yang lainnya, seperti dapat dijalankan pada berbagai platfrom sistem
operasi, seperti; Internet, Consumer,
electronic product dan Computer Applications. Bahkan perkembangannya tidak
hanya terfokus pada suatu sistem operasi saja, akan tetapi dikembangkan untuk
berbagai sistem operasi dan bersifat open source.
Java platfrom terdesedia dalam tiga
edisi untuk keperluan yang berbeda yaitu :
1. Java
2 Standart Edition (J2SE). The Java 2 Platfrom, Standart Edition (J2SE)
menyediakan lingkungan pemrograman yang kaya fitur, stabil, aman, dan
cross-platfrom. Edisi ini mendukung koneksi ke basis data, rancangan antar muka
pengguna aplikasi dan pemrograman jaringan komputer sebagai paket-paket dasar bahasa Java.
2. Java
2 Enterprise Edition (J2EE). The Java 2 platfrom, Enterprise Edition (J2EE).
Menyediakan lingkungan untuk membangun dan menjalankan multitier enterprise
applications. J2EE berisi paket-paket didalam Standart Edition ditambah dengan
paket paket untuk mendukung pengembangan Enterprise JavaBeans, Java Servlet
JavaServer Pages dan kendali transaksi fleksibel.
3.
Java 2 Micro Edition (J2ME). The Java 2
platfrom, Micro Editions (J2ME) untuk beragam cunsomer electronic product,
seperti [ager, smart card, cell phone, handheld PDA dan set-box. J2ME dengan
menyediakan bahasa Java yang sama, unggul dalm portabilitas, dan safe network
delivery seperti J2SE dan J2EE, J2ME menggunakan sekumpulan paket yang lebih
kecil, J2ME berisi subset paket J2SE ditambah dengan paket spesifik Micro
Edition java.microedition.io
Aplikasi J2ME juga dapat diskala agar dapat berjalan pada aplikasi J2SE dan J2EE.
Aplikasi J2ME juga dapat diskala agar dapat berjalan pada aplikasi J2SE dan J2EE.
Dengan berbagai macam fitur yang
dimiliki Java pun, ternyata bahasa pemrograman yang satu ini pun dapat
diimplementasikan dalam pembelajaran geometri dengan menggunakan rekayasa dari
software mbile learning application, yang fokus utamanya adalah untuk telepon
seluler dengan dengan menggunakan pendekatan kontesktual. Denganperancanagan
perangkat lunak mobile learning (m-learning) berbasis Java utnuk pembelajarn
geometri yang dilakukan dengan Rational Unified Process (RUP).
B. SARAN
Menggunakan
bahasa pemrograman Java sangat cocok bagi para programer pemula ataupun senior.
Karena saat ini dalam jenjang perguruan tinggi, contohnya saja di
universitas-universitas di Amerika sudah belajar bahasa pemrograman Java karena
dengan keunggulan dan dan kemudahannya yang dapat dengan mudah dimengerti oleh
peserta didiknya. Maka untuk pemula sangat cocok jika belajar bahasa
pemrograman Java.
C. DAFTAR PUSTAKA
thanks buatreverensinya , aku copas ya buat belajar
BalasHapusBener nih.. Write once code anywhere hehe..
BalasHapusOh iya saya ada artikel bagus nih,,
http://library.gunadarma.ac.id/repository/view/3805805/aplikasi-java-untuk-penghitungan-kalori-harian-tubuh-melalui-smartphone-berbasis-android.html/
semoga bermanfaat.
THANK YOU Q COBA UNTUK BELAJARNYA
BalasHapus<a href="http://blog.binadarma.ac.id/ay_ranius</a>
sangat membantu , terima kasih
BalasHapusMy blog
Terimakasih, izin menggunakan sebagai referensi
BalasHapus