Senin, 02 Maret 2015

Pengenalan Java



Nama/NIM                                       : Ni Putu Tias Amarwati/1404505041
Jurusan/Fakultas/Universitas            : Teknologi Informasi/Teknik/Universitas Udayana
Mata Kuliah                                     : Pemrograman Berorientasi Objek (Kelas B)
Dosen                                              : I Putu Agus Eka Pratama, S.T., M.T.

         Java adalah bahasa pemrograman yang dapat dijalankan di berbagai komputer termasuk telepon genggam. Bahasa ini awalnya dibuat oleh James Gosling saat masih bergabung di Sun Microsystems saat ini merupakan bagian dari Oracle dan dirilis tahun 1995. Bahasa ini banyak mengadopsi sintaksis yang terdapat pada C dan C++ namun dengan sintaksis model objek yang lebih sederhana serta dukungan rutin-rutin aras bawah yang minimal. Aplikasi-aplikasi berbasis java umumnya dikompilasi ke dalam p-code (bytecode) dan dapat dijalankan pada berbagai Mesin Virtual Java (JVM).Java merupakan bahasa pemrograman yang bersifat umum/non-spesifik (general purpose), dan secara khusus didisain untuk memanfaatkan dependensi implementasi seminimal mungkin. Karena fungsionalitasnya yang memungkinkan aplikasi java mampu berjalan di beberapa platform sistem operasi yang berbeda, java dikenal pula dengan slogannya, "Tulis sekali, jalankan di mana pun". Saat ini java merupakan bahasa pemrograman yang paling populer digunakan, dan secara luas dimanfaatkan dalam pengembangan berbagai jenis perangkat lunak aplikasi ataupun aplikasi berbasis web.



Perkembangan Java dan Aplikasi Java menurut Bidang Komunikasi
Java telah sukses dikembangkan di berbagai bidang sejak awal pertama kali muncul hingga saat ini. Bahasa Java dalam perkembangannya memegang teguh filosofi sehingga diminati oleh banyak programmer di dunia. Hal yang membuat bahasa Java semakin diminati adalah ketika berbagai device mendukung java dengan J2ME, sehingga banyak praktisi yang berusaha menguasai Java untuk membuat aplikasi yang bisa berjalan di berbagai Mobile Device, PDA, dan Embedded System. Perkembangan Java saat ini hingga menjadi 4 platform utama, yaitu Java Card, Java Micro Edition, Java Standard Edition, dan Java Enterprise Edition.
1. Aplikasi Web

Hal yang umum bahwa aplikasi web saat ini sangat umum digunakan khalayak IT, tidak hanya praktisi tapi juga khalayak umum apalagi dengan adanya social networking di dunia maya melalui browser. Hal ini mungkin dikarenakan manusia merupakan makhluk social sehingga dengan adanya social networking di dunia maya membuat masyarakat umum banyak menggunakan internet sebagai media komunikasi. Java merupakan salah satu bahasa pemrograman yang mendukung aplikasi web karena memang java dibuat untuk memberikan solusi untuk aplikasi yang berbasis jaringan.
Diantaranya yang mendukung aplikasi web adalah

– Applet
– Java (untuk aplikasi web berbasis server)
– CORBA (untuk aplikasi terdistribusi)
Selain itu Java juga memiliki SDK (Software Development Kit) yaitu  J2EE (Java 2 Enterprise Edition)
2. Java Web services

Merupakan aplikasi web berbasis interprise yang mengunakan standart XML dan protocol tertentu dalam bertukar data dengan klien.Teknologi ini meliputi beberapa API yang dirancang untuk bekerja dengan XML seperti Jsva API for XML Based RPC (JAX-RPC), Java API for XML based messaging (JAXM),Java API for XML Processing (JAXP) dan Java API for XML Binding (JAXB).
Penerapan pada Android


Sistem Android saat ini menggunakan Java didalamnya, dimana lapisan di atas kernel adalah Android runtime, termasuk mesin virtual Dalvik (Dalvik VM) dan Java Library. Dalvik VM adalah implementasi Java dari Google, dioptimalkan untuk perangkat mobile. Semua kode yang Anda tulis untuk Android akan ditulis di Java dan dijalankan dalam Virtual Machine. Dalvik berbeda dari Java tradisional dalam dua hal penting:
• Dalvik VM  menjalankan .dex file, yang dijabarkan pada waktu kompilasi dari standar file .class dan .jar. File .dex adalah lebih kompak dan efisien daripada file .class, suatu pertimbangan penting untuk memori terbatas dan perangkat bertenaga baterai yang berbasis Android.
• Pustaka Java core yang datang dengan Android berbeda dari pustaka Java Standard Edition (Java SE) dan Java Mobile Edition (Java ME).
   


Sebelum mempelajari program JAVA, alangkah baiknya apabila kita mengetahui konsep dari OOP (Object-Oriented Programming). Ada beberapa point penting yang harus diketahui, apa objects itu sendiri dan beberapa istilah seperti ; Classes, Inheritance, Encapsulation, Polymorphism


OBJECT
Object adalah instance dari class. Jika class secara umum merepresentasikan
(template) sebuah object, sebuah instance adalah representasi nyata dari class itu
sendiri.
Attributes/ Variable
merupakan nilai data yang terdapat pada suatu object yang berasal dari class. Attributes merepresentasikan karakteristik dari suatu object. Contoh : pada Class Fruit terdapat attribute : warna, berat pada object mangga : warna berisi kuning dan berat misalkan 0.24 kg pada object apel : warna berisi merah dan berat misalkan 0.30 kg

Methode/Behavior
merupakan suatu operasi berupa fungsi-fungsi yang dapat dikerjakan oleh suatu object. Method didefinisikan pada class akan tetapi dipanggil melalui object. 
Objek menyimpan statenya dalam satu atau lebih variabel, dan mengimplementasikan behaviournya dengan metode. Dengan penjelasan di atas, dapat disimpulkan bahwa objek adalah bagian software yang dibentuk dengan variabel-variabel dan metode-metode yang berhubungan dengan variabel tersebut.

CLASS
Kelas dapat didefinisikan sebagai cetak biru (blueprint) atau prototipe/kerangka yang mendefinisikan variabel-variabel (data) dan methodmethod (perilaku) umum dari sebuah objek tertentu.
Kelas digunakan untuk mendeklarasikan sebuah variabel yang berupa objek, dan sering disebut dengan referensi objek (objek reference). Kelas adalah sebuah prototipe dari objek yang diciptakan. Bagian ini mendefinisikan suatu model dari objek pada dunia nyata yang sebenarnya. Class adalah struktur dasar dari OOP (Object Oriented Programming).


ENCAPSULATION (PEMBUNGKUSAN)
Encapsulation adalah proses pemaketan data bersama metode-metodenya dimana hal ini bermanfaat untuk menyembeunyikan rincian-rincian implementasi dari pemakai. Dalam sebuah objek yang mengandung variabel-variabel dan methodmethod, dapat ditentukan hak akses pada sebuah variabel atau method dari objek. Pembungkusan variabel dan method dalamsebuah objek dalam bagian yang terlindungi inilah yang disebut dengan enkapsulasi.
Bagian eksternal dari sebuah objek sering disebut sebagai
interface atau antarmuka terhadap objek lain. Karena objek lain harus berkomunikasi dengan objek itu hanya melalui antarmuka maka bagian internal objek dapat dilindungi dari gangguan luar. Karena program luar tidak mengakses implementasi internal objek, maka implementasi internal dapat berubah tanpa mempengaruhi bagian-bagian program lain. Di dalam Java, pengkapsulan dapat dilakukan dengan pembentukan kelas-kelas menggunakan keyword class.

Sedangkan penyembunyian informasi dapat dilakukan dengan
pengendalian tgerhadap pengaksesan pembentuk kelas dengan keyword-keyword untuk kendali pengaksesan default, private, protected, dan public. Penyembunyian informasi deilakukan
dengan implementasi penerapan kendari menggunakan keyword private dan protected pada elemen data.
Ada 2 manfaat utama dari enkapsulasi yaitu :
1. Penyembunyian Informasi (information hiding)
Hal ini mengacu kepada perlindungan terhadap implementasi obejk internal. Objek tersebut dari interface public dan bagian private yang merupakan kombinasi data dan metode internal. Manfaat utamanya adalah bagian internal dapat berubah tanpa memepngaruhi bagian-bagian program yang lain.
2. Modularitas
Modularitas berarti objek dapat dikelola secara independen. Karena kode sumber bagian internal objek dikelola secara terpisah dari antarmuka, maka Kita bebas melakukan modifikasi yang tidak menyebabkan masalah pada bagian-bagian lain dari sistem. Manfaat ini mempermudah mendistriibusikan objek-objek dari sistem.

INHERITANCE (PEWARISAN)
Pewarisan adalah proses penciptaan kelas baru dengan mewarisi karakteristik dari kelas yang telah ada, ditambah dengan karakteristik unik dari kelas baru tersebut. Dalam hirarki kelas, jika kelas C merupakan turunan kelas B, dan kelas B merupakan turunan kelas A, maka otomatis attribute dan method kelas A juga diwariskan kelas C. Setiap subclass akan mewarisi state ( variabel-variabel ) dan behaviour ( method-method ) dari superclassnya.
Subclass kemudian dapat menambahkan state dan behaviour baru yang spesifik dan dapat pula memodifikasi ( override ) state dan behaviour yang diturunkan oleh superclassnya.
Keuntungan dari inheritance adalah :
·         Subclass menyediakan state/behaviour yang spesifik yang membedakannya dengan superclass, hal ini akan memungkinkan programmer Java untuk menggunakan ulang source code dari superclass yang telah ada.
·         Programmer Java dapat mendefinisikan superclass khusus yang bersifat generik, yang disebut abstract class, untuk mendefinisikan class dengan behaviour dan state secara umum.
·         Kemudahan dalam memanage kelas yang memiliki data dan method yang sama. Untuk memodifikasi suatu data atau method untuk semua subkelas / kelas anak, maka tidak perlu melakukan perubahan di masing-masing kelas anak melainkan hanya pada kelas induk saja.

Istilah dalam inheritance yang perlu diperhatikan :
1. Extends
Keyword ini harus kita tambahkan pada definisi class yang menjadi subclass.
2. Superclass
Superclass digunakan untuk menunjukkan hirarki class yang berarti class dasar dari subclass/class anak.
3. Subclass
Subclass adalah class anak atau turunan secara hirarki dari superclass.

Secara umum bentuk deklarasi dalam kkonsep pewarisan adalah sebagai berikut :

[modifier] class namaSubKelas extend namaKelasSuper
{
// classBody
}

POLYMORPHISM
Polymorphism dapat diartikan sebagai memiliki banyak bentuk. Dua objek atau lebih dikatakan sebagai polymorphic bila kedua objek tersebut mempunyai antarmuka identik namun mempunyai perilaku yang berbeda. Dalam pemrograman, polimorfisme dapat diartikan sebagai modul yang memiliki nama sama, namun memiliki behaviour (tingkah laku) yang berbeda sehingga listing code implementasinya juga berbeda.Kondisi yang harus dipenuhi supaya polimorfisme dapat diimplementasikan adalah :
1. Method yang dipanggil harus melalui variabel dari basis class atau superclass.
2. Method yang dipanggil harus juga menjadi method dari basis class.
3. Signature method harus sama baik pada superclass maupun subclass.
4. Method access attribute pada subclass tidak boleh lebih terbatas dari basis class. 


 IMPLEMENTASI JAVA 


1. m-commerce
E-commerce lebih identik dengan transaksi jual-beli barang dan jasa secara online, online shop, dan bisnis lain yang dilakukan melalui internet. Transaksi bisa berupa B2B (Business to Business) maupun B2C (Business to Customer). E-Commerce tidak hanya dilakukan di dalam browser namun juga dilakukan di dalam perangkat mobile yang biasa disebut dengan mobile commerce. Mobile Commerce biasa menggunakan aplikasi berbasis java dalam penerapannya, bahkan browser pada mobile juga banyak yang menggunakan platform java missal yang banyak digunakan adalah Opera Mini.
Jumlah pengguna ponsel pada umumnya lebih banyak ketimbang pengguna internet melalui PC/laptop sehingga pelanggan melalui ponsel lebih banyak bisa dijangkau daripada pengguna yang tidak menggunakan ponsel. Dengan banyaknya pengguna ponsel ini maka semakin besar peluang untuk pengguna ponsel melakukan transaksi jika ponsel mereka bisa bisa digunakan untuk E-Commerce, maka m-commerce semakin banyak dikembangkan karena potensinya yang cukup besar. Contoh aplikasi telah dikembangkan adalah mobile banking, aplikasi untuk transaksi saham,pelelangan barang dan lain sebagainya. Namun pengembangan aplikasi ini tidak terlepas dengan keamanan yang didukung oleh aplikasi tersebut. Oleh karena itu platform yang banyak digunakan adalah WAP dan Java ME baik melalui teknologi seperti Circuit Switched Data (CSD) atau General Packet Radio Service (GPRS).
2. Social Networking
Seperti dijelaskan di atas, manusia merupakan makhluk social yang membutuhkan interaksi dengan sesame. Dengan bahasa Java dimungkinkan untuk membuat aplikasi social networking yang memenuhi kebutuhan user dalam berinteraksi melalui device (tanpa suara tentunya).
3. Games
Penerapan Java pada games saat ini sudah sangat luas, terutama pada ponsel dan android. Game java dapat diunduh dimana saja dan sebagian telah mendukung grafis 3D. Dengan dukungan J2ME pada ponsel memungkinkan game berbasis java dan mesin virtual Dalvik pada Android.


Daftar pustaka 


1. Wikipedia. 2015. Java. http://id.wikipedia.org/wiki/Java. Diakses tanggal  1 Maret 2015
2, Wikipedia. 2015. Bahasa Pemrograman. http://id.wikipedia.org/wiki/Bahasa_pemrograman. Diakses tanggal 1 Maret 2015 
3. Sukma Murdani, S.Kom .2015. https://mrdazle272002.files.wordpress.com/2012/03/4-encapsulation-inheritance-polimorfisme.pdf. Diakses tanggal 2 Maret 2015
4. Anantakun.2015.Penerapan Bahasa Pemrograman Java di Masa Sekarang. https://anantakun.wordpress.com/2011/03/03/penerapan-bahasa-pemrograman-java-di-masa-sekarang/. Diakses tanggal 4 Maret 2014 

0 komentar:

Posting Komentar

  • Blogroll

  • About

    Matakuliah E-Application Dosen Pengampu I Putu Agus Pratama,S.T., M.T Jurusan Teknologi Informasi Fakultas Teknik Universitas Udayana