JAVA
Java menurut definisi Sun adalah nama untuk sekumpulan teknologi untuk membuat dan menjalankan perangkat lunak pada komputer standalone ataupun pada lingkungan jaringan. Java sendiri adalah sebuah bahasa pemrograman komputer kompilasi bytecode yang tidak bergantung pada sistem operasi atau platform dan termasuk berbasis pada object oriented programming.Java juga memiliki sifat sebagai bahasa portable. karena java bisa dijalankan disegala macam sistem operasi tanpa harus mengkompilasi ulang. Jadi, ketika java dibuat di sistem operasi windows, untuk menjalankannya di sistem operasi lain. Oleh karena itu, dengan bahasa java akan dimanjakan dengan kemudahan-kemudahan yang tersedia.
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.
-Dll.
Beberapa kelebihan dari Java antara lain:
-aplikasi yang dibuat dengan mengunakan java dapat dijalankan di berbagai OS yang didalamnya sudah terdapat Java Virtual
-Machine (JVM). Bahasa kerennya Write Once Run Any Where Mendukung pemrograman berorientasi object (Fully support OOP)
-Banyak referensi-referensi untuk belajar java, termasuk juga komunitas developer java diinternet
-Banyak contoh program atau pun library yang siap pakai dan dapat digabungkan dengan program yang kita buat
-Gratis / Free
-Sederhana
-Berorientasi Object
-Terdistribusi
-Kuat / Robust = mengurangi bug / error
-Aman = memungkinkan bebas virus
-Netral Arsitektur = mudah diterjemahkan
-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 :
-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 berorientasi objek menekankan pada konsep berikut :
A. Class
Yaitu kumpulan atas definisi data dan fungsi-fungsi dalam suatu unit untuk suatu tujuan tertentu. Sebagai contoh ‘class of dog’ adalah suatu unit yang terdiri atas definisi-definisi data dan fungsi-fungsi yang menunjuk 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 penyerderhanaan. Adapun contoh nyata atau perwujudan dari sebuah objek dinamakan instance. Misalnya terdapat kelas manusia, contoh instance (wujud nyata) dari kelas tersebut adalah Ali, Udin, Dewi dan yang lainnya.
B. Object
Sebuah object adalah sebuah entiti yang memiliki keadaan, behaviour dan identitas yang yang tugasnya dirumuskan dalam suatu lingkup masalah dengan baik. Inilah instance sebenarnya dari sebuah class. Ini juga dikenal sebagai instance. Instance dibuat sewaktu Anda meng-instantiate 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 instance, properti atau sebuah field data. Kembali lagi ke contoh sistem registrasi siswa, atribut dari sebuah siswa adalah nomor siswa.
D. Method
Sebuah method menjelaskan behaviour dari sebuah object. Method juga dikenal sebagai fungsi atau prosedur. Sebagai contoh, method 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 objek lainnya dalam sistem, tanpa mengungkapkan bagaimana kelebihan ini diterapkan. Proses, fungsi atau metode dapat juga dibuat abstrak, dan beberapa teknik digunakan untuk mengembangkan sebuah pengabstrakan.
F. Enkapsulasi
Memastikan pengguna sebuah objek tidak dapat mengganti keadaan dalam dari sebuah objek dengan cara yang tidak layak; hanya metode dalam objek tersebut yang diberi ijin untuk mengakses keadaannya. Setiap objek mengakses interface yang menyebutkan bagaimana objek lainnya dapat berinteraksi dengannya. Objek lainnya tidak akan mengetahui dan tergantung kepada representasi 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, Anda dapat menuliskan kode method hanya sekali dan mereka 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.
E. 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.
Berikut ini adalah contohnya:
Object merupakan suatu bentuk yang dapat kita identifikasi identitasnya. Misalnya sebuah mobil, manusia, hewan dan lain-lain. Object tersebut dapat dibentuk dengan menggunakan class, artinya class merupakan wadah yang membentuk sebuah object. Dengan class kita dapat membuat beberapa object yang sama dengan atribut yg berbeda. misalnya sebuah pesawat mempunyai atribut warna dan kapasitas yang berbeda yang dibuat dari sebuah pabrik yang sama.
class Pesawat {
String Warna;
int Kapasitas, JumlahMesin;
}
public class PesawatBeraksi{
public static void main(String[] args){
Pesawat pesawatku = new Pesawat();
pesawatku.Warna = "Merah";
pesawatku.Kapasitas = 400;
pesawatku.JumlahMesin = 2;
System.out.println("Warna : " + pesawatku.Warna);
System.out.println("Kapasitas Penumpang : " + pesawatku.Kapasitas);
System.out.println("Jumlah Mesin : " + pesawatku.JumlahMesin);
}
}
Class Pesawat tersebut dapat mewariskan atribut yang dimilikinya kepada class lain. Contohnya Pesawat Tempur, Pesawat Kargo dapat mewarisi atribut pesawat. Pewarisan atribut tersebut dikenal dengan Inheritance. Pesawat Tempur dapat mempunyai bentuk yang berbeda pesawat. Perubahan bentuk itu dikenal dengan Polymorphism.
Sumber:
http://rienagorgeous.blogspot.com/2012/03/konsep-oop-dan-java.html#more
http://smkbaranangsiang.sch.id/artikel-java-programming
Buku Pemrograman J2ME Revisi Kedua
No comments:
Post a Comment