Website Iklan Tayang Selamanya
Promo spesial hari ini posting iklan di situs web Iklan Kalimantan Tengah murah sekali
setidaknya satu iklan Anda harus ada di Iklan Kalimantan Tengah unikbaca.com ini, agar
pengakses dapat mencari dan tahu usaha Anda, posting di Iklan Kalimantan Tengah murah
🎁 Hari ini sebar iklan massal murah ke 1.050 web! DISKON!

Tampilkan postingan dengan label JAVA. Tampilkan semua postingan
thumbnail

JAVA

JAVA adalah sebuah bahasa berorientasi objek (object oriented programming). Jika anda pernah memprogram dengan bahasa pemrograman OOP , seperti C++ atau Smalltalk , mungkin anda ingat betapa menyenangkannya memprogram dengan konteks objek. Anda merancang beberapa objek satu demi satu dengan mendefinisikan berbagai property yang dimiliki object tersebut dan pekerjaan (task) yang dapat ditangani oleh objek tersebut. Kemudian anda merangkai semua objek tersebut dengan mendefinisikan relasi antar objek tersebut seperti halnya membangun sebuah mobil dari komponen-komponennya.

Belakangan ini , mungkin anda akrab dengan slogan “reusable of code”. “Reuse of code” ini bukanlah cut & paste ( tapi harus diakui cut & paste memang sangat menyenangkan ). Yang dimaskud dengan “reuse of code” ini adalah suatu keadaan dimana para programmer untuk membangun sebuah objek dengan mengextend objek-objek yang telah ada secara mudah. Secara mudah disini adalah , programmer itu mungkin tidak perlu tahu dengan kode-kode dari objek yang ingin ia extend , yang ia butuhkan hanyalah pengetahuan mengenai property dari objek itu dan hal-hal yang dapat dilakukan oleh objek itu.

Kemudahan itu dapat diwujudkan dengan inheritance dan encapsulation (yang penjelasannya di luar jangkauan tulisan ini).

Selain itu Java, sebagai bahasa pemrograman, akan mempermudah tugas kita dalam merancang sebuah program yang mendukung multithreading. Ada banyak kasus dimana kita benar-benar membutuhkan multithreading atau dimana multithreading dapat membuat pemecahan masalah menjadi lebih efisien.

Sebagai contoh sederhana adalah dalam aplikasi mail client yang anda pakai. Saat anda mendowload mail dari server, anda mungkin tidak ingin menunggu sampai semua mail berhasil didownload, baru anda dapat membacanya. Beberapa mail client memungkinkan anda untuk membaca-baca dan membrowsing mail-mail yang sudah berhasil didownload. Dan pada saat yang bersamaan , program itu tetap mendownload mail-mail yang tersisa di server. Bahkan pada saat yang itu juga anda dapat melihat animasi bumi berotasi di pojok layar anda. Semua itu, mendownload mail – membrowsing mail – dan animasi, adalah proses-proses kelas ringan (ligthweight process) dalam aplikasi mail client itu. Proses-proses itu dikenal dengan istilah thread.

Ide multithreading adalah membagi-bagi waktu pemrosesan CPU dan menjadwalkannya bagi masing-masing thread itu. Jika system operasinya dapat memanfaatkan multi-processor, maka thread-thread akan didistribusikan kepada semua prosesor, dan semua proses itu akan berjalan paralel.

Satu lagi yang ditawarkan oleh Java, dan tampaknya sampai saat ini baru Java yang memiliki ini, adalah sifat portabilitas dan independensi terhadap arsitektur dari program-program yang ditulis dengan 100% Java. Yang dimaksud dengan portabilitas dan independensi terhadap arsitektur adalah : sebuah program yang dibuat dengan Java akan dapat dijalankan pada semua mesin / komputer yang mempunyai Java Virtual Machine.

Kita mengenal 2 jenis bahasa pemrograman , interpreted dan compiled. Contoh bahasa interpreted adalah bahasa-bahasa script seperti Perl, dan JavaScript. Sedangkan contoh bahasa compiled adalah C, Pascal, C++, dll.

Pada bahasa interpreted ada sebuah interpreter yang bertindak untuk menerjemahkan baris-baris kode dari suatu program ke dalam bentuk kode-kode yang dapat dimengerti oleh komputer dimana program itu dijalankan. Proses menerjemahkan itu berlangsung pada saat program itu dijalankan. Hal yang perlu dicatat dari bahasa interpreted adalah, proses menerjemahkan itu berlangsung setiap kali program tersebut dijalankan.

Sedangkan pada bahasa compiled, kode-kode program kita terlebih dahulu diubah ke dalam bentuk kode-kode biner oleh sebuah compiler. Untuk selanjutnya, komputer dapat membaca langsung dari kode-kode biner tersebut. Berbeda dari bahasa interpreted, proses kompilasi ini hanya perlu dilakukan sekali saja. Seperti telah dibahas di atas, compiler mengubah baris-baris kode yang kita ketik ke dalam bentuk biner. Yang menjadi permasalahan adalah, sistem kode biner untuk masing-masing platform secara umum tidaklah sama.Sistem kode biner pada Macintosh tidak sama dengan sistem kode biner pada IBM Compatible PC (dengan MS.Windows-nya). Hal inilah yang membatasi portabilitas dari sebuah program yang dibuat dari bahasa-bahasa compiled seperti C, dan Pascal. Jadi bila kita hendak membuat program yang dapat berjalan di banyak platform, sebutlah PC-Windows—Macintosh—Sun Solaris—dll, kita harus melakukan kompilasi untuk masing-masing platform itu. Kalau kita ingin menawarkan aplikasi kita ke seluruh dunia, kita akan menemui kesulitan mengetahui platform apa saja yang ada di seluruh dunia.

Contoh : kita ingin menawarkan aplikasi yang bisa dilihat/dijalankan lewat web, yang berarti ada kemungkinan besar aplikasi kita itu akan dijalankan oleh sembarang orang di seluruh dunia yang menggunakan platform yang berbeda-beda. Kita tidak mungkin mengetahui secara persis semua platform itu dan kita juga tidak ingin dipusingkan dengan itu.

Bagaimanapun keunggulan bahasa compiled adalah , bahasa compiled menawarkan kecepatan eksekusi yang jauh lebih tinggi dibandingkan dengan bahasa interpreted (sehubungan dengan kode-kode biner itu).

Java adalah bahasa compiled dan interpreted. Setelah kita selesai menulis kode dengan bahsa Java, kita lakukan proses kompilasi. Keluaran dari proses kompilasi itu adalah, sebuah Java Binary Code. Anda dapat memikirkan Java Binary Code sebagai ekuivalen dari kode biner yang kita bicarakan diatas. Sistem operasi / komputer / mesin itu sendiri tidak dapat mengerti Java Binary Code. Maka diperlukan sebuah Java Interpreter yang akan menerjemahkan Java Binary Code itu ke dalam bentuk kode biner yang dapat dimengerti oleh operasi / komputer / mesin yang bersangkutan. Interpreter itu dikenal dengan sebutan Java Virtual Machine.

Implementasi dari Java Virtual Machine bisa berupa perangkat lunak (software) atau perangkat keras (hardware).

Contoh paling luas dari perangkat lunak yang mengimplementasikan Java Virtual Machine adalah Web Browser. Kita sebagai pemrogram bertanggung jawab sampai tahap kompilasi. Proses selanjutnya menjadi tanggung jawab Java Virtual Machine. Sebagai contoh, jika kita menulis aplikasi yang bisa dijalankan melalui web (dikenal dengan sebutan applet), yang kita berikan ke web browser adalah Java Binary Code hasil keluaran proses kompilasi yang kita lakukan sebelumnya. Sepanjang web browser itu mengimplementasikan Java Virtual Machine, ia akan dapat memahami Java Binary Code itu.

Implementasi dari Java Virtual Machine dalam bentuk perangkat keras juga tidak sedikit. Semenjak beberapa bulan yang lalu, sudah beredar mikrochip yang mendukung Java / mengerti Java Binary Code. Salah satu merk dari mikrochip itu adalah picoJava™ produksi sun microsystem. Beberapa produsen komputer telah menyertakan picoJava™ itu ke dalam komputer buatan mereka. Sebagai JVM elektronis, picoJava™ itu dapat melakukan proses interpretasi dengan kecepatan yang lebih baik dari JVM perangkat lunak. Beberapa Network Computer ( dengan konsep thin client-nya ), telah menggunakan picoJava™. Penggunaan chip-chip ini tidak terbatas pada komputer saja. Chip-chip ini akan dipasangkan pada perangkat-perangkat elektronis lainnya, seperti telepon, televisi, mobil, oven mikrowave, bahkan smartcard. Beberapa produk masa depan itu telah beredar saat ini, perusahaan Schlumberger telah menggunakan teknologi Java dalam produk-produk smartcard mereka. Perusahaan Hitachi juga telah menggunakan Java dalam beberapa produk televisi mereka.

Aspek yang juga cukup penting dari Java adalah sifat tersebar (distributed). Sifat ini sangat mendukung pengembangan sistem aplikasi yang tidak dibatasi oleh sebuah komputer saja. Dengan kata lain, mendukung pembuatan sistem aplikasi jaringan / tersebar dengan relatif mudah. Perangkat pemrograman Java standar (Java core API) telah menyediakan pustaka-pustaka yang memadai untuk komunikasi data dalam jaringan komputer. Pustaka networkingnya mencakup TCP socket, UDP socket, URL, dan IP Address.

Perkembangan Java tidak bisa lepas dari peranan beberapa vendor web browser seperti Netscape Corporation. Netscape Corp. telah mengimplementasikan Java Virtual Machine pada browser Netscape™ 3.0 mereka. Pada saat itu, Netscape Corp. menguasai pasaran browser di seluruh dunia, dan Netscape™ berjalan di beberapa sistem operasi terkenal , salah satunya adalah Microsoft Windows™ yang merajai pasaran sistem operasi di dunia. Hal itu memungkinkan applet-applet yang memperkaya fungsionalitas webpage yang ditulis dengan Java dapat dijalankan oleh jutaan orang di seluruh dunia. Karena Java berhasil dengan cepat memperoleh reputasi, maka hampir semua vendor sistem operasi dan browser berlomba-lomba untuk membuat Java Virtual Machine bagi sistem operasi / browser mereka. Yang pada gilirannya , semakin mempercepat  perkembangan Java dan memperluas jangkauan Java sebagai bahasa pemrograman.

Sumber : mahatma88
thumbnail

Sedikit Tentang JAVA


Sebuah Bahasa tingkat tinggi yang disebut JAVA dikenal Pada th 1991, sekelompok insinyur Sun dipimpin oleh Patrick Naughton dan James Gosling ingin merancang bahasa komputer untuk perangkat konsumer seperti cable TV Box. Dikarenakan perangkat tersebut tidak memiliki banyak memori, bahasa harus berukuran kecil dan mengandung kode yang liat. Juga karena manufakturmanufaktur berbeda memilih processor yang berbeda pula, maka bahasa harus bebas dari manufaktur manapun. Proyek diberi nama kode ”Green”.

Kebutuhan untuk fleksibilitas, kecil, liat dan kode yang netral terhadap platform mengantar tim mempelajari implementasi Pascal yang pernah dicoba. Niklaus Wirth, pencipta bahasa Pascal telah merancang bahasa portabel yang menghasilkan intermediate code untuk mesin hipotesis. Mesin ini sering disebut dengan mesin maya (virtual machine). Kode ini kemudian dapat digunakan di sembarang mesin yang memiliki interpreter.

Proyek Green menggunakan mesin maya untuk mengatasi isu utama tentang netral terhadap arsitektur mesin. Karena orang–orang di proyek Green berbasis C++ dan bukan Pascal maka kebanyakan sintaks diambil dari C++, serta mengadopsi orientasi objek dan bukan prosedural. Mulanya bahasa yang diciptakan diberi nama ”Oak” oleh James Gosling yang mendapat inspirasi dari sebuah pohon yang berada pada seberang kantornya, namun dikarenakan nama Oak sendiri merupakan nama bahasa pemrograman yang telah ada sebelumnya, kemudian SUN menggantinya dengan JAVA. Nama JAVA sendiri terinspirasi pada saat mereka sedang menikmati secangkir kopi di sebuah kedai kopi yang kemudian dengan tidak sengaja salah satu dari mereka menyebutkan kata JAVA yang mengandung arti asal bijih kopi. Akhirnya mereka sepakat untuk memberikan nama bahasa pemrograman tersebut dengan nama Java.


Produk pertama proyek Green adalah Star 7 (*7), sebuah kendali jarak jauh yang sangat cerdas. Dikarenakan pasar masih belum tertarik dengan produk konsumer cerdas maka proyek Green harus menemukan pasar lain dari teknologi yang diciptakan. Pada saat yang sama, implementasi WWW dan Internet sedang mengalami perkembangan pesat. Di lain pihak, anggota dari proyek Green juga menyadari bahwa Java dapat digunakan pada pemrograman internet, sehingga penerapan selanjutnya mengarah menjadi teknologi yang berperan di web.




Java telah mengakomodasi hampir seluruh fitur penting bahasa–bahasa pemrograman yang ada semenjak perkembangan komputasi modern manusia :
1. Dari SIMULA, bahasa pada tahun 65-an, bahasa yang paling mempengaruhi Java sekaligus C++
    Dari bahasa ini diadopsi bentukan–bentukan dasar dari pemrograman berorientasi objek.
2. Dari LISP – bahasa tahun 55-an. Diadopsi fasilitas garbage collection, serta kemampuan untuk
    meniru generic list processing, meski fasilitas ini jarang yang memanfaatkannya.
3. Dari Algol – bahasa pada tahun 60-an, diambil struktur kendali yang dimilikinya.
4. Dari C++, diadopsi sintaks, sebagian semantiks dan exception handling
5. Dari bahasa Ada, diambil strongly type, dan exception handling.
6. Dari Objective C, diambil fasilitas interface.
7. Dari bahasa SmallTalk, diambil pendekatan single-root class hiérarchie, dimana object adalah satu
    kesatuan hirarki pewarisan
8. Dari bahasa Eiffel, fasilitas assertion yang mulai diterapkan di sebagian JDK

Jika kurang paham baca artikel yang lain