Sejarah singkat Java
- Java diciptakan setelah C++ oleh Sun microsystems.
- Proyek Java dimulai tahun 1991 oleh sejumlah insinyur pada perusahaan Sun Microsystem Inc, dengan ide menggunakan bahasa komputer yang tidak mengacu pada sebuah arsitektur. Proyek ini diberi kode sandi Green.
- Tahun 1992, proyek Green meluncurkan produk pertama ' *7 '.
- Tahun 1993 dan separuh th 1994, berganti nama First Person, tetapi bubar.
- Tahun 1995, dibuatlah browser yang mampu menerjemahkan kodebyte tingkat menengah. Dan bahasa Java mulai digunakan secara luas.
Beberapa sifat-sifat / Karakteristik bahasa Java antara lain :
- Platform Independence. Dapat dipindah-pindahkan di antara bermacam-macam platform dan SO. Begitu pula sourcecode-nya.
- Program yang dihasilkan dalam bahasa Java dapat berupa applet (aplikasi kecil yang jalan di atas web browser).
- Berupa aplikasi mandiri yang dijalankan dengan program Java Interpreter.
- Setiap program yang ditulis dalam bahasa Java, hasil kompilasinya berupa bytecode, yaitu sekumpulan instruksi yang terlihat seperti kode mesin, tetapi tidak spesifik untuk satu jenis prosessor tertentu.
- Berbasis Object Oriented Programming.
- Dan masih banyak lagi.
Keunggulan Java :
- Sederhana
- Berorientasi Object
- Terdistribusi
- Kuat / Robust = mengurangi bug / error
- Aman = memungkinkan bebas virus
- Netral Arsitektur = mudah diterjemahkan
- Portable
- Interpreter = diakses komputer yang memiliki interpreter.
- Kinerja tinggi
- Multithreaded = melakukan lebih dari satu pekerjaan.
- Dinamis = mudah diadaptasikan untuk lingkungan yang akan berkembang.
Java dengan bahasa yang lain :
- Java tidak sama dengan Javascript, salah satu contoh perbedaannya adalah javascript hanya terbatas pada fungsi browser, sedang Java mirip syntax dengan C++. Tetapi syntax Java tidak memerlukan header file, pointer arithmatic, struktur, union, operator overlading, class virtual dan lain-lain. Perancang tidak memperbaiki beberapa kelemahan pada C++, seperti switch statemen. Jika kita mengenal C++ dengan baik, akan lebih memudahkan berpindah ke syntax Java.
- Jika kita menguasai Visual Basic, kita tidak berpendapat bahwa Java sederhana. Akan ada banyak syntax asing. Yang menarik di Visual Basic adalah lingkungan perancangan visual yang harus diprogram secara manual di Java.
Arsitektur Java
Arsitektur Java adalah kombinasi dari 4 komponen yaitu :
Arsitektur Java adalah kombinasi dari 4 komponen yaitu :
- Java Programming Language
- Java Class file Format
- Java Application Programming Interface (APIs)
- Java Virtual Machine (JVM)
Java Virtual Machine (JVM)
- JVM adalah mesin computing abstrak yang menerjemahkan kompiler program Java/jembatan antara program dan keunikan platform.
- JVM menyembunyikan kompleksitas platform dari program yang kita buat dan merupakan jantung program.
- Secara sekilas lapisan tambahan tersebut menyebabkan aplikasi berjalan lambat dibanding aplikasi platform. Namun sekarang telah dikenal Just In Time (JIT) compiler. JIT ini membaca program java, dan segera melakukan kompilasi terhadap program java tersebut menjadi program spesifik platform. Contoh JVM pada web browser, begitu web browser misal Netscape menerima applet, ia akan mengkompilenya dengan JT (optimasi JIT dilakukan oleh para vendor).
Format File Class Java
- JVM tidak dapat langsung menerjemahkan ke Java Programming language atau API sekalipun.
- Dalam Java, misalkan kita mengetik kode dengan text editor favorit, kemudian menyimpannya sebagai file dengan ekstensi Java. Lalu Java kompiler kita mengkompilasi kode tersebut menjadi Java Bytecode, tersimpan dalam ekstensi Calass. Java bytecode tersebut akan ditangani untuk dieksekusi oleh JVM yang saat ini ada dua modus dengan atau tanpa JIT.
Java Programming Language (Bahasa aplikasi program Java)
Bahasa Program ini lebih mengacu pada core java programming. Diantaranya termasuk :
- Method, Interface and class design, Threading, Even Handling, Perfomance and memory management, Controlling Access to Resources.
- Aplication Programming Interface's (API's)
Beberapa Edisi program Aplikasi (API - Aplication Programming Interface)
-
J2SE - Java 2 Standard Edition - Platform ini berisikan paket Java standar dan GUI dalam Standard Edition mencakup :
1. Swing Components (paket komponen aplikasi java dalam
direktori JTree C : /
2. J2sdkee 1.2.1 = java 2 SDK software platform.
3. JavaStuff
4. Jdk_1.3 = Java Development Kit, JRE termasuk di dalamnya.
5. Jsse 1.0.1
6. Data transfer API
7. Printing API
8. JDBC
9. JNI (Java and nonjava code interface), dll - J2EE - Java 2 Enterprise Edition - Paket ini berisikan develop aplikasi berbasis web.
-
J2ME - Java 2 Micro Edition - Untuk produk konsumer lingkungan teknologi mobile.
PEMROGRAMAN BERBASIS OBJEK (OOP)
Java adalah bahasa yang termasuk dalam
pemrograman berorientasi object. Berbandingan anologi aliran dan
interaksi antar object antara Structured Procedural Programming (Basic,
Pascal, C etc).
Ide tentang Object Oriented
Object mempresentasikan
entitas pada dunia nyata. Dalam membuat mobil kita dimulai dari
memecah-mecah kompleksitas sistem mobil ke dalam bagian kecil, seperti
roda, kemudi, dan sebagainya.
Pada masing-masing bagian
kecil itu kita definisikan field-field, seperti warna atau daya
cengkeram. Selain itu, kita definisikan apa saja yang bisa dilakukan
terhadap bagian-bagian itu. Perintah-perintah yang bisa diterima itu
disebut method.
Antarmuka dalam interaksi
antar obyek tersebut adalah method-method yang dimiliki object.
Objek-objek itu berinteraksi dengan saling memanggil method dari suatu
objek, atau sering disebut message passing.
Tiga Pilar OOP :
-
Encapsulation
Terdiri dari method-method dalam Class, tahapnya meliputi Constructor dan Destructor. -
Inheritance (Pewarisan Sifat)
Dengan inheritance, pengembang software dapat bekerja lebih efesien dan lebih cepat. Berkat inheritance, dapat digunakan definisi class yang sudah pernah dibuat sebelumnya untuk membuat class-class lain yang menyerupai class tersebut. -
Polymorphism
Polymorphism didefiniskan sebagai kemampuan beberapa objek bertipe sama, bereaksi secara berbeda terhadap message yang sama.
Object dan Class
Class adalah template untuk
obyek-obyek yang memiliki sifat yang sama. Dalam menulis program yang
berorientasi objek yang sebenarnya melainkan class dari objek tersebut.
Instance adalah kata lain
dari objek. Dalam bahasa OOP kita harus terlebih dahulu membuat instance
dari class tersebut. Jika Class adalah representasi generik dari objek,
instance adalah representasi konkritnya.
Bahasa Java telah menyediakan
Class Library, yaitu kumpulan class-class yang telah siap digunakan
untuk membuat program-program baru. Class Library telah menyediakan
class-class dasar seperti fungsi matematika, array string dan sebagainya
hingga ke class untuk graphic, networking dan terutama internetworking
(berbasis protokol TCP/IP).
Tujuan & Keuntungan dari Analis Berorientasi Obyek :- Lebih memahami inti permasalahan.
- Dalam mengorganisasi analis dan spesifikasi dengan metode yang digunakan cara berpikir manusia.
- Mengurangi jarak antara aktivitas analis yang berbeda dengan membuat atribut dan metode menjadi menjadi satu kesatuan.
- Pewarisan dapat dilakukan dengan memberikan identifikasi sesuatu yang umum pada atribut dan metode.
- Menjaga stabilitas atas perubahan kebutuhan pada system yang sama.
- Hasil analisis dapat digunakan kembali.
- Menghasilkan penggambaran yang konsisten.