Rabu, 18 April 2012

Polimorfisme dan Inheritance Pada Java

Nama : Siti Amalia Mufiedah ( 56410578 )
Rekan Kerja : Anastasia Debbylia ( 50410647 ) 
Kelas : 2IA13
Link Rekan : http://anastasyadebby.blogspot.com/ 

 Inheritance

Inheritance adalah pewarisan yang artinya sebuah kelas yang mewarisi atribut dan methode dari kelas lain yang masih sejenis, sebagai contoh dalam dunia nyata adalah kelas buah menurunkan sifat dan kemampuannya kepada kelas mangga , kelas mangga indramayu, mangga harumanis, dll. Kelas buah sebagai superclass dan mewarisi atribut juga methodenya kepada mangga sebagai subclassnya.
Kita dapat mendefinisikan suatu kelas baru dengan mewarisi sifat dari kelas lain yang sudah ada. Penurunan sifat ini bisa dilakukan secara bertingkat-tingkat, sehingga semakin ke bawah kelas tersebut menjadi semakin spesifik. Sub kelas memungkinkan kita untuk melakukan spesifikasi detail dan perilaku khusus dari kelas supernya. Dengan konsep pewarisan, seorang programmer dapat menggunakan kode yang telah ditulisnya pada kelas super berulang kali pada kelas-kelas turunannya tanpa harus menulis ulang semua kode-kode itu. agar lebih memahaminya kita lihat program dibawah ini .
pertama kita buat dulu  class dengan nama orangtua  : 



String a dingunakan untuk mendefinisikan variabel a yang berisi "penyabar"
kemudian char b untuk mendefinisikan variabel b yang bernilai karakter yang isinya adalah "B"
kemudian statment void menyatakan bahwa metode (blok subclass) pada suatu kelas, kemudian kita gunakkan perintah System.out.println untuk mencetak tulisan kelayar monitor. kemudian kita tutup class dengan tanda kurung kurawal . 

setelah itu kita buat class anak dengan extends orang tua


string c digunakan untuk mendefinisikan variabel c yang berisi "nakal"
void digunakan untuk mrenyatakan bahwa metode (blok subclass) pada suatu kelas, kemudian kita gunakkan perintah System.out.println untuk mencetak tulisan kelayar monitor. kemudian kita tutup class dengan tanda kurung kurawal .



kemudian kita membuat class turunan dengan nama anak2. Public berarti kelas lain diperbolehkan memanggil metode , kemudian static  berarti dapat dipanggil oleh kelas lain tanpa menjadi instans (bagian) kelas itu. lalu void digunakan untuk mrenyatakan bahwa metode (blok subclass) pada suatu kelas , dan main berarti metode awal yang dijalankan, kemudian kita panggil class anak dan orangtua dengan membuat variable baru dengan nama anakku.






 maka output dari program diatas adalah :

Polimorfisme 
Polimorfisme merupakan suatu sifat yang memungkinkan nama method yang sama dapat melakukan tindakan yang berbeda. Contohnya ialah method roda yang terdapat pada bjai dan sepeda motor. Ingat bahwa bjai adalah kelas turunan dari kendaraan. Method roda pada kedua kelas sama-sama untuk menjalankan kendaraan. Namun roda pada bjai berbeda dengan roda pada sepeda motor. Roda pada bjai berjalan memakai tiga roda tanpa keseimbangan pengendaranya, sedangkan roda pada sepeda motor  berjalan memakai dua roda dengan keseimbangan si pengendaranya. Keduanya menggunakan nama yang sama yaitu roda, namun ternyata merujuk pada pekerjaan spesifik yang berbeda.
contoh program :
 kita buat class dengan nama Person
 public class Person
{
public String getName(){
System.out.println(“Person Name:” + name);
return name;
}
}
public class Student extends Person
{
public String getName(){
System.out.println(“Student Name:” + name);
return name;
}
}

kita buat class baru dengan nama Employee:
 
public class Employee extends Person
{
public String getName(){
System.out.println(“Employee Name:” + name);
return name;
}

Kembali ke method utama kita, ketika kita mencoba memanggil method getName dari
reference Person ref, method getName dari object Student akan dipanggil. Sekarang, jika
kita berikan ref ke object Employee, method getName dari Employee akan dipanggil.
public static main( String[] args )
{
Person ref;
Student studentObject = new Student();
Employee employeeObject = new Employee();
ref = studentObject; //Person menunjuk kepada
// object Student
String temp = ref.getName(); //getName dari Student
//class dipanggil
System.out.println( temp );
ref = employeeObject; //Person menunjuk kepada
// object Employee
String temp = ref.getName(); //getName dari Employee
//class dipanggil
System.out.println( temp );
}

sumber :


Kamis, 12 April 2012

Enkapsulasi pada Java

Nama : Siti Amalia Mufiedah (56410578)
Rekan Kerja : Anastasia Debbylia (50410647)
Kelas : 2IA13


Enkapsulasi/pengkapsulan(Encapsulation)

Enkapsulasi adalah pembungkus, pembungkus disini dimaksudkan untuk menjaga suatu proses program agar tidak dapat diakses secara sembarangan atau di intervensi oleh program lain. Konsep enkapsulasi sangat penting dilakukan untuk menjaga kebutuhan program agar dapat diakses sewaktu-waktu, sekaligus menjaga program tersebut.

konsep kerja dari enkapsulasi adalah dia akan melindungi sebuah program dari akses ataupun intervensi dari program lain yang mempengaruhinya. Hal ini sangat menjaga keutuhan program yang telah dibuat dengan konsep dan rencana yang sudah ditentukan dari  

Enkapsulasi adalah suatu cara untuk menyembunyikan informasi detail dari suatu class. Dua hal yang mendasar dalam enkapsulasi yakni :
• Information hiding.
• Interface to access data.

1. Information hiding

Sebelum itu kita bisa mengakses anggota class baik  atribut maupun method secara langsung dengan menggunakan objek yang telah kita buat. Hal ini disebabkan oleh akses kontrol yang diberikan kepada atribut maupun method yang ada di dalam class tersebut adalah 'public'. Maka kita dapat menyembunyikan informasi dari suatu class sehingga anggota class tersebut tidak dapat diakses dari luar. Caranya adalah 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.
 
2. 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 desain 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.

 Contoh program yang mengiplementasikan enkapsulasi pada Java :
pertama kita buat class dengan nama bungkus 

class bungkus {

public String a ="siti";

private String b = "amalia";

}


setelah itu kita buat lagi class baru dengan nama kapsul 


public class kapsul{

public static void main(String[]args){

Coba panggil = new bungkus();

System.out.println("call a: "+panggil.a);

System.out.println("call b : "+panggil.b);

}
}

logika:

class bungkus {
statement class merupakan sebuah kunci pokok dalam sebuah program java. pertama kita buat class dengan nama bungkus 

public String a ="siti";
statement public artinya  bisa diakses oleh siapapun, semua default method, class atau . Dalam kondisi default, kelas(sample saja) yang tidak dilengkapi dengan metode enkapsulasi tadi, tetap terbungkus dengan "public

private String b = "amalia";
}
statement public artinya tidak bisa diakses oleh sembarang class. Dengan kata lain "method yang di bungkus dengan private membuat method tersebut hanya bisa diakses di dalam kelas yang sama.


public class kapsul{
membuat class baru dengan nama kapsul

public static void main(String[]args){
digunakan untuk mendeklarasikan method dan akan dipanggil secara langsung dari fungsi main( ), tanpa menggunakan objek

Coba panggil = new bungkus();
Sehingga ketika kita "include" codenya..Belajar panggil = new Belajar();..menurut saya dan sesuai syarat itu adalah pendefinisian kelas yang dipanggil dengan benar.

System.out.println("call a: "+panggil.a);
perintah untuk memasukkan inputan dengan perintahnya adalah “call a:” karena memanggil a maka, outputnya call a: siti


System.out.println("call b : "+panggil.b);

}
}
perintah untuk memasukkan inputan dengan perintahnya adalah “call b:” karena memanggil b maka, outputnya call b: amalia

output :

 
Program Lainnya :



 



  

Sumber :

http://azhar-pti.blogspot.com



Jumat, 06 April 2012

Perbedaan Pemrograman Terstruktur dengan Pemrograman Berbasis Objek

Nama : Siti Amalia Mufiedah ( 56410578 )
Rekan : Anastasia Debbylia  ( 50410647 )
Kelas : 2IA13 

Pemrograman Terstruktur 


Pengertian :
Pemrograman Terstruktur adalah cara pemrosesan data yang terstruktur. Terstruktur dalam analisa, cara, dan penulisan program. Prinsip utama dari pemrograman terstruktur adalah jika suatu proses telah sampai pada suatu titik tertentu, maka proses selanjutnya tidak boleh melompat kebaris sebelumnya, kecuali untuk proses perulangan. Dalam pemrograman yang terstruktur, pendekatan pembuatan program adalah dengan menganut konsep "top-down". pada konsep ini, program dimulai dengan gambaran global, yang dinyatakan dengan nama-prosedur (sub-rutin) dan bukan isi detailnya. Selanjutnya prosedur sendiri bisa dipecah-pecah lagi menjadi prosedur yang lain. Konsep ini sangat memudahkan dalam pemodifian program

Pemrograman Terstruktur adalah suatu proses untuk mengimplementasikan urutan langkah untuk menyelesaikan suatu masalah dalam 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 suatu proses telah sampai pada suatu titik / langkah tertentu , maka proses selanjutnya tidak boleh mengeksekusi langkah sebelumnya / kembali lagi ke baris sebelumnya, kecuali pada langkah – langkah untuk proses berulang (Loop).

Bahasa Pemrograman Yang Mendukung Pemrograman Terstruktur :
  • Cobol
  • Turbo Prolog

Pemrograman Berbasis Objek 

Pengertian 

Pemrograman berorientasi objek (Inggris: object-oriented programming disingkat OOP) merupakan paradigma pemrograman yang berorientasikan kepada objek. Semua data dan fungsi di dalam paradigma 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.


Model data berorientasi objek dikatakan dapat memberi fleksibilitas yang lebih, kemudahan mengubah program, dan digunakan luas dalam teknik piranti lunak skala besar. Lebih jauh lagi, pendukung OOP mengklaim bahwa OOP lebih mudah dipelajari bagi pemula dibanding dengan pendekatan sebelumnya, dan pendekatan OOP lebih mudah dikembangkan dan dirawat.

Bahasa Pemrograman Yang Mendukung Pemrograman Berbasis Objek
  1. Visual Foxpro
  2. Java
  3. C++
  4. Pascal (bahasa pemrograman)
  5. Visual Basic.NET
  6. SIMULA
  7. Smalltalk
  8. Ruby
  9. Python
  10. PHP
  11. C#
  12. Delphi
  13. Eiffel
  14. Perl
  15. Adobe Flash AS 3.0

Perbedaan Pemrograman Terstruktur dengan Pemrograman Berbasis Objek 


Berdasarkan penjelasan diatas, sangat jelas sekali bahwa pemrograman tersktruktur unggul dalam melakukan pemrograman sederhana karena lebih efisien dan lebih murah dalam hal perawatannya tetapi permodelan ini lebih susah untuk dipahami oleh orang – orang selain pembuat program itu sendiri (contohnya ketika dlakukan tracing program ).

Sementara itu pemrograman berorientasi objek memliki beberapa keuntungan seperti :
  • Maintenance; program lebih mudah dibaca dan dipahami, dan pemrograman berorientasi obyek mengontrol kerumitan program hanya dengan mengijinkan rincian yang dibutuhkan untuk programmer.
  • Pengubahan program (berupa penambahan atau penghapusan fitur tertentu); perubahan yang dilakukan antara lain menyangkut penambahan dan penghapusan dalam suatu database program misalnya.
  • Dapat digunakannya obyek-obyek sesering yang diinginkan, kita dapat menyimpan obyek-obyek yang yang dirancang dengan baik ke dalam sebuah tolkit rutin yang bermanfaat yang dapat disisipkan kedalam kode yang baru dengan sedikit perubahan atau tanpa perubahan pada kode tersebut.
Dalam menarik kesimpulan, bahwa pemrograman berorientasi objek sangat cocok sekali digunakan dalam kasus pembuatan software yang rumit dan kompleks karena memberikan berbagai kemudahan kepada pemrogram seperti yang telah disebutkan diatas.

permodelan yang mana yang lebh bagus? itu tergantung dari kebutuhan dan dari sudut pandang mana anda melihatnya. Yang perlu anda ingat adalah tujuan dari pemodelan itu sendiri, yang mana agar pada akhir proyek sistem dapat diperoleh sistem informasi yang memenuhi kebutuhan pemakai, tepat waktu dan sesuai anggaran, serta mudah digunakan, dimengerti dan dipelihara.
Sumber :

Rekan Kerja :