-->

Mengenal Apa Itu Bahasa Pemrograman Java

Mungkin selama ini kita telah mendengar bahasa pemrograman Java, tapi apakah sebenarnya bahasa pemrograman Java itu?



SEJARAH BAHASA PEMROGRAMAN JAVA

Pada 1991, sekelompok insinyur Sun Microsystem yang dipimpin oleh Patrick Naughton dan James Gosling mempunyai keinginan untuk perangkat konsumer seperti cable TV Box. Dikarenakan perangkat tersebut tidak memiliki memori yang banyak, maka bahasa pemrogramannya haruslah bahasa pemrograman yang berukuran kecil dan mengandung kode yang liat. Kemudian, karena setiap manufaktur berbeda dalam memilih processor yang digunakan dalam perangkat buatannya, maka bahasa pemrograman yang hendaqk mereka buat juga harus netral, artinya harus bisa digunakan dalam perangkat apapun yang berebda-beda processornya. Proyek pembuatan bahsa pemrograman baru ini diberi nama kode "Green".

Untuk memenuhi tuntutan kebutuhan akan fleksibilatas, ukuran kecil, kode yang liat, dan kode yang netral terhadap platform, mengantar tim yang dipimpin oleh Patrick Naughton dan James Gosling ini mempelajari teknologi yang pernah dicoba untuk diimplementasikan dalam bahsa pemrograman Pascal. Sebelumnya, Niklaus Wirth orang yang menciptakan bahasa pemrograman Pascal, telah merancang sebuah bahasa pemrograman portabel yang menghasilkan intermediate code untuk mesin hipotesis. Mesin hipotesis ini sering disebut dengan mesin maya ( virtual machine ). Intermediate code yang telah dihasilkan tadi, bisa digunakan di mesin apa saja yang memiliki interpreter untuk menjalankan code tersebut. Berdasarkan hal tersebut, maka proyek Green ini menggunakan sebuah mesin maya / virtual machine untuk mengatasi persoalan utama yang dihadapi, yaitu persoalan bagaimana caranya agar bahsa pemrograman yang dibuat bersifat netral terhadap arsitektur mesin.



Karena kebanyakan orang yang terlibat dalam proyek Green ini lebih terbiasa dengan bahsa pemrograman C++ dan bukannya Pascal, maka banyak sintaks pemrograman dalam proyek Green ini yang diambil dari bahasa pemrograman C++, serta proyek Green ini pun dibuat menjadi bahasa pemrograman yang berorientasi objek ( Object Oriented Programming / Pemrograman Berbasis Objek ) seperti halnya bahasa pemrograman C++ dan bukan merupakan bahasa pemrograman prosedural layaknya Pascal.

Awalnya, bahasa pemrograman yang dibuat ini diberi nama "Oak" oleh James Gosling. Penamaan Oak ini inspirasinya berasal dari sebuah pohon Oak yang berada di seberang kantor James Gosling. Namun, dikarenakan sebelumnya sudah ada bahasa pemrograman yang bernama Oak, maka oleh pihak Sun Microsystem nama Oak diganti menjadi Java. Nama Java sendiri terinspirasi pada saat mereka sedang menikamati secangkir kopi di sebuah kedai kopi dan kemudian secara tidak sengaja salah satu dari mereka menyebutkan kata Java, yang merupakan daerah asal dari biji kopi yang sedang mereka minum tersebut. Akhirnya mereka sepakat untuk memberikan nam Java untuk bahsa pemrograman yang mereka buat.

Setelah bahsa pemrograman Java selesai dibuat, maka mereka membuat sebuah perangkat yang menerapkan bahsa pemrograman Java. Perangkata ini dinamai Star 7(*7). Perangkat ini adalah sebuah perangkat kendali jarak jauh yang sangat cerdas. Kemudian Sun Microsystem berusaha untuk memperkenalkan teknologi batunya tersebut ke perusahaan-perusahaan. Namun perusahaan-perusahan tersebut menganggap teknologi yang diperkenalkan oleh Sun Microsystem ini terlalu maju dan tidak sesuai dengan keadaan pasar pada saat itu. Oleh karena itu Sun Microsystem memutuskan untuk menunda peluncuran Java kepada umum. Ketika pada tahun 1995, dimana implementasi WWW dan internet sedang mengalami perkembangan yang pesat, Sun Microsystem menyadari bahwa ini bisa menjadi pasar untuk teknologi barunya tersebut. Hal itu karena bahsa pemrograman Java juga bisa diterapkan di internet.Hingga akhirnya Sun Microsystem pun memperkenalkan bahsa pemrograman Java kepada umum pada tahun 1995.

Sebagai sebuah bahasa pemrograman yang baru pada saat itu, Java sebenarnya tidaklah tidak benar-benar bahasa pemrograman baru. Kenapa dikatakan demikian? Ini karena bahasa pemrograman Java telah mengadopsi hampir seluruh fitur penting bahasa-bahasa pemrograman yang sudah ada semenjak perkembangan komputasi modern manusia. Berikut adalah fitur-fitur dari bahasa pemrograman lain yang diadopsi oleh Java:

1. Dari bahasa pemrograman SIMULA ( merupakan sebuah bahasa pemrograman yang berkembang pada tahun 1965-an ). Bahsasa pemrograman SIMULA ini merupakan bahasa pemrograman yang paling mempengaruhi Java dan C++. DAri bahasa pemrograman SIMULA ini, Java mengadopsi bentukan-bentukan dasar dari pemrograman berorientasi objek ( Objek Oriented Programming ).

2. Dari LISP. Bahasa pemrograman LISP ini adalah bahasa pemrograman yang berkembang pada tahun 1955.Dari bahsa pemrograman LISP ini Java mengadopsi fasilitas garbage collection, serta kemampuan untuk meniru generic list processing ( meski fasilitas / fitur ini jarang yang memanfaatkannya )

3.Dari bahasa pemrograman Algol. Bahasa pemrograma Algol berkembang pada tahun 1960-an. Fitur bahasa pemrograman Algol yang diadopsi olej Java adalah struktur kendali yang dimiliki bahasa Algol.

4.Dari bahasa pemrograman C++. Java mengadopsi sebagian sintaks dan semantiks bahasa pemrograman C++. Selain itu Java juga mengadopsi fitur exception handling.

5. Dari bahasa pemrograman Ada. Java mengadopsi fitur strongly type dan exception handling.

6. Dari bahasa pemrograman Objective-C. dari bahasa pemrograman Objective-C, Java mengadopsi fasilitas interface.

7. Dari bahasa pemrograman SmallTalk. Dari bahasa SmallTalk ini, Java mengadopsi pendekatan single-root hierarchy, dimana object adalah salah satu kesatuan hierarki warisan .

8. Kemudian yang terakhir, Java mengadopsi fitur dari bahasa pemrograman Eiffel. Fitur dari bahasa pemrograman Eiffel yang diadopsi oleh Java adalah fitur/fasilitas assertion. Fasilitas assertion ini mulai diterapkan di sebagian JDK ( Java Development Kit ) 1.4.




Mengenal Bahasa Pemrograman Java

APAKAH YANG DIMAKSUD DENGAN TEKNOLOGI JAVA ?

1. Java Adalah Sebuah Bahasa Pemrograman


Ya, yang nomer poin nomer satu ini pasti semua orang juga mengetahuinya. Sebagai sebuah bahasa pemrograman, Java dapat kita gunakan untuk membuat seluruh bentuk aplikasi, baik itu aplikasi desktop, aplikasi web, aplikasi mobile ( contohnya aplikasi untuk perangkat dengan sistem operasi Android ), dan lain sebagainya, sebagaimana dibuat dengan menggunakan bahsa pemrrograman konvensional yang lainnya.


Seperti yang sudah pernah saya katakan sebelumnya, Java adalah bahsaa pemrograman yang berorientasi objek ( PBO / OOP) dan dapat dijalankan pada berbagai platform sistem operasi. Perkembangan bahsa pemrogaman Java tidak hanya terfokus pada satu sistem operasi, tetapi dikembangkan untuk berbagai sistem operasi dan bersifat open source ( sumber terbuka ).

Bahkan kepopuleran bahasa pemrograman Java semakin meningkat setelah perusahaan raksasa di bidang teknologi, yakni Google, menetapkan bahasa pemrograman Java untuk membuat aplikasi-aplikasi native yang berjalan pada sistem operasi untuk pernagkat mobile buatannya, yaitu Android OS. Apalagi saat ini Android dapat dikatakan sebagai sistem operasi yang paling populer dan paling banyak digunakan di dunia. Kepopuleran Android tentu saja turut membuat bahasa pemrograman Java juga semakin populer.

2. Java Sebagai Sebuah Development Environment

Sebagai sebuah development environment, teknologi Java menyediakan banyak tools / perlatan yang sangat berguna untuk pengembangan, diantaranya adalah compiler, interpreter, penyusun dokumentasi, paket kelas, dan sebagainya.
3. Java Sebagai Sebuah Aplikasi
Aplikasi dengan teknologi Java secara umum adalah aplikasi serba guna yang dapat dijalankan pada seluruh mesin yang memiliki Java Runtime Environment ( JRE ).
4. Java Sebagai Sebuah Deployment Environment

Java virtual Machine adalah sebuah mesin imajiner ( virtual / 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 / Java Virtual Machine.
Did you know? Saat ini Java sudah sampai versi ke-9 yang baru dirilis pada tanggal 21 September 2017. Untuk mendownloadnya kalian bisa mengunjungi website resmi Oracle disini Download Java 9

Dalam Java terdapat dua komponen utama dari Deployment Environment. Yang pertama adalah JRE ( Java Runtime Environment ) yang terdapat pada paket J2SDK. JRE ini mengandung kelas-kelas untuk semua paket teknologi Java yang meliputi kelas dasar dari Java, komponen GUI ( Graphics User Interface ) , dan lain sebagainya. Komponen yang kedua terdapat pada web browser. Tahukah anda bahwa hampir seluruh web browser komersial yang kita pakai menyediakan interpreter dan runtime environment dari teknologi Java.

SEBAGIAN FITUR-FITUR YANG TERDAPAT DALAM TEKNOLOGI JAVA

1. Java Virtual Machine ( JVM )

Aplikasi program Java diciptakan dengan fille teks berekstensi .java. Program ini dikompilasi menghasilkan satu berkas bytecode yang berekstensi .class atau lebih. Byetcode adalah serangakaian instruksi serupa instruksi kode mesin. Perbedaannya adalah kode mesin harus dijalankan pada sistem komputer dimana kompilasi ditujukan, semntara bytecode berjalan pada Java Interpereter yang tersedia di semua platform sistem komputer dan sistem operasi.

2. Garbage Collection

Banyak bahasa pemrograman lain yang mengizinkan seorang programmer mengalokasikan memori pada saat dijalankan. Namun, setelah menggunakan alokasi memori tersebut, harus terdapat cara untuk menempatkan kembali blok memori tersebut supaya program lain dapat menggunakannya. Dalam bahasa pemrograman C, C++, dan bahasa pemrograman lainnya, adalah programmer yang mutlak bertanggung jawab akan hal ini. Hal ini dapat menyulitakan bilamana programmer tersebut alpa untuk mengembalikan blok memori sehingga menyebabkan situasi yang dikenal dengan nama memory leaks.

Pada bahasa pemrograman Java terdapat fitur garbage collection yang berarti program tidak perlu menghapus sendiri objek-objek yang tidak digunakan lagi. Fasilitas ini mengurangi beban pengelolaan memori oleh programmer dan mengurangi atau mengeliminasi sumber kesalahn terbesar yang terdapat pada bahasa pemrograman lain yang memungkinkan alokasi dinamis.



3. Code Security

Pada Java fasilitas code security terimplementasi melalui penggunaan JRE atau Java Runtime Environment. Java menggunakan model pengamanan 3 lapis untuk melindungi sistem dari untrusted Java Code. Tiga lapis model pengamanannya yaitu :

a. Pertama, class-loader menangani pemuatan kelas Java ke runtime interpreter. Proses ini menyediakan pengamanan dengan memisahkan kelas-kelas yang berasal dari local disk dengan kelas-kelas yang diambil dari jaringan. Hal ini membatasi aplikasi Trojan karena kelas-kelas yang berasala dari local disk yang dimuat terlebih dahulu.

b. Kedua, bytecode verifier membaca bytecode sebelum dijalankan dan menjamin bytecode memenuhi aturan-aturan dasar bahasa pemrograman Java.

c. Ketiga, manajemen keamanan menangani keamanan tingkat aplikasi dengan mengendalikan apakah program berhak mengakses sumber daya seperti sistem file, port jaringan, proses eksternal dan sistem windowing.
Setelah seluruh proses tersebut selesai dijalankan, barulah kode program di eksekusi.

Selain teknik pengamanan di atas, Java juga menyediakan beragam teknik pengamanan lainnya, yaitu :


a. Bahasa pemrograman Java 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 berguna atau bermanfaat untuk optimasi dan pembuatan program yang efisien serta mengagumkan. Namun operasi pointer ini dapat berbalik menjadi malapetaka apabila digunakan atau dimanfaatkan oleh programmer yang jahat. Pointer merupakan sarana luar biasa untuk pengaksesan tak diotorisasi. Dengan peniadaan operasi pointer, bahasa pemrograman Java dapat menjadi bahasa pemrograman yang lebih aman.



b. Bahasa pemrograman Java memiliki beberapa pengaman terhadap applet. Untuk mencegah program bertindak mengganggu media penyimapan, maka applet tidak diperbolehkan melakukan open, read, ataupun write terhadap berkas secara sembarangan. Karena Java applet dapat membuka jendela browser baru, maka jendela baru yang dibuka mempunyai logo Java dan teks identifikasi terhadap jendela yang dibuka. Hal ini mencegah jendela pop-up menipu sebagai permintaan keterangan username dan password.



FASE-FASE PEMROGRAMAN JAVA

Langkah pertama dalam membuat sebuah program menggunakan bahasa pemrograman java adalah dengan menuliskan kode program pada text editor ataupun Integrated Development Environment ( IDE ). Contoh dari text editor yang sering digunakan adalah Notepad, Notepad++, Sublime Text, vi, Emacs, dan masih banyak lagi. Selain menggunakan text editor, kita juga bisa menuliskan kode program Java menggunakan IDE / Integrated Development Environment ( atau bisa diartikan Lingkungan Pemrograman yang Terintegrasi ). Kelebihan dari menulis kode program Java menggunakan IDE daripada text editor adalah apabila kita menggunakan IDE, kita bisa langsung mengcompile kode program dan bisa menjalankan program langsung dari IDE serta dapat langsung melihat output dari program yang kita buat. Kode program Java yang telah ditulis tadi akan disimpan menjadi sebuah file yang berekstensi .java

Kemudian langkah keduanya setelah kita membuat dan menyimapan kode program tadi adalah kita harus mengcompile file yang berisi kode program tadi dengan menggunakan Java Compiler. hasil dari proses kompilasi ini adalah sebuah file bytecode yang berekstensi .class .

Lalu langkah selanjutnya adalah berkas atau file yang mengandung bytecode tadi kemudian akan dikonversikan menggunakan Java Interpreter menjadi bahasa mesin sesuai dengan jenis dan platform dari perangkat yang digunakan.

Atau fase - fase pemrograman Java dapat digambarkan dengan tabel berikut :
Proses Tool Hasil
Menulis kode prograam Text editor (Sublime Text, Notepad, Notepad++, Emacs, dll) atau IDE ( Netbeans, Eclipse, Intellij IDEA, dll) Berkas berekstensi .java
Kompilasi program Java compiler Berkas berisi bytecode yang berekstensi .class
Menjalankan program Java Interpreter Output program


Tidak ada komentar