4.19.2012

Pewarisan ( Inheritance ) & Polimorfisme ( Polymorphisme )

Pewarisan ( Inheritance )

Pewarisan adalah memberikan atau mewariskan sesuatu kepada keturunan berikutnya. Misalnya, seorang anak pasti akan mewarisi beberapa sifat atau prilaku yang dimiliki oleh ibu atau bapaknya. Dalam konteks ini, suatu kelas dalam program dapat diturunkan menjadi kelas – kelas baru lainnya yang akan mewarisi beberapa sifat atau prilaku dari kelas induknya. Sebagai contoh, apabila anda memiliki kelas A dalam program yang anda buat, maka anda dapat membentuk kelas – kelas turunan dari kelas A tersebut (misalnya kelas B) yang mewarisi sifat- sifat yang terkandung dalam kelas A. Dalam proses pembuatan kelas turunan tersebut, anda dapat menambahkan sifat dan prilaku baru kedalam kelas B, yang sebelumnya tidak dimiliki dalam kelas A. Dalam terminologi Java, kelas induk dinamakan superclass dan kelas turunan disebut dengan Subclass. Untuk membuat kelas anak atau subclass berdasarkan kelas yang telah ada, anda dapat gunakan kata kunci extend dalam mendeklarasikan class. Sebuah kelas hanya dapat meng-extend satu kelas induk. 
 Contoh Program :
import javax.swing.*;
class kelasA{
                int x,y;
                void tampilnilaixy(){
                System.out.println("Nilai X : " + x + "  nilai Y : " + y);
                }
                }
//kelasB adalah Extend(turunan) dari kelasA
class kelasB extends kelasA{
                int z;
                void tampilkanjumlah(){
                System.out.println("\n");
                System.out.println("jumlah x+y+z = "+(x+y+z));
                System.out.println("\n");
                }
}
//class programinheritance berikut adalah extends (turunan) dari kelasB
class programinheritance {
                public static void main (String []args){
                                                kelasA superClass = new kelasA();
                                                kelasB subClass = new kelasB();
System.out.println("\n");
                                                System.out.println("Program Inheritance ");
                                                System.out.println("============================");
                                                System.out.println("\n");
                                                System.out.println("SuperClass adalah Kelas A");
                                                superClass.x=70;
                                                superClass.y=100;
                                                superClass.tampilnilaixy();
                                                System.out.println("\nSubClass adalah Kelas B");
                                                subClass.x=4;
                                                subClass.y=8;
                                                subClass.tampilnilaixy();
// membuat inputan melalui keyboard dengan menggunakan JoptionPane
     // yang di deklarasikan pada import javax.swing.*; pada bagian atas.
                                                String data1 = JOptionPane.showInputDialog("Masukkan Nilai Z : ");
                                                subClass.z=Integer.parseInt(data1);
                                                System.out.println ("Nilai Z yang Dimasukkan : "+subClass.z);
                                                subClass.tampilkanjumlah();
                }
}
Output :










 Polimorfisme ( Polymorphisme )
Polimorfisme adalah suatu kejadian ketika objek dapat mengungkap banyak hal melalui suatu cara yang sama. Secara harfiah, poli berarti “banyak” dan morph berarti “bentuk”. Jadi, polimorphisme berarti “mempunyai banyak bentuk”. Sebagai contoh, ada kelas A yang diturunkan menjadi kelas B,C, dan D. Dengan konsep Polimorfisme, anda dapat menjalankan method – method yang terdapat pada kelas B,C, dan D hanya dari objek yang diinstansiasi dengan kelas A. Polimorfisme memungkinkan anda mengenali kesamaam diantara kelas yang berbeda. Polimorfisme sering dinamakan dengan Dynamic binding, late binding, atau runtime binding.
Contoh Program :

import java.*;
import java.io.*;
// membuat kelas untuk di jadikan bentuk objek dan sebagai superclass
class menu{
                public String respons(){
                                return("Pilih Menu :\n");
                }
}
// membuat kelas untuk di jadikan bentuk objek dan sebagai subclass dari kelas bentukwajah
class sub1 extends menu{
                public String respons(){
                                return (" Gado-Gado\n");
                }
}
class sub2 extends menu{
                public String respons(){
                                return (" Ketoprak\n");
                }}

// Program utama
class MenuUtama{
                // method main
                public static void main (String []args){
                                System.out.println("\nMenu Betawi");
                                System.out.println("----------------------------------------\n");
                                // membuat objek – objek raut (ekspresi) dari wajah
                                menu objmenu1 = new menu();
                                sub1 objsub1 = new sub1();
                                sub2 objsub2 = new sub2();
                                // polimorpis dari bentuk wajah ada lima dimulai dari 0-4
                                menu [] bentuk=new menu[5];
                                bentuk[0]= objmenu1;
                                bentuk[1]= objsub1;
                                bentuk[2]= objsub2;
                                System.out.println(bentuk[0].respons());
                                System.out.println("Menu 1 :"+bentuk[1].respons());
                                System.out.println("Menu 2 :"+bentuk[2].respons());
                }}
Output :









Nama : Faisal Muslim
NPM  : 59410127
Kelas  : 2IA14

Partner
Nama : Muhammad Fahri
NPM  : 54410679
Kelas  : 2IA14
Blog   : muh-fahri.blogspot.com

Tanggal : 20-04-2012

4.14.2012

Twitter Social Network part2

Kelebihan Dan Kekurangan
Selama saya menggunakan jejaring social ini, kelebihan yang dirasakan adalah lebih mudah untuk melakukan interaksi dengan banyak orang disbanding dengan jejaring social lainnya. Dalam twitter juga bisa dibilang lebih update, karena terdapat konten pesan hangat (trending topic). Jadi kita lebih mudah tahu berita apa yang sedang banyak diperbincangkan. Jika kita ingin lebih mendapat prifasi, maka bisa menggunakan pesan langsung (direct message) karena kita hanya terhubung dengan orang yang kita kirim pesan saja.
Banyak juga kekurangan Twitter jika dibanding dengan jejaring social lainnya. Kita hanya bisa mengirim tidak lebih dari 140 karakter untuk setiap status. Jelas tidak leluasa seperti facebook, friendster, dan myspace.

Keamanan / Security
        Menanggapi pelanggaran keamanan Twitter, Federal Trade Commision membawa tuduhan terhadap layanan yang telah diselesaikan pada tanggal 24 Juni 2010. Ini adalah pertama kalinya FTC telah mengambil tindakan melawan jaringan social untuk penyimpangan keamanan. Penyelesaiannya Twitter memerlukan sejumlah langkah untuk mengamankan informasi pribadi sehingga Program Keamanan Informasi yang Komprehensif untuk secara independen diaudit dua kali setahun. Pada tanggal 21 September 2010, sebuah cacing computer (Worm) XSS aktif di Twitter. Ketika sebuah akun pengguna mengirim kicauan, cacing computer dalam skrip secara otomatis akan membuka tautan dan mengirim dengan sendirinya. Yang lebih parah lagi, jejaring social ini digunakan untuk mengirim iklan (pop-up ad) dan tautan ke situs porno.
           


Pemanfaatan jejaring social sekarang ini sangatlah penting, sudah banyak orang yang melakukan jual beli melalui twitter. Ini hanya sebagian kecil, mungkin di masa mendatang twitter dan jejaring social lain akan menjadi lahan penjualan saham – saham perusahaan atau semacamnya. Bisa juga digunakan sebagai pengambilan suara seperti pada pemilihan presiden, kepala daerah, gubernur, dll. Sudah banyak masyarakat dunia yang sadar akan teknologi, siapa tahu di masa yang akan datang, teknologi semacam ini akan dijadikan media dalam segala aspek.

4.13.2012

Enkapsulasi

Enkapsulasi adalah suatu cara untuk menyembunyikan informa
si detail dari suatu class. Dua hal yang mendasar dalam enkapsulasi yakni :
• Information hiding.
• Interface to access data.
Information hiding
Sebelumnya kita dapat mengakses anggota class baik berupa atribut maupun method secara langsung dengan menggunakan objek yang telah kita buat. Hal ini dikarenakan akses kontrol yang diberikan kepada atribut maupun method yang ada di dalam class tersebut adalah 'public'. Kita dapat menyembunyikan informasi dari suatu class sehingga anggota class tersebut tidak dapat diakses dari luar, caranya adalah hanya dengan memberikan akses kontrol 'private' ketika mendeklarasikan atribut atau method. Proses ini disebut dengan information hiding.

Interface to access data
Jika kita telah melakukan information hiding terhadap suatu atribut pada suatu class, lalu bagaimana cara melakukan perubahan terhadap atribut yang kita sembunyikan tersebut, caranya adalah dengan membuat suatu interface berupa method untuk menginisialisasi atau merubah nilai dari suatu atribut tersebut.
Enkapsulasi menunjuk pada prinsip dari menyembunyikan des
ain atau mengimplementasikan informasi yang tidak sesuai pada object yang ada. Menyembunyikan elemen dari penggunaan sebuah class dapat dilakukan dengan pembuatan anggota yang ingin Anda sembunyikan secara private.


PROGRAM















 
 
 
 
 
OUTPUT
 
 
 











 
 
 
 
NAMA        : Muhammad Fahri
NPM           : 54410679
KELAS       : 2IA14


TEMAN KELOMPOK
NAMA       : Faisal Muslim
NPM          : 59410127
KELAS      : 2IA14

TANGGAL POSTING : 13-04-2012

4.06.2012

Perbedaan Pemrograman Terstruktur Dan Berbasis Objek

Pengertian Pemrograman Terstruktur
Pemrograman terstruktur adalah suau proses untuk mengmplementasikan urutan langkah untuk menyelesaikan suatu masalah dlam bentuk program.
Selain pengertian diatas Pemrograman Terstruktur adalah suatu aktifitas pemrograman dengan memperhatikan urutan langkah-langkah perintah secara sistematis, logis, dan tersusun berdasarkan algoritma yang sederhana dan mudah dipahami.
Prinsip dari pemrograman terstruktur adalah jika suau proses telah sampai pada suatu titik / langkah tertentu, maka proses selanjutnya tidak boleh mengeksekusi langkah sebelumnya / kembali lagi kebaris sebelumnya, kecuali pada langkah-langkah untuk proses berulang (Loop).
Bahasa pemrograman yag mendukung pemrograman terstruktur :
1.       C
2.       Cobol Turbo Prolog
3.       Pascal
4.       Delphi dan masih banyak lagi
Perograman terstruktur memiliki beberapa sifat-sifat seperti :
a.       Membuat teknik pemecahan masalah yang logis dan sistematis
b.      Membuat algoritma yag efisien, efektif dan sederhana
c.       Program disusun dengan logika yang mudah dipahami
d.      Tidak menggunakan perintah GOTO
e.      Biaya pengujian relative rendah
f.        Memiliki dikumentasi yang baik
g.       Biaya perawatan dan dokumentasi yang dibutuhkan relative rendah
Berdasarkan penjelasan diatas, sangat jelas sekali bahwa pemrograman terstruktur unggul dalam melakukan pemrograman sederhana karena lebih efisien dan lebih murah dalam hal perawatannya tetapi, perodelan ini lebih susah dipahami oleh orang-orang selain pemuat program itu sendiri (contohnya ketika dilakukan tracing program).
Beberapa keunggulan OOP :
1.       Pengubahan program ( berupa penambahan atau penghapusan fitur tertentu). Peruahan yang dilakukan antara lain menyangkut penambahan dan penghapusan database dalam  suatu program.
2.       Maintenance program lebih mudah dibaca dan dipahami, pemrograman berorientasi obyek mengontrol kerumitan  program hanya dengan mengijinkan rincian yang dibutuhkan untuk programmer.
3.       Dapat dignakannya obyek-obyek sesering yang diinginkan kita dapat menyimpan obyek-obyek yang dirancang dengan baik ke dalam sebuah toolkit rutin yang bermanfaat yang dapat disisipkan kedalam kode yang baru dengan sedikit peruahan atau tanpa perubahan pada kode tersebut
Jadi sangat jelas sekali bahwa pemrograman berorientasi objek sangat cocok sekali digunakan dalam kasus pembuatan software yang rumit dan kompleks karena memberikan berbagai kemudahan kepada pemrograman seperti yang telah disebutkan diatas.

Pengertian Pemrograman Berorientasi Objek
Pemrograman berorientasi objek (OOP) merupakan paradigma pemrograman yang berorientasikan kepada objek. Semua data dan fungsi di dalam paradigm ini dibungkus dalam kelas-kelas atau objek-objek. Bandingkan dengan logika pemrograman terstruktur, setiap objek dapat menerima pesan, memproses data, dan mengirim pesan ke objek lainnya.
Bahasa pemrograman yang medukung OOP antara lain :
1.       Java
2.       C++
3.       Pascal
4.       SIMULA
5.       Smalltalk
6.       Ruby
7.       Python
8.       Visual FoxPro
9.       PHP
10.   C#
11.   Delphi
12.   Eiffel
13.   Adobe Flash AS 3.0
14.   Perl
15.   Visual Basic.NET

Perbedaan Mendasar Antara OOP dan Pemrograman Terstruktur Adalah :
Dengan menggunakan OOP maka dalam melakukan pemecahan suatu masalah kita tidak dapat melihat bagaimana cara menyelesaikan suatu masalah tersebut (terstruktur) tetapi objek-objek apa yang dapat melakukan pemecahan masalah tersebut. Sedangkan untuk pemrograman terstruktur meggunakan prosedur/ tata cara yang teratur untuk mengoperasikan data struktur.
Untuk tata nama, keduanya pun memiliki tatanan yang sama walaupun memiliki pengertian sendiri :
Object Oriented menggunaka “method “ sedangkan terstruktur menggunakan “function”. Bila di OOP sering didengar mengenai object maka terstruktur dikenal dengan modules. Begitu pula halnya dengan “message” pada OOP dan “argument” pada terstruktur. “attribute” pada OOP juga memiliki tatanan nama yang sepadan dengan “variable” pada pemrograman terstruktur.




Nama  : Faisal Muslim
NPM   : 59410127
Kelas  : 2IA14
Partner: http://muh-fahri.blogspot.com