SlideShare a Scribd company logo
1 of 30
BAHASA PEMROGRAMAN
BERORIENTASI OBJEK
• Mengenal defenisi Java
• Mengenal sejarah perkembangan Java
• Mengenal fitur – fitur Java
• Mengenal Keunggulan dan Kelemahan Java
• Mengenal Integrated Development Environment
TUJUAN
Pengenalan Java
Java adalah bahasa pemrograman yang dapat dijalankan di berbagai
komputer termasuk telepon genggam.
Bahasa ini awalnya dibuat oleh James Gosling saat masih bergabung
di Sun Microsystems saat ini merupakan bagian dari Oracle dan
dirilis tahun 1995.
Bahasa ini banyak mengadopsi sintaksis yang terdapat pada C dan
C++ namun dengan sintaksis model objek yang lebih sederhana
serta dukungan rutin-rutin aras bawah yang minimal.
Pengenalan Java
Aplikasi-aplikasi berbasis java umumnya dikompilasi ke dalam p-code
(bytecode) dan dapat dijalankan pada berbagai Mesin Virtual Java (JVM).
Java merupakan bahasa pemrograman yang bersifat umum/non-spesifik
(general purpose), dan secara khusus didisain untuk memanfaatkan
dependensi implementasi seminimal mungkin. Karena fungsionalitasnya yang
memungkinkan aplikasi java mampu berjalan di beberapa platform sistem
operasi yang berbeda, java dikenal pula dengan slogannya, "Tulis sekali,
jalankan di mana pun".
Saat ini java merupakan bahasa pemrograman yang paling populer
digunakan, dan secara luas dimanfaatkan dalam pengembangan berbagai
jenis perangkat lunak aplikasi ataupun aplikasi berbasis web.
Sejarah Java
Bahasa pemrograman Java terlahir dari The Green Project, yang berjalan
selama 18 bulan, dari awal tahun 1991 hingga musim panas 1992. Proyek
tersebut belum menggunakan versi yang dinamakan Oak. Proyek ini dimotori
oleh Patrick Naughton, Mike Sheridan, dan James Gosling, beserta sembilan
pemrogram lainnya dari Sun Microsystems. Salah satu hasil proyek ini adalah
maskot Duke yang dibuat oleh Joe Palrang.
Pertemuan proyek berlangsung di sebuah gedung perkantoran Sand Hill Road
di Menlo Park. Sekitar musim panas 1992 proyek ini ditutup dengan
menghasilkan sebuah program Java Oak pertama, yang ditujukan sebagai
pengendali sebuah peralatan dengan teknologi layar sentuh (touch screen),
seperti pada PDA sekarang ini. Teknologi baru ini dinamai "*7" (Star Seven).
Sejarah Java
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.
Sejarah 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 lain sudah terdaftar dengan merek dagang
tersebut, sehingga diambil nama penggantinya menjadi "Java". Nama ini diambil
dari kopi murni yang digiling langsung dari biji (kopi tubruk) kesukaan Gosling.
Konon kopi ini berasal dari Pulau Jawa. Jadi nama bahasa pemrograman Java
tidak lain berasal dari kata Jawa (bahasa Inggris untuk Jawa adalah Java).
Versi Java
Versi awal Java pada tahun 1996 sudah merupakan versi release sehingga
dinamakan Java Versi 1.0. Java versi ini menyertakan banyak paket standar
awal yang terus dikembangkan pada versi selanjutnya:
java.lang : Peruntukan kelas elemen-elemen dasar.
java.io : Peruntukan kelas input dan output, termasuk penggunaan
berkas.
java.util : Peruntukan kelas pelengkap seperti kelas struktur data dan
kelas kelas penanggalan.
java.net : Peruntukan kelas TCP/IP, yang memungkinkan berkomunikasi
dengan komputer lain menggunakan jaringan TCP/IP.
java.awt : Kelas dasar untuk aplikasi antarmuka dengan pengguna (GUI)
java.applet : Kelas dasar aplikasi antar muka untuk diterapkan pada
penjelajah web.
Keunggulan Java
• 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. Penyebabnya 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)
Keunggulan Java
• 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.
Keunggulan Java
• 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).
Kelemahan Java
• Tulis sekali, jalankan di mana saja - Masih ada beberapa hal yang tidak
kompatibel antara platform satu dengan platform lain. Untuk J2SE,
misalnya SWT-AWT bridge yang sampai sekarang tidak berfungsi pada
Mac OS X.
• Mudah didekompilasi. Dekompilasi adalah proses membalikkan dari kode
jadi menjadi kode sumber. Ini dimungkinkan karena kode jadi Java
merupakan bytecode yang menyimpan banyak atribut bahasa tingkat
tinggi, seperti nama-nama kelas, metode, dan tipe data. Hal yang sama
juga terjadi pada Microsoft .NET Platform. Dengan demikian, algoritma
yang digunakan program akan lebih sulit disembunyikan dan mudah
dibajak/direverse-engineer.
Kelemahan Java
• Penggunaan memori yang banyak. Penggunaan memori untuk program
berbasis Java jauh lebih besar daripada bahasa tingkat tinggi generasi
sebelumnya seperti C/C++ dan Pascal (lebih spesifik lagi, Delphi dan
Object Pascal). Biasanya ini bukan merupakan masalah bagi pihak yang
menggunakan teknologi terbaru (karena trend memori terpasang makin
murah), tetapi menjadi masalah bagi mereka yang masih harus berkutat
dengan mesin komputer berumur lebih dari 4 tahun.
Fitur – Fitur Java
1. Bahasa Sederhana dan Ampuh
Banyak sistem pemrograman memiliki puluhan cara untuk
mengerjakan satu hal. Jika suatu bahasa cukup terbuka sehingga orang
dapat melihat lebih mendalam, kita bebas dan dapat melakukan apa saja
dengan cara kita. Mungkin cara ini menawarkan kinerja yang sangat
memuaskan bagi programmer yang ahli dan teliti, tetapi kebebasan
tersebut harus dibayar mahal dengan kerumitan dan cukup sulit untuk
dimengerti.
Dengan Java, hanya ada sedikit cara untuk menyelesaikan suatu
pekerjaan. Java memberi Anda kemampuan untuk menuangkan ide Anda
dalam cara berorientasi objek yang mudah dan jelas, tanpa harus melihat
proses bagian dalam sistem yang sering kali berbahaya.
Fitur – Fitur Java
Java dirancang agar mudah dipelajari dan digunakan secara efektif. Java
tidak menyediakan fitur-fitur rumit bahasa pemrograman level tinggi,
serta banyak pekerjaan pemrograman yang mulanya harus dilakukan
manual, sekarang dapat dikerjakan oleh Java secara otomatis.
Java tidak mendukung fitur-fitur rumit berikut ini :
• Explicit pointer manipulation
• Implicit type casting
• Structure atau Unions
• Operator Overloading
• Templates
• Header Files
• Multiple Inheritance
Fitur – Fitur Java
2. Bahasa Berorientasi Objek
Meskipun Java dipengaruhi bahasa-bahasa terdahulu, namun Bahasa
Java bukan turunan langsung dari bahasa manapun, dan juga tidak
dirancang untuk kompatibel secara kode sumber dengan bahasa-bahasa
sebelumnya. Bahasa Java sepenuhnya baru. Kebijakan ini memberi
kebebasan perancang Java. Kebebasan ini menghasilkan rancangan
Bahasa Java yang bersih, berguna, serta sekaligus menerapkan
pendekatan pragmatic terhadap objek.
Java merupakan penyeimbangan antara mazhab berorientasi objek
“murni” yang memandang “semua harus objek / semua adalah objek” dan
mazhab pragmatis yang menerapkan pragmatis “stay out my way” (model
hacker “jangan iktut campur”). Model objek Java adalah sederahana dan
mudah dikembangkan, namun sejalan dengan itu, bilangan dan tipe data
sederahana lain dianggap sebagai non-objek berkinerja tinggi.
Fitur – Fitur Java
OOP adalah cara ampuh dalam pengembangan dan pengorganisasian
perangkat lunak. Pada OOP, program computer sebagai sekelompok objek
yang berinteraksi. Deskripsi ringkas OOP adalah mengorganisasikan
program sebagai kumpulan komponen, disebut objek. Objek- Objek ini
ada secara independent, mempunyai aturan-aturan berkomunikasi
dengan objek lain dan untuk memerintahkan objek lain guna meminta
informasi tertentu atau meminta objek lain mengerjakan sesuatu.
Kebanyakan sistem berorientasi-objek lain memilih hirarki objek
yang kaku dan susah diatur, atau memilih menggunakan model objek
dinamik yang tidak memiliki kinerja tinggi dan kelengkapan. Java sekali
lagi memiliki keseimbangan, menyediakan, menyediakan mekanisme
peng-class-an sederhana, dengan model antarmuka dinamik yang intuitif
hanya jika diperlukan. Java tidak mengijinkan pewarisan jamak namun
menyelesaikan kebutuhan pewarisan jamak dengan fasilitas yang lebih
elegan.
Fitur – Fitur Java
3. Bahasa Statically Typed
Seluruh objek dalam program harus dideklarasikan lebih dahulu
sebelum digunakan. Ini memungkinkan kompilator 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).
Kebaikan lain dari fitur ini adalah kode program dapat dioptimasi
untuk menghasilkan program berkinerja tinggi.
Fitur – Fitur Java
4. Bahasa Dikompilasi
Sebelum menjalankan program di bahasa Java, program
dikompilasi menggunakan Java compiler. Kompilasi akan
menghasilkan file bytecode yang serupa fungsinya dengan file kode
mesin dan dapat dieksekusi disembarang Java Interpreter. Java
Interpreter membaca file “bytecode” dan menerjemahkan perintah
“bytecode” menjadi perintah-perintah bahasa mesin yang dapat
dieksekusi.
Fitur – Fitur Java
5. Bahasa yang Aman
Salah satu prinsip kunci perancangan Java adalah keselamatan
dan keamanan. Bahasa Java (implementasinya) telah memperoleh
pengalaman aspek keamanan dari Java Applet. Cara kerja applet
adalah sebagai berikut :
Saat web browser mengetahui adanya Java Applet dihalaman
web yang sedang diinterpretasi (atau web rendering), maka browser
akan melakukan download applet dan keseluruhan halaman web.
Applet itu kemudian dijalankan dikomputer dimana browser berada.
Hal ini tentu dapat menjadi sangat berbahaya, banyak aksi buruk
yang dapat dilakukan applet terhadap computer yang
mengeksekusinya. Untuk itu Java telah memberi pengamanan
terhadap applet dengan model pengamanan berlapis.
Fitur – Fitur Java
Java juga menyediakan beragam teknik pengamanan, yaitu:
1. Java tidak mengenal pointer. Peniadaan pointer merupakan langkah
besar pengamanan. Bagi pemrogram handal, operasi pointer
merupakan anugrah besar untuk optimasi program dan pembuatan
program yang efisien serta mengagumkan. Namun juga dapat
menjadi petaka yang besar, pointer merupakan sarana luar biasa
untuk pengaksesan tak diotorisasi. Dengan peniadaan operasi pointer,
Java dapat menjadi bahasa yang lebih aman.
2. Program Java dikompilasi menjadi serangkaian bytecode. Sebelum
Java dijalankan, terdapat Java verifier yang memeriksa bytecode
untuk menjamin ketiadaan kode yang mencurigakan.
Fitur – Fitur Java
3. Java mempunyai beberapa pengaman terhadap applet. Untuk mencegah
program bertindak mengganggu disk pemakai applet tidak diperbolehkan
melakuukan open, read, atau write terhadap file di sistem pemakai secara
sembarangan. Karena Java applet dapat membuka jendela browser yang
baru, maka jendela mempunyai Java logo dan teks indentifikasi terhadap
jendela yang dibuka.
Hal ini mencegah jendela pop-up menipu sebagai yang lain seperti untuk
meminta nama pemakai dan password. Java telah menerapkan keamanan
yang ketat namun fleksibel. Keamanan berdasar suatu file kebijakan
sehingga dapat diatur dan dikendalikan untuk memperoleh kemampuan
maksimal bagi program mandiri dan applet yang dipercaya (trusted code).
Fitur – Fitur Java
6. 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. Juga terhadap penggunaan Java applet
di web adalah sama sekali tidak memerlukan perubahan sedikit pun
terhadap file .class yang dihasilkan agar dapat dieksekusi di platform
manapun. Begitu telah tercipta file .class dengan menggunakan
kompilator Java di platform manapun, maka file .class tersebut juga dapat
dijalankan di platform manapun. Jadi dimanapun dibikin, dimanapun
dapat dijalankan
Fitur – Fitur Java
7. 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 konkruen. Semua aplikasi pasti
sedikitnya mempunyai satu thread yang merepresentasikan jalur utama
eskekusi.
Fitur – Fitur Java
8. 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.
Fitur – Fitur Java
9. Bahasa yang Tangguh
Java interpreter memeriksa semua akses sistem yang dilakukan.
Program Java tidak dapat menyebabkan crash terhadap sistem.
Java mempunyai mekanisme execption-handling yang ampuh.
Exception handling menyediakan cara untuk memisahkan antara bagian
penanganan kesalahan dengan bagian kode normal sehingga menuntun
ke struktur kode program yang lebih bersih dan menjadikan aplikasi
menjadi lebih tegar. Ketika kesalahan yang serius ditemukan, program
Java menciptakan execption. Exception dapat ditangkap dan dikelola
program tanpa resiko membuat sistem menjadi down.
Fitur – Fitur Java
10. Bahasa yang Mampu Diperluas
Program Java mendukung native method, yaitu fungsi ditulis di
bahasa lain, biasanya C/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 ampuh untuk
pengelolaan sistem kompleks. Namun perlu diingat bahwa bahasa Java
tetap hanya bahasa pemrograman sekedar kakas. Seluruh kakas
pengembangan tetap memerlukan pengembang (pemrogram) yang
mampu menggunakannya.
Integrated Development Environment
(IDE)
Banyak pihak telah membuat IDE (Integrated Development Environment -
Lingkungan Pengembangan Terintegrasi) untuk Java. Diantara IDE
tersebut antara lain:
• Dr. Java, program gratis yang dikembangkan oleh Universitas Rice,
Amerika Serikat
• BlueJ, program gratis yang dikembangkan oleh Universitas Monash,
Australia
• NetBeans (open source- Common Development and Distribution License
(CDDL)) NetBeans disponsori Sun Microsystems, dan versi terkininya
memilki Matisse, sebuah GUI Editor yang menurut pendapat umum
merupakan yang terbaik.
Integrated Development Environment
(IDE)
• Eclipse JDT (open source- Eclipse Public License)
Eclipse dibuat dari kerja sama antara perusahaan-perusahaan anggota
'Eclipse Foundation' (beserta individu-individu lain). Banyak nama besar
yang ikut dalam 'Eclipse Foundation', termasuk IBM, BEA, Intel, Nokia,
Borland. Eclipse bersaing langsung dengan Netbeans IDE. Plugin
tambahan pada Eclipse jauh lebih banyak dan bervariasi dibandingkan
IDE lainnya.
• IntelliJ IDEA (commercial, free 30-day trial)
• Oracle JDeveloper (free)
• Xinox JCreator (ada versi berbayar maupun free)
JCreator ditulis dalam C/C++ sehingga lebih cepat (dan menggunakan
memori lebih sedikit) dari kebanyakan.
See You Next Time

More Related Content

What's hot

Ppt java
Ppt javaPpt java
Ppt javamutianb
 
Java ppt
Java pptJava ppt
Java ppt044249
 
Ristianawati 2114 r0800 java
Ristianawati 2114 r0800 javaRistianawati 2114 r0800 java
Ristianawati 2114 r0800 javaRistianawati
 
Jeni Intro1 Bab02 Pengenalan Bahasa Java
Jeni Intro1 Bab02 Pengenalan Bahasa JavaJeni Intro1 Bab02 Pengenalan Bahasa Java
Jeni Intro1 Bab02 Pengenalan Bahasa JavaIndividual Consultants
 
OOP Dalam Pemrograman Java
OOP Dalam Pemrograman JavaOOP Dalam Pemrograman Java
OOP Dalam Pemrograman JavaAnjar Ridwan
 
Makalah java final
Makalah java finalMakalah java final
Makalah java finaladitamayahya
 
Tugas java praktektohir
Tugas java praktektohirTugas java praktektohir
Tugas java praktektohirpencari buku
 
Ppt pengenalan dan pemrograman java
Ppt pengenalan dan pemrograman javaPpt pengenalan dan pemrograman java
Ppt pengenalan dan pemrograman javanur achlish rosyadi
 
[Www.indowebster.com] jeni-intro1-bab02-pengenalan bahasa-java
[Www.indowebster.com] jeni-intro1-bab02-pengenalan bahasa-java[Www.indowebster.com] jeni-intro1-bab02-pengenalan bahasa-java
[Www.indowebster.com] jeni-intro1-bab02-pengenalan bahasa-javaThan Thi Habidan
 
Pertemuan 1
Pertemuan 1Pertemuan 1
Pertemuan 1foxted17
 

What's hot (17)

Ppt java
Ppt javaPpt java
Ppt java
 
Os java
Os javaOs java
Os java
 
Java ppt
Java pptJava ppt
Java ppt
 
Presentation java PPT
Presentation java PPTPresentation java PPT
Presentation java PPT
 
Ristianawati 2114 r0800 java
Ristianawati 2114 r0800 javaRistianawati 2114 r0800 java
Ristianawati 2114 r0800 java
 
Jeni Intro1 Bab02 Pengenalan Bahasa Java
Jeni Intro1 Bab02 Pengenalan Bahasa JavaJeni Intro1 Bab02 Pengenalan Bahasa Java
Jeni Intro1 Bab02 Pengenalan Bahasa Java
 
Java ppt
Java pptJava ppt
Java ppt
 
Ppt java
Ppt javaPpt java
Ppt java
 
Java
JavaJava
Java
 
OOP Dalam Pemrograman Java
OOP Dalam Pemrograman JavaOOP Dalam Pemrograman Java
OOP Dalam Pemrograman Java
 
Makalah java final
Makalah java finalMakalah java final
Makalah java final
 
Presentasi java
Presentasi javaPresentasi java
Presentasi java
 
Tugas java praktektohir
Tugas java praktektohirTugas java praktektohir
Tugas java praktektohir
 
Ppt pengenalan dan pemrograman java
Ppt pengenalan dan pemrograman javaPpt pengenalan dan pemrograman java
Ppt pengenalan dan pemrograman java
 
[Www.indowebster.com] jeni-intro1-bab02-pengenalan bahasa-java
[Www.indowebster.com] jeni-intro1-bab02-pengenalan bahasa-java[Www.indowebster.com] jeni-intro1-bab02-pengenalan bahasa-java
[Www.indowebster.com] jeni-intro1-bab02-pengenalan bahasa-java
 
Java1
Java1Java1
Java1
 
Pertemuan 1
Pertemuan 1Pertemuan 1
Pertemuan 1
 

Similar to Java Fitur dan Keunggulan

Ppt java
Ppt javaPpt java
Ppt javaakuyuli
 
Materi java merancang aplikasi teks dan dekstop berbasis obyek
Materi java merancang aplikasi teks dan dekstop berbasis obyekMateri java merancang aplikasi teks dan dekstop berbasis obyek
Materi java merancang aplikasi teks dan dekstop berbasis obyekOmen Nayto
 
Jeni intro1-bab02-pengenalan bahasa java
Jeni intro1-bab02-pengenalan bahasa javaJeni intro1-bab02-pengenalan bahasa java
Jeni intro1-bab02-pengenalan bahasa javaKristanto Wijaya
 
Tugas latihan java tohir 1
Tugas latihan java tohir 1Tugas latihan java tohir 1
Tugas latihan java tohir 1pencari buku
 
JENI-Intro1-Bab02-Pengenalan Bahasa Java.pdf
JENI-Intro1-Bab02-Pengenalan Bahasa Java.pdfJENI-Intro1-Bab02-Pengenalan Bahasa Java.pdf
JENI-Intro1-Bab02-Pengenalan Bahasa Java.pdfJurnal IT
 
Analisa berorientasi objek
Analisa berorientasi objekAnalisa berorientasi objek
Analisa berorientasi objekfachrielamir
 
Pemrograman II -1.pdf
Pemrograman II -1.pdfPemrograman II -1.pdf
Pemrograman II -1.pdfngajiyanto .
 

Similar to Java Fitur dan Keunggulan (18)

Ppt java
Ppt javaPpt java
Ppt java
 
Materi java merancang aplikasi teks dan dekstop berbasis obyek
Materi java merancang aplikasi teks dan dekstop berbasis obyekMateri java merancang aplikasi teks dan dekstop berbasis obyek
Materi java merancang aplikasi teks dan dekstop berbasis obyek
 
Modul2 - Pengenalan Bahasa Java
Modul2 - Pengenalan Bahasa JavaModul2 - Pengenalan Bahasa Java
Modul2 - Pengenalan Bahasa Java
 
Jeni intro1-bab02-pengenalan bahasa java
Jeni intro1-bab02-pengenalan bahasa javaJeni intro1-bab02-pengenalan bahasa java
Jeni intro1-bab02-pengenalan bahasa java
 
Tugas latihan java tohir 1
Tugas latihan java tohir 1Tugas latihan java tohir 1
Tugas latihan java tohir 1
 
Java
JavaJava
Java
 
JENI-Intro1-Bab02-Pengenalan Bahasa Java.pdf
JENI-Intro1-Bab02-Pengenalan Bahasa Java.pdfJENI-Intro1-Bab02-Pengenalan Bahasa Java.pdf
JENI-Intro1-Bab02-Pengenalan Bahasa Java.pdf
 
Analisa berorientasi objek
Analisa berorientasi objekAnalisa berorientasi objek
Analisa berorientasi objek
 
Pemrograman II -1.pdf
Pemrograman II -1.pdfPemrograman II -1.pdf
Pemrograman II -1.pdf
 
Makalah java
Makalah javaMakalah java
Makalah java
 
Makalah java
Makalah javaMakalah java
Makalah java
 
Makalah java
Makalah javaMakalah java
Makalah java
 
Java
JavaJava
Java
 
Makalah java
Makalah javaMakalah java
Makalah java
 
Java
JavaJava
Java
 
Java
JavaJava
Java
 
1 pengenalan program java
1 pengenalan program java1 pengenalan program java
1 pengenalan program java
 
Makalah java
Makalah javaMakalah java
Makalah java
 

More from RUDISELAMAT2

PBO Pert 7 Praktek
PBO Pert 7 PraktekPBO Pert 7 Praktek
PBO Pert 7 PraktekRUDISELAMAT2
 
PBO Pert 5 Praktek
PBO Pert 5 PraktekPBO Pert 5 Praktek
PBO Pert 5 PraktekRUDISELAMAT2
 
PBO Pert 4 Praktek
PBO Pert 4 PraktekPBO Pert 4 Praktek
PBO Pert 4 PraktekRUDISELAMAT2
 
PBO Pert 3 Praktek
PBO Pert 3 PraktekPBO Pert 3 Praktek
PBO Pert 3 PraktekRUDISELAMAT2
 
Modul Pert 2 Praktek
Modul Pert 2 PraktekModul Pert 2 Praktek
Modul Pert 2 PraktekRUDISELAMAT2
 
PBO - Pert 8, Mengenal dan Memahami Konsep Jump Pada Perulangan dan Percabang...
PBO - Pert 8, Mengenal dan Memahami Konsep Jump Pada Perulangan dan Percabang...PBO - Pert 8, Mengenal dan Memahami Konsep Jump Pada Perulangan dan Percabang...
PBO - Pert 8, Mengenal dan Memahami Konsep Jump Pada Perulangan dan Percabang...RUDISELAMAT2
 
PBO - Pert 7, Mengenal dan Memahami Konsep Array Pada Java
PBO - Pert 7, Mengenal dan Memahami Konsep Array Pada JavaPBO - Pert 7, Mengenal dan Memahami Konsep Array Pada Java
PBO - Pert 7, Mengenal dan Memahami Konsep Array Pada JavaRUDISELAMAT2
 
PBO - Pert 5, Mengenal dan Memahami Konsep Perulangan Pada Java
PBO - Pert 5, Mengenal dan Memahami Konsep Perulangan Pada JavaPBO - Pert 5, Mengenal dan Memahami Konsep Perulangan Pada Java
PBO - Pert 5, Mengenal dan Memahami Konsep Perulangan Pada JavaRUDISELAMAT2
 
PBO Pert 4 - Mengenal dan Memahami Konsep Percabangan Pada Java
PBO Pert 4 - Mengenal dan Memahami Konsep Percabangan Pada JavaPBO Pert 4 - Mengenal dan Memahami Konsep Percabangan Pada Java
PBO Pert 4 - Mengenal dan Memahami Konsep Percabangan Pada JavaRUDISELAMAT2
 

More from RUDISELAMAT2 (10)

PBO Pert 7 Praktek
PBO Pert 7 PraktekPBO Pert 7 Praktek
PBO Pert 7 Praktek
 
PBO Pert 5 Praktek
PBO Pert 5 PraktekPBO Pert 5 Praktek
PBO Pert 5 Praktek
 
PBO Pert 4 Praktek
PBO Pert 4 PraktekPBO Pert 4 Praktek
PBO Pert 4 Praktek
 
PBO Pert 3 Praktek
PBO Pert 3 PraktekPBO Pert 3 Praktek
PBO Pert 3 Praktek
 
Modul Pert 2 Praktek
Modul Pert 2 PraktekModul Pert 2 Praktek
Modul Pert 2 Praktek
 
PBO - Pert 8, Mengenal dan Memahami Konsep Jump Pada Perulangan dan Percabang...
PBO - Pert 8, Mengenal dan Memahami Konsep Jump Pada Perulangan dan Percabang...PBO - Pert 8, Mengenal dan Memahami Konsep Jump Pada Perulangan dan Percabang...
PBO - Pert 8, Mengenal dan Memahami Konsep Jump Pada Perulangan dan Percabang...
 
PBO - Pert 7, Mengenal dan Memahami Konsep Array Pada Java
PBO - Pert 7, Mengenal dan Memahami Konsep Array Pada JavaPBO - Pert 7, Mengenal dan Memahami Konsep Array Pada Java
PBO - Pert 7, Mengenal dan Memahami Konsep Array Pada Java
 
PBO - Pert 5, Mengenal dan Memahami Konsep Perulangan Pada Java
PBO - Pert 5, Mengenal dan Memahami Konsep Perulangan Pada JavaPBO - Pert 5, Mengenal dan Memahami Konsep Perulangan Pada Java
PBO - Pert 5, Mengenal dan Memahami Konsep Perulangan Pada Java
 
PBO Pert 4 - Mengenal dan Memahami Konsep Percabangan Pada Java
PBO Pert 4 - Mengenal dan Memahami Konsep Percabangan Pada JavaPBO Pert 4 - Mengenal dan Memahami Konsep Percabangan Pada Java
PBO Pert 4 - Mengenal dan Memahami Konsep Percabangan Pada Java
 
Pert 3, Teori PBO
Pert 3, Teori PBOPert 3, Teori PBO
Pert 3, Teori PBO
 

Recently uploaded

Materi Pertemuan 6 Materi Pertemuan 6.pptx
Materi Pertemuan 6 Materi Pertemuan 6.pptxMateri Pertemuan 6 Materi Pertemuan 6.pptx
Materi Pertemuan 6 Materi Pertemuan 6.pptxRezaWahyuni6
 
04-Gemelli.- kehamilan ganda- duo atau triplet
04-Gemelli.- kehamilan ganda- duo atau triplet04-Gemelli.- kehamilan ganda- duo atau triplet
04-Gemelli.- kehamilan ganda- duo atau tripletMelianaJayasaputra
 
DEMONSTRASI KONTEKSTUAL MODUL 1.3 PENDIDIKAN GURU PENGGERAK
DEMONSTRASI KONTEKSTUAL MODUL 1.3 PENDIDIKAN GURU PENGGERAKDEMONSTRASI KONTEKSTUAL MODUL 1.3 PENDIDIKAN GURU PENGGERAK
DEMONSTRASI KONTEKSTUAL MODUL 1.3 PENDIDIKAN GURU PENGGERAKirwan461475
 
Modul 1.2.a.8 Koneksi antar materi 1.2.pdf
Modul 1.2.a.8 Koneksi antar materi 1.2.pdfModul 1.2.a.8 Koneksi antar materi 1.2.pdf
Modul 1.2.a.8 Koneksi antar materi 1.2.pdfSitiJulaeha820399
 
Modul Ajar Biologi Kelas 11 Fase F Kurikulum Merdeka [abdiera.com]
Modul Ajar Biologi Kelas 11 Fase F Kurikulum Merdeka [abdiera.com]Modul Ajar Biologi Kelas 11 Fase F Kurikulum Merdeka [abdiera.com]
Modul Ajar Biologi Kelas 11 Fase F Kurikulum Merdeka [abdiera.com]Abdiera
 
PELAKSANAAN + Link2 Materi Pelatihan "Teknik Perhitungan & Verifikasi TKDN & ...
PELAKSANAAN + Link2 Materi Pelatihan "Teknik Perhitungan & Verifikasi TKDN & ...PELAKSANAAN + Link2 Materi Pelatihan "Teknik Perhitungan & Verifikasi TKDN & ...
PELAKSANAAN + Link2 Materi Pelatihan "Teknik Perhitungan & Verifikasi TKDN & ...Kanaidi ken
 
aku-dan-kebutuhanku-Kelas 4 SD Mapel IPAS
aku-dan-kebutuhanku-Kelas 4 SD Mapel IPASaku-dan-kebutuhanku-Kelas 4 SD Mapel IPAS
aku-dan-kebutuhanku-Kelas 4 SD Mapel IPASreskosatrio1
 
Laporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMM
Laporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMMLaporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMM
Laporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMMmulyadia43
 
Panduan Substansi_ Pengelolaan Kinerja Kepala Sekolah Tahap Pelaksanaan.pptx
Panduan Substansi_ Pengelolaan Kinerja Kepala Sekolah Tahap Pelaksanaan.pptxPanduan Substansi_ Pengelolaan Kinerja Kepala Sekolah Tahap Pelaksanaan.pptx
Panduan Substansi_ Pengelolaan Kinerja Kepala Sekolah Tahap Pelaksanaan.pptxsudianaade137
 
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptx
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptxDESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptx
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptxFuzaAnggriana
 
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdf
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdfTUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdf
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdfElaAditya
 
Materi Strategi Perubahan dibuat oleh kelompok 5
Materi Strategi Perubahan dibuat oleh kelompok 5Materi Strategi Perubahan dibuat oleh kelompok 5
Materi Strategi Perubahan dibuat oleh kelompok 5KIKI TRISNA MUKTI
 
MODUL 2 BAHASA INDONESIA-KELOMPOK 1.pptx
MODUL 2 BAHASA INDONESIA-KELOMPOK 1.pptxMODUL 2 BAHASA INDONESIA-KELOMPOK 1.pptx
MODUL 2 BAHASA INDONESIA-KELOMPOK 1.pptxarnisariningsih98
 
Lembar Observasi Pembelajaran di Kelas.docx
Lembar Observasi Pembelajaran di  Kelas.docxLembar Observasi Pembelajaran di  Kelas.docx
Lembar Observasi Pembelajaran di Kelas.docxbkandrisaputra
 
Prakarsa Perubahan dengan Kanvas ATAP & BAGJA.pptx
Prakarsa Perubahan dengan Kanvas ATAP & BAGJA.pptxPrakarsa Perubahan dengan Kanvas ATAP & BAGJA.pptx
Prakarsa Perubahan dengan Kanvas ATAP & BAGJA.pptxSyaimarChandra1
 
Demonstrasi Kontekstual Modul 1.2. pdf
Demonstrasi Kontekstual  Modul 1.2.  pdfDemonstrasi Kontekstual  Modul 1.2.  pdf
Demonstrasi Kontekstual Modul 1.2. pdfvebronialite32
 
Ppt tentang perkembangan Moral Pada Anak
Ppt tentang perkembangan Moral Pada AnakPpt tentang perkembangan Moral Pada Anak
Ppt tentang perkembangan Moral Pada Anakbekamalayniasinta
 
Modul Ajar Bahasa Indonesia - Menulis Puisi Spontanitas - Fase D.docx
Modul Ajar Bahasa Indonesia - Menulis Puisi Spontanitas - Fase D.docxModul Ajar Bahasa Indonesia - Menulis Puisi Spontanitas - Fase D.docx
Modul Ajar Bahasa Indonesia - Menulis Puisi Spontanitas - Fase D.docxherisriwahyuni
 
tugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docx
tugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docxtugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docx
tugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docxmawan5982
 
AKSI NYATA Strategi Penerapan Kurikulum Merdeka di Kelas (1).pdf
AKSI NYATA Strategi Penerapan Kurikulum Merdeka di Kelas (1).pdfAKSI NYATA Strategi Penerapan Kurikulum Merdeka di Kelas (1).pdf
AKSI NYATA Strategi Penerapan Kurikulum Merdeka di Kelas (1).pdfTaqdirAlfiandi1
 

Recently uploaded (20)

Materi Pertemuan 6 Materi Pertemuan 6.pptx
Materi Pertemuan 6 Materi Pertemuan 6.pptxMateri Pertemuan 6 Materi Pertemuan 6.pptx
Materi Pertemuan 6 Materi Pertemuan 6.pptx
 
04-Gemelli.- kehamilan ganda- duo atau triplet
04-Gemelli.- kehamilan ganda- duo atau triplet04-Gemelli.- kehamilan ganda- duo atau triplet
04-Gemelli.- kehamilan ganda- duo atau triplet
 
DEMONSTRASI KONTEKSTUAL MODUL 1.3 PENDIDIKAN GURU PENGGERAK
DEMONSTRASI KONTEKSTUAL MODUL 1.3 PENDIDIKAN GURU PENGGERAKDEMONSTRASI KONTEKSTUAL MODUL 1.3 PENDIDIKAN GURU PENGGERAK
DEMONSTRASI KONTEKSTUAL MODUL 1.3 PENDIDIKAN GURU PENGGERAK
 
Modul 1.2.a.8 Koneksi antar materi 1.2.pdf
Modul 1.2.a.8 Koneksi antar materi 1.2.pdfModul 1.2.a.8 Koneksi antar materi 1.2.pdf
Modul 1.2.a.8 Koneksi antar materi 1.2.pdf
 
Modul Ajar Biologi Kelas 11 Fase F Kurikulum Merdeka [abdiera.com]
Modul Ajar Biologi Kelas 11 Fase F Kurikulum Merdeka [abdiera.com]Modul Ajar Biologi Kelas 11 Fase F Kurikulum Merdeka [abdiera.com]
Modul Ajar Biologi Kelas 11 Fase F Kurikulum Merdeka [abdiera.com]
 
PELAKSANAAN + Link2 Materi Pelatihan "Teknik Perhitungan & Verifikasi TKDN & ...
PELAKSANAAN + Link2 Materi Pelatihan "Teknik Perhitungan & Verifikasi TKDN & ...PELAKSANAAN + Link2 Materi Pelatihan "Teknik Perhitungan & Verifikasi TKDN & ...
PELAKSANAAN + Link2 Materi Pelatihan "Teknik Perhitungan & Verifikasi TKDN & ...
 
aku-dan-kebutuhanku-Kelas 4 SD Mapel IPAS
aku-dan-kebutuhanku-Kelas 4 SD Mapel IPASaku-dan-kebutuhanku-Kelas 4 SD Mapel IPAS
aku-dan-kebutuhanku-Kelas 4 SD Mapel IPAS
 
Laporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMM
Laporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMMLaporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMM
Laporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMM
 
Panduan Substansi_ Pengelolaan Kinerja Kepala Sekolah Tahap Pelaksanaan.pptx
Panduan Substansi_ Pengelolaan Kinerja Kepala Sekolah Tahap Pelaksanaan.pptxPanduan Substansi_ Pengelolaan Kinerja Kepala Sekolah Tahap Pelaksanaan.pptx
Panduan Substansi_ Pengelolaan Kinerja Kepala Sekolah Tahap Pelaksanaan.pptx
 
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptx
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptxDESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptx
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptx
 
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdf
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdfTUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdf
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdf
 
Materi Strategi Perubahan dibuat oleh kelompok 5
Materi Strategi Perubahan dibuat oleh kelompok 5Materi Strategi Perubahan dibuat oleh kelompok 5
Materi Strategi Perubahan dibuat oleh kelompok 5
 
MODUL 2 BAHASA INDONESIA-KELOMPOK 1.pptx
MODUL 2 BAHASA INDONESIA-KELOMPOK 1.pptxMODUL 2 BAHASA INDONESIA-KELOMPOK 1.pptx
MODUL 2 BAHASA INDONESIA-KELOMPOK 1.pptx
 
Lembar Observasi Pembelajaran di Kelas.docx
Lembar Observasi Pembelajaran di  Kelas.docxLembar Observasi Pembelajaran di  Kelas.docx
Lembar Observasi Pembelajaran di Kelas.docx
 
Prakarsa Perubahan dengan Kanvas ATAP & BAGJA.pptx
Prakarsa Perubahan dengan Kanvas ATAP & BAGJA.pptxPrakarsa Perubahan dengan Kanvas ATAP & BAGJA.pptx
Prakarsa Perubahan dengan Kanvas ATAP & BAGJA.pptx
 
Demonstrasi Kontekstual Modul 1.2. pdf
Demonstrasi Kontekstual  Modul 1.2.  pdfDemonstrasi Kontekstual  Modul 1.2.  pdf
Demonstrasi Kontekstual Modul 1.2. pdf
 
Ppt tentang perkembangan Moral Pada Anak
Ppt tentang perkembangan Moral Pada AnakPpt tentang perkembangan Moral Pada Anak
Ppt tentang perkembangan Moral Pada Anak
 
Modul Ajar Bahasa Indonesia - Menulis Puisi Spontanitas - Fase D.docx
Modul Ajar Bahasa Indonesia - Menulis Puisi Spontanitas - Fase D.docxModul Ajar Bahasa Indonesia - Menulis Puisi Spontanitas - Fase D.docx
Modul Ajar Bahasa Indonesia - Menulis Puisi Spontanitas - Fase D.docx
 
tugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docx
tugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docxtugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docx
tugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docx
 
AKSI NYATA Strategi Penerapan Kurikulum Merdeka di Kelas (1).pdf
AKSI NYATA Strategi Penerapan Kurikulum Merdeka di Kelas (1).pdfAKSI NYATA Strategi Penerapan Kurikulum Merdeka di Kelas (1).pdf
AKSI NYATA Strategi Penerapan Kurikulum Merdeka di Kelas (1).pdf
 

Java Fitur dan Keunggulan

  • 2. • Mengenal defenisi Java • Mengenal sejarah perkembangan Java • Mengenal fitur – fitur Java • Mengenal Keunggulan dan Kelemahan Java • Mengenal Integrated Development Environment TUJUAN
  • 3. Pengenalan Java Java adalah bahasa pemrograman yang dapat dijalankan di berbagai komputer termasuk telepon genggam. Bahasa ini awalnya dibuat oleh James Gosling saat masih bergabung di Sun Microsystems saat ini merupakan bagian dari Oracle dan dirilis tahun 1995. Bahasa ini banyak mengadopsi sintaksis yang terdapat pada C dan C++ namun dengan sintaksis model objek yang lebih sederhana serta dukungan rutin-rutin aras bawah yang minimal.
  • 4. Pengenalan Java Aplikasi-aplikasi berbasis java umumnya dikompilasi ke dalam p-code (bytecode) dan dapat dijalankan pada berbagai Mesin Virtual Java (JVM). Java merupakan bahasa pemrograman yang bersifat umum/non-spesifik (general purpose), dan secara khusus didisain untuk memanfaatkan dependensi implementasi seminimal mungkin. Karena fungsionalitasnya yang memungkinkan aplikasi java mampu berjalan di beberapa platform sistem operasi yang berbeda, java dikenal pula dengan slogannya, "Tulis sekali, jalankan di mana pun". Saat ini java merupakan bahasa pemrograman yang paling populer digunakan, dan secara luas dimanfaatkan dalam pengembangan berbagai jenis perangkat lunak aplikasi ataupun aplikasi berbasis web.
  • 5. Sejarah Java Bahasa pemrograman Java terlahir dari The Green Project, yang berjalan selama 18 bulan, dari awal tahun 1991 hingga musim panas 1992. Proyek tersebut belum menggunakan versi yang dinamakan Oak. Proyek ini dimotori oleh Patrick Naughton, Mike Sheridan, dan James Gosling, beserta sembilan pemrogram lainnya dari Sun Microsystems. Salah satu hasil proyek ini adalah maskot Duke yang dibuat oleh Joe Palrang. Pertemuan proyek berlangsung di sebuah gedung perkantoran Sand Hill Road di Menlo Park. Sekitar musim panas 1992 proyek ini ditutup dengan menghasilkan sebuah program Java Oak pertama, yang ditujukan sebagai pengendali sebuah peralatan dengan teknologi layar sentuh (touch screen), seperti pada PDA sekarang ini. Teknologi baru ini dinamai "*7" (Star Seven).
  • 6. Sejarah Java 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.
  • 7. Sejarah 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 lain sudah terdaftar dengan merek dagang tersebut, sehingga diambil nama penggantinya menjadi "Java". Nama ini diambil dari kopi murni yang digiling langsung dari biji (kopi tubruk) kesukaan Gosling. Konon kopi ini berasal dari Pulau Jawa. Jadi nama bahasa pemrograman Java tidak lain berasal dari kata Jawa (bahasa Inggris untuk Jawa adalah Java).
  • 8. Versi Java Versi awal Java pada tahun 1996 sudah merupakan versi release sehingga dinamakan Java Versi 1.0. Java versi ini menyertakan banyak paket standar awal yang terus dikembangkan pada versi selanjutnya: java.lang : Peruntukan kelas elemen-elemen dasar. java.io : Peruntukan kelas input dan output, termasuk penggunaan berkas. java.util : Peruntukan kelas pelengkap seperti kelas struktur data dan kelas kelas penanggalan. java.net : Peruntukan kelas TCP/IP, yang memungkinkan berkomunikasi dengan komputer lain menggunakan jaringan TCP/IP. java.awt : Kelas dasar untuk aplikasi antarmuka dengan pengguna (GUI) java.applet : Kelas dasar aplikasi antar muka untuk diterapkan pada penjelajah web.
  • 9. Keunggulan Java • 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. Penyebabnya 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)
  • 10. Keunggulan Java • 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.
  • 11. Keunggulan Java • 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).
  • 12. Kelemahan Java • Tulis sekali, jalankan di mana saja - Masih ada beberapa hal yang tidak kompatibel antara platform satu dengan platform lain. Untuk J2SE, misalnya SWT-AWT bridge yang sampai sekarang tidak berfungsi pada Mac OS X. • Mudah didekompilasi. Dekompilasi adalah proses membalikkan dari kode jadi menjadi kode sumber. Ini dimungkinkan karena kode jadi Java merupakan bytecode yang menyimpan banyak atribut bahasa tingkat tinggi, seperti nama-nama kelas, metode, dan tipe data. Hal yang sama juga terjadi pada Microsoft .NET Platform. Dengan demikian, algoritma yang digunakan program akan lebih sulit disembunyikan dan mudah dibajak/direverse-engineer.
  • 13. Kelemahan Java • 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.
  • 14. Fitur – Fitur Java 1. Bahasa Sederhana dan Ampuh Banyak sistem pemrograman memiliki puluhan cara untuk mengerjakan satu hal. Jika suatu bahasa cukup terbuka sehingga orang dapat melihat lebih mendalam, kita bebas dan dapat melakukan apa saja dengan cara kita. Mungkin cara ini menawarkan kinerja yang sangat memuaskan bagi programmer yang ahli dan teliti, tetapi kebebasan tersebut harus dibayar mahal dengan kerumitan dan cukup sulit untuk dimengerti. Dengan Java, hanya ada sedikit cara untuk menyelesaikan suatu pekerjaan. Java memberi Anda kemampuan untuk menuangkan ide Anda dalam cara berorientasi objek yang mudah dan jelas, tanpa harus melihat proses bagian dalam sistem yang sering kali berbahaya.
  • 15. Fitur – Fitur Java Java dirancang agar mudah dipelajari dan digunakan secara efektif. Java tidak menyediakan fitur-fitur rumit bahasa pemrograman level tinggi, serta banyak pekerjaan pemrograman yang mulanya harus dilakukan manual, sekarang dapat dikerjakan oleh Java secara otomatis. Java tidak mendukung fitur-fitur rumit berikut ini : • Explicit pointer manipulation • Implicit type casting • Structure atau Unions • Operator Overloading • Templates • Header Files • Multiple Inheritance
  • 16. Fitur – Fitur Java 2. Bahasa Berorientasi Objek Meskipun Java dipengaruhi bahasa-bahasa terdahulu, namun Bahasa Java bukan turunan langsung dari bahasa manapun, dan juga tidak dirancang untuk kompatibel secara kode sumber dengan bahasa-bahasa sebelumnya. Bahasa Java sepenuhnya baru. Kebijakan ini memberi kebebasan perancang Java. Kebebasan ini menghasilkan rancangan Bahasa Java yang bersih, berguna, serta sekaligus menerapkan pendekatan pragmatic terhadap objek. Java merupakan penyeimbangan antara mazhab berorientasi objek “murni” yang memandang “semua harus objek / semua adalah objek” dan mazhab pragmatis yang menerapkan pragmatis “stay out my way” (model hacker “jangan iktut campur”). Model objek Java adalah sederahana dan mudah dikembangkan, namun sejalan dengan itu, bilangan dan tipe data sederahana lain dianggap sebagai non-objek berkinerja tinggi.
  • 17. Fitur – Fitur Java OOP adalah cara ampuh dalam pengembangan dan pengorganisasian perangkat lunak. Pada OOP, program computer sebagai sekelompok objek yang berinteraksi. Deskripsi ringkas OOP adalah mengorganisasikan program sebagai kumpulan komponen, disebut objek. Objek- Objek ini ada secara independent, mempunyai aturan-aturan berkomunikasi dengan objek lain dan untuk memerintahkan objek lain guna meminta informasi tertentu atau meminta objek lain mengerjakan sesuatu. Kebanyakan sistem berorientasi-objek lain memilih hirarki objek yang kaku dan susah diatur, atau memilih menggunakan model objek dinamik yang tidak memiliki kinerja tinggi dan kelengkapan. Java sekali lagi memiliki keseimbangan, menyediakan, menyediakan mekanisme peng-class-an sederhana, dengan model antarmuka dinamik yang intuitif hanya jika diperlukan. Java tidak mengijinkan pewarisan jamak namun menyelesaikan kebutuhan pewarisan jamak dengan fasilitas yang lebih elegan.
  • 18. Fitur – Fitur Java 3. Bahasa Statically Typed Seluruh objek dalam program harus dideklarasikan lebih dahulu sebelum digunakan. Ini memungkinkan kompilator 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). Kebaikan lain dari fitur ini adalah kode program dapat dioptimasi untuk menghasilkan program berkinerja tinggi.
  • 19. Fitur – Fitur Java 4. Bahasa Dikompilasi Sebelum menjalankan program di bahasa Java, program dikompilasi menggunakan Java compiler. Kompilasi akan menghasilkan file bytecode yang serupa fungsinya dengan file kode mesin dan dapat dieksekusi disembarang Java Interpreter. Java Interpreter membaca file “bytecode” dan menerjemahkan perintah “bytecode” menjadi perintah-perintah bahasa mesin yang dapat dieksekusi.
  • 20. Fitur – Fitur Java 5. Bahasa yang Aman Salah satu prinsip kunci perancangan Java adalah keselamatan dan keamanan. Bahasa Java (implementasinya) telah memperoleh pengalaman aspek keamanan dari Java Applet. Cara kerja applet adalah sebagai berikut : Saat web browser mengetahui adanya Java Applet dihalaman web yang sedang diinterpretasi (atau web rendering), maka browser akan melakukan download applet dan keseluruhan halaman web. Applet itu kemudian dijalankan dikomputer dimana browser berada. Hal ini tentu dapat menjadi sangat berbahaya, banyak aksi buruk yang dapat dilakukan applet terhadap computer yang mengeksekusinya. Untuk itu Java telah memberi pengamanan terhadap applet dengan model pengamanan berlapis.
  • 21. Fitur – Fitur Java Java juga menyediakan beragam teknik pengamanan, yaitu: 1. Java tidak mengenal pointer. Peniadaan pointer merupakan langkah besar pengamanan. Bagi pemrogram handal, operasi pointer merupakan anugrah besar untuk optimasi program dan pembuatan program yang efisien serta mengagumkan. Namun juga dapat menjadi petaka yang besar, pointer merupakan sarana luar biasa untuk pengaksesan tak diotorisasi. Dengan peniadaan operasi pointer, Java dapat menjadi bahasa yang lebih aman. 2. Program Java dikompilasi menjadi serangkaian bytecode. Sebelum Java dijalankan, terdapat Java verifier yang memeriksa bytecode untuk menjamin ketiadaan kode yang mencurigakan.
  • 22. Fitur – Fitur Java 3. Java mempunyai beberapa pengaman terhadap applet. Untuk mencegah program bertindak mengganggu disk pemakai applet tidak diperbolehkan melakuukan open, read, atau write terhadap file di sistem pemakai secara sembarangan. Karena Java applet dapat membuka jendela browser yang baru, maka jendela mempunyai Java logo dan teks indentifikasi terhadap jendela yang dibuka. Hal ini mencegah jendela pop-up menipu sebagai yang lain seperti untuk meminta nama pemakai dan password. Java telah menerapkan keamanan yang ketat namun fleksibel. Keamanan berdasar suatu file kebijakan sehingga dapat diatur dan dikendalikan untuk memperoleh kemampuan maksimal bagi program mandiri dan applet yang dipercaya (trusted code).
  • 23. Fitur – Fitur Java 6. 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. Juga terhadap penggunaan Java applet di web adalah sama sekali tidak memerlukan perubahan sedikit pun terhadap file .class yang dihasilkan agar dapat dieksekusi di platform manapun. Begitu telah tercipta file .class dengan menggunakan kompilator Java di platform manapun, maka file .class tersebut juga dapat dijalankan di platform manapun. Jadi dimanapun dibikin, dimanapun dapat dijalankan
  • 24. Fitur – Fitur Java 7. 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 konkruen. Semua aplikasi pasti sedikitnya mempunyai satu thread yang merepresentasikan jalur utama eskekusi.
  • 25. Fitur – Fitur Java 8. 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.
  • 26. Fitur – Fitur Java 9. Bahasa yang Tangguh Java interpreter memeriksa semua akses sistem yang dilakukan. Program Java tidak dapat menyebabkan crash terhadap sistem. Java mempunyai mekanisme execption-handling yang ampuh. Exception handling menyediakan cara untuk memisahkan antara bagian penanganan kesalahan dengan bagian kode normal sehingga menuntun ke struktur kode program yang lebih bersih dan menjadikan aplikasi menjadi lebih tegar. Ketika kesalahan yang serius ditemukan, program Java menciptakan execption. Exception dapat ditangkap dan dikelola program tanpa resiko membuat sistem menjadi down.
  • 27. Fitur – Fitur Java 10. Bahasa yang Mampu Diperluas Program Java mendukung native method, yaitu fungsi ditulis di bahasa lain, biasanya C/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 ampuh untuk pengelolaan sistem kompleks. Namun perlu diingat bahwa bahasa Java tetap hanya bahasa pemrograman sekedar kakas. Seluruh kakas pengembangan tetap memerlukan pengembang (pemrogram) yang mampu menggunakannya.
  • 28. Integrated Development Environment (IDE) Banyak pihak telah membuat IDE (Integrated Development Environment - Lingkungan Pengembangan Terintegrasi) untuk Java. Diantara IDE tersebut antara lain: • Dr. Java, program gratis yang dikembangkan oleh Universitas Rice, Amerika Serikat • BlueJ, program gratis yang dikembangkan oleh Universitas Monash, Australia • NetBeans (open source- Common Development and Distribution License (CDDL)) NetBeans disponsori Sun Microsystems, dan versi terkininya memilki Matisse, sebuah GUI Editor yang menurut pendapat umum merupakan yang terbaik.
  • 29. Integrated Development Environment (IDE) • Eclipse JDT (open source- Eclipse Public License) Eclipse dibuat dari kerja sama antara perusahaan-perusahaan anggota 'Eclipse Foundation' (beserta individu-individu lain). Banyak nama besar yang ikut dalam 'Eclipse Foundation', termasuk IBM, BEA, Intel, Nokia, Borland. Eclipse bersaing langsung dengan Netbeans IDE. Plugin tambahan pada Eclipse jauh lebih banyak dan bervariasi dibandingkan IDE lainnya. • IntelliJ IDEA (commercial, free 30-day trial) • Oracle JDeveloper (free) • Xinox JCreator (ada versi berbayar maupun free) JCreator ditulis dalam C/C++ sehingga lebih cepat (dan menggunakan memori lebih sedikit) dari kebanyakan.
  • 30. See You Next Time