Mengenal Lebih Dekat bahasa Pemprograman Java



Apa sih java ? 
Selamat malam eh udah pagi ya itunganya ? oke di awal hari minggu ini kita bakal belajar soal Java.

java bukan bagian indonesia loh hehe
Java itu salah satu dari Object Oriented Programing, nah kalo salah satu berarti nilainya sembilan dong :D
Oke bro dan sis kita lanjut, OOP itu sendiri sebuah sistem yang komponenya di-enkapsulasi menjadi kelompok data atau fungsi, yang dapat mewarisi attribut dan sifat dari komponen lainya, serta komponen tersebut saling berinteraksi satu sama lain [Meyer, 1997].


Menurut Om meyer, OOP itu terdiri dari Beberapa karakteristik diantaranya :
Abstraksi

Enkapsulasi

Inheritance

Reusability

Spesialisasi

Generalisasi

Komunikasi antar objek

Polymorfisme

Setelah kita bahas se-upil mengenai OOP ada baiknya kita langsung bahas Java yuk bro dan sis. Bahasa pemprograman Java lahir pada tahun 1991, jarak 3 tahun dari umr saya loh *gak nanya. Java berawal dari project pengembangan teknologi *7 (start seven) dimotori oleh James Gosling, menghasilkan program bernama Oak.
           
         Setelah era Star Seven selesai sebuah anak perusahaan TV kabel tertarik, dengan ditambah orang dari proyek The Green Project mereka  memusatkan  kegiatanya  pada  sebuah kantor  di  100 Hamilton Avenue, Palo Alto. Perusahaan ini bertambah maju. Pada tahun 1995 untuk pertama kali source code java versi 1.0.2 di buka, kesuksesan mereka diikuti dengan pemberitaan pertama kali pada surat kabar San Jose Mercury News pada 23 Mei 1995.

Karena tidak mendapat lisensi, nama Oak diganti Java *masih gak kebayang kalo masih pake nama oak lucu gimana gtu.
Apa sih Yang Membedakan Java dengan Bahasa Pemprograman Lainya ?


1. Bersifat portable, artinya program Java dapat dijalankan pada platform yang berbeda tanpa perlu adanya kompilasi ulang
2. Memiliki garbage collection yang berfungsi untuk mendelokasi memori secara otomatis
3. Menghilangkan pewarisan ganda yang merupakan perbaikan dari C++
4. Tidak ada penggunaan pointer artinya java tidak memperbolehkan pengaksesan memori secara langsung.



Teknologi java terdiri dari beberapa komponen Application Programing Interface (API). Spesifikasi Mesin Virtual
           
Eh bentar bro dan sis tau gak sih apa itu API ? bukan akademi pelawak indonesia loh ya, bukan.

API Merupakan sebuah metode yang menggunakan aplikasi program untuk  mengakses  sistem operasi  dari komputer. Sehingga memungkinkan bagi pemrogram untuk memprogram antarmuka pre-Construct sebagai pengganti memprogram  device  atau  bagian  dari  perangkat  lunak secara langsung.


Dalam java terdiri dari 3 bagian :



API Standar : digunakan untuk aplikasi dan applet dengan layanan bahasa dasar untuk grafik, M/K, utilitas, dan jaringan.
API Enterprise : untuk mendesain aplikasi server dengan layanan database dan server-side ( dikenal dengan Aplet ).
API untuk device kecil seperti Komputer genggam, pager, dan ponsel


Sebelum ada androit mah java primadona, Bro dan sis inget gak sih tahun 2000 an mulai berkembang perangkat seluler yang juga mengusung java di dalamnya ?  tanpa adanya java gak bisa deh instal game kunfu panda atau opera mini di hp seluler :3




Mesin virtual Java (JVM)

Terdiri dari sebuah class loader dan java interpreter yang mengeksekusi architecture- neutral bytecode.
Java interpreter adalah merupakan suatu fasilitas penterjemah dalam JVM. Fungsi utamanya adalah untuk membaca isi berkas bytecode (.class) yang di buat Compilator java saat berkas berada dalam memory, kemudian menterjemahkanya ke dalam bahasa mesin. JVM mulai berjalan saat method main() diajalankan.



            Compiler DAN Interpreter

Sebuah Perintah dalam bahasa pemrograman tingkat tinggi (high-level   language)   tidak  dieksekusi   oleh   komputer secara   langsung,   sehingga   memerlukan   suatu   proses translasi ( kompilasi ) menjadi sebuah target program atau yang biasa disebut bahasa mesin. Dan bahasa mesin inilah yang dapat di eksekusi oleh komputer melalui sebuah interpreter.



Compiler adalah sebuah fasilitas dalam bahasa pemrograman  yang  berfungsi  untuk  mentranslasi sourcecode ke dalam bahasa mesin.

Interpreter adalah fasilitas yang menangani kompilasi dan mengeksekusi source code secara langsung.


Kelebihan Bahasa Pemprograman Java

1.  Free Source ( Gratis )

2.  Multi platform : dapat dijalankan pada banyak operating system, penyebabnya adalah setiap operating system memiliki dan menggunakan programnya sendiri sendiri untuk menginterpretasikan bytecode tersebut.

3.  Object Oriented Programing ( berorientasi objek ) : semua aspek yang ada pada java adalah objek. Java adalah salah satu bahasa pemrograman yang berorientasi objek murni, hal ini memudahkan pemrogram untuk mendesain, membuat, mengembangkan dan mengalokasikan sebuah kesalahan secara cepat, mudah, dan terorganisir.

4.  Kepustakaan class yang lengkap

5.  Memiliki fasilitas penggunaan memori sehingga pemrogram tidak perlu melakukan pengaturan memori secara langsung.

Kelemahan Bahasa Pemprograman Java

  1. Mudah di dekompilasi : dikarenakan kode jadi java merupakan bytecode yang menyimpan banyak atribut bahasa tingkat tinggi seperti nama class, metod, tipe data. Oleh karena itu algoritma yang digunakan program sulit disembunyikan sehingga mudah dibajak ( reverse engine ).



2. Penggunaan Memori : penggunaan memori untuk program berbasis java relatif lebih besar dibanding dengan program generasi sebelumnya seperti C++ dan Pascal, namun hal ini tidak menjadikan masalah untuk generasi komputer saat ini.

 




Selanjutnya :

Membuat Java Packages dan java class
 

First