Polymorphism

Polymorphism, suatu aksi yang memungkinkan pemrogram menyampaikan pesan tertentu keluar dari hirarki obyeknya, dimana obyek yang berbeda memberikan tanggapan/respon terhadap pesan yang sama sesuai dengan sifat masing-masing obyek.
Atau Polymorphic dapat berarti banyak bentuk, maksudnya yaitu kita dapat menimpa (override), suatu method, yang berasal dari parent class (super class) dimana object tersebut diturunkan, sehingga memiliki kelakuan yang berbeda.

Contohprogramnya :


class CetakDataTipe {
// membuat method dengan nama sama tapi berbeda tipe data
public void CetakData(String Cetak) {
System.out.println(Cetak);
}
public void CetakData(int Cetak) {
System.out.println(Cetak);
}
public void CetakData(double Cetak) {
System.out.println(Cetak);
}
public void CetakData(char Cetak) {
System.out.println(Cetak);
}
}
class Polymorphism {
public static void main(String[] args) {
CetakDataTipe data = new CetakDataTipe();
System.out.print("CETAK DATA TIPE STRING : ");
data.CetakData("NINALATIFAH");
System.out.print("CETAK DATA TIPE INTEGER : ");
data.CetakData(54410997);
System.out.print("CETAK DATA TIPE DOUBLE : ");
data.CetakData(2012 / 2);
System.out.print("CETAK DATA TIPE CHAR : ");
data.CetakData('Z');
}
}


Outputnya



Nama : Nina Latifah
Kelas : 2 ia 13
NPM : 54410997

INHERITANCE



Pengertian INHERITANCE adalah dimana sebuah objek dapat mempunyai objek turunan. dalam hal pemrograman dapat diimplemantasikan dengan sebuah class yang mempunyai class turunan. class yang mempunyai turunan disebuat sebagai Parent Class atau Base Class, sedangkan class yang menjadi turunan dari Parents Class disebut sebagai SubClass atau ChildClass.  


setiap class, hanya dapat memiliki satu superclass, tetapi dapat memiliki banyak subclass!


Cara untuk mendeklarasikan inheritance adalah dengan memberikan keyword extends setelah nama kelas diikuti dengan nama Parent atau class. kata kunci extends memberikan informasi pada Kompiler JAVA bahwa kita ingin melakukan perluasan class.

Keuntungan dari pewarisan adalah tidak perlu mengutak atik kode kelas yang membutuhkan tambahan atribut atau metode saja, karena tinggal membuat kelas turunannya tanpa harus mengubah kode kelas dasarnya. Kelas dasar akan mewariskan semua atribut dan kodenya kecuali konstruktor dan destruktor yang memiliki izin akses publicdan protectedke kelas turunannya dengan izin akses yang sama dengan pada kelas dasar. Ketika sebuah kelas turunan dibuat objeknya saat eksekusi, maka secara implisit konstruktor kelas dasar dipanggil terlebih dahulu baru kemudian konstruktor kelas turunan dijalankan. Begitu juga saat objek dimusnahkan maka secara destruktor kelas turunan akan dijalankan baru kemudian destruktor kelas dasar dijalankan.


Berikut contoh Program nya :
class Karyawan {
 private String nama;
 private String npm;
 private String golongan;
 private double gaji;

 public void setNama(String nama)
 {
  this.nama=nama;
 }
 public void setNpm(String npm)
 {
  this.npm=npm;
 }
 public void setGolongan(String golongan)
 {
  this.golongan=golongan;
  switch(golongan.charAt(0)){
   case '1':this.gaji=5000000;
     break;
   case '2':this.gaji=3000000;
     break;
   case '3':this.gaji=2000000;
     break;
   case '4':this.gaji=1000000;
     break;
   case '5':this.gaji=750000;
     break;
  }
 }
 public void setGaji(double gaji)
 {
  this.gaji=gaji;
 }
 public String getNama()
 {
  return nama;
 }
 public String getNpm()
 {
  return npm;
 }
 public String getGolongan()
 {
  return golongan;
 }
 public double getGaji()
 {
  return gaji;
 }
}

class Manager extends Karyawan {
 private double tunjangan;
 private String bagian;
 private Staff st[];
 public void setTunjangan(double tunjangan)
 {
  this.tunjangan=tunjangan;
 }
 public double getTunjangan()
 {
  return tunjangan;
 }
 public void setBagian(String bagian)
 {
  this.bagian=bagian;
 }
 public String getBagian()
 {
  return bagian;
 }
 pu
  this.st=st;
 }
blic void setStaff(Staff st[])
 {
 public void viewStaff()
 {
  int i;
  System.out.println("--------------------");
  for(i=0;i<st.length;i++)
  {
   st[i].lihatInfo();
  }
  System.out.println("--------------------");
 }
 public void lihatInfo()
 {
  System.out.println("MANAGER :"+this.getBagian());
  System.out.println("NPM :"+this.getNpm());
  System.out.println("NAMA :"+this.getNama());
  System.out.println("GOLONGAN :"+this.getGolongan());
  System.out.printf("TUNJANGAN :%.0f\n",this.getTunjangan());
  System.out.printf("GAJI :%.0f\n",this.getGaji());
  System.out.println("BAGIAN :"+this.getBagian());
  this.viewStaff();
 }
 public double getGaji()
 {
  return super.getGaji()+tunjangan;
 }
}
class Staff extends Karyawan {
 private int lembur;
 private double gajiLembur;

 public void setLembur(int lembur)
 {
  this.lembur=lembur;
 }
 public int getLembur()
 {
  return lembur;
 }
 public void setGajiLembur(double gajiLembur)
 {
  this.gajiLembur=gajiLembur;
 }
 public double getGajiLembur()
 {
  return gajiLembur;
 }
 public double getGaji(int lembur,double gajiLembur)
 {
  return super.getGaji()+lembur*gajiLembur;
 }
 public double getGaji()
 {
  return super.getGaji()+lembur*gajiLembur;
 }
 public void lihatInfo()
 {
  System.out.println("NPM :"+this.getNpm());
  System.out.println("NAMA :"+this.getNama());
  System.out.println("GOLONGAN :"+this.getGolongan());
  System.out.println("JUMLAH LEMBUR :"+this.getLembur());
  System.out.printf("GAJI LEMBUR :%.0f\n", this.getGajiLembur());
  System.out.printf("GAJI :%.0f\n",this.getGaji());
 }
}
class Utama {
 public static void main(String[] args)
 {
  System.out.println("PROGRAM TESTING CLASS MANAGER & STAFF\n");
  Manager man[]=new Manager[2];
  Staff staff1[]=new Staff[2];
  Staff staff2[]=new Staff[3];

  //pembuatan manager
  man[0]=new Manager();
  //NINA LATIFAH
  man[0].setNama("Nina Latifah");
  man[0].setNpm("54410997");
  man[0].setGolongan("1");
  man[0].setTunjangan(5000000);
  man[0].setBagian("GM KEUANGAN");

  man[1]=new Manager();
  //RIKY SYAPUTRA
  man[1].setNama("Riky Syaputra");
  man[1].setNpm("55410964");
  man[1].setGolongan("1");
  man[1].setTunjangan(2500000);
  man[1].setBagian("GM MARKETING");

  // staff NINA
  staff1[0]=new Staff();
  staff1[0].setNama("Dora");
  staff1[0].setNpm("55343534");
  staff1[0].setGolongan("2");
  staff1[0].setLembur(10);
  staff1[0].setGajiLembur(10000);

  staff1[1]=new Staff();
  staff1[1].setNama("TELETUBIES");
  staff1[1].setNpm("0005");
  staff1[1].setGolongan("2");
  staff1[1].setLembur(10);
  staff1[1].setGajiLembur(55000);
  man[0].setStaff(staff1);

  //staff RIKY
  staff2[0]=new Staff();
  staff2[0].setNama("SAILORMOON");
  staff2[0].setNpm("55343534");
  staff2[0].setGolongan("3");
  staff2[0].setLembur(15);
  staff2[0].setGajiLembur(5500);
  staff2[1]=new Staff();
  staff2[1].setNama("DORAEMON");
  staff2[1].setNpm("66252625");
  staff2[1].setGolongan("4");
  staff2[1].setLembur(5);
  staff2[1].setGajiLembur(100000);
  staff2[2]=new Staff();
  staff2[2].setNama("SHAUNTHESHEEP");
  staff2[2].setNpm("55363537");
  staff2[2].setGolongan("3");
  staff2[2].setLembur(6);
  staff2[2].setGajiLembur(20000);
  man[1].setStaff(staff2);

  //cetak informasi dari manager + staffnya
  man[0].lihatInfo();
  man[1].lihatInfo();
  }
}



OUTPUTnya adalah :



 Sumber

Nama : Nina Latifah
Kelas : 2ia13
NPM : 54410997

Tugas PBO

 ·         Berorientasi Objek & Enkapsulasi


    Ø  Apa yang di maksud dengan enkapsulasi?

Enkapsulasi (pengkapsulan), Pengkapsulan memiliki arti mengelompokkan program dalam satu unit sehingga program mudah untuk digunakan.
Tujuan digunakannya enkapsulasi yaitu untuk melindungi program dari pengaksesan variabel kritis atau perubahan oleh programmer selama tahap pembangunan program.
Enkapsulasi memiliki manfaat sebagai berikut:
> Modularitas
Source code dari sebuah class dapat dikelola secara independen dari source code class   yang lain. Perubahan internal pada sebuah class tidak akan berpengaruh bagi class yang menggunakannya.
> Information Hiding
Penyembunyian informasi yang tidak perlu diketahui objek lain.


Ø  Contoh Program Sederhana Yang Mengimplementasikan kKonsep, Berorientasi Objek & Enkapsulasi :
public class Mahasiswa {
 private String nama;
private String npm;
 public Mahasiswa(String n, String npm) {
this.nama = n;
this.npm = npm;
}
 public String tampilkanNama() {
return nama;
}
 public String tampilkanNpm() {
return npm;
}
 public void tugas() {
System.out.println("Tugas PBO");
}
 public void blabla() {
System.out.println("Paling lambat tanggal :");
}
 public void tanggal() {
System.out.println("13/04/2012");
}
}

 Ø  Sekarang kita membuat class main-nya :

public class main {
 public static void main(String[] args) {
Mahasiswa nina = new Mahasiswa("Nina", "54410997");
System.out.println("Nama \t : " + nina.tampilkanNama());
System.out.println("NIM \t : " + nina.tampilkanNpm());
nina.tugas();
nina.blabla();
nina.tanggal();
System.out.println();
 Mahasiswa riky = new Mahasiswa("Riky", "55410964");
System.out.println("Nama \t : " + riky.tampilkanNama());
System.out.println("NIM \t : " + riky.tampilkanNpm());
riky.tugas();
riky.blabla();
riky.tanggal();
System.out.println();
 Mahasiswa sapakek = new Mahasiswa("Sapakek", "000000002");
System.out.println("Nama \t : " + sapakek.tampilkanNama());
System.out.println("NIM \t : " + sapakek.tampilkanNpm());
sapakek.tugas();
sapakek.blabla();
sapakek.tanggal();
System.out.println();
}
}
Outputnya :
 
Selesai.

Nama : Nina Latifah
Npm : 54410997
Kelas : 2 IA 13

Tugas 6 April 2012


PEMROGRAMAN TERSTRUKTUR DAN BERBASIS OBJEK

Pemrograman terstruktur  adalah sebuah program yang menjelaskan tiap langkah secara berurut untuk membantu menyelesaikan masalah para user. Sedangkan Pemrograman berbasis objek (OOP) adalah pemrograman yang berbasis objek dengan data dan fungsinya terdapat didalam sebuah objek.

Bahasa pemrograman yang menggunakan pemrograman terstruktur :
 v  Cobol
 v  C
 v  Pascal
 v  Delphi
 v  Borland Delphi

Bahasa pemrograman yang menggunakan pemrograman yang berorientasi objek :
 v  Eiffel
 v  Delphi
 v  Perl
 v  C#
 v  Phyton
 v  Ruby
 v  Smarttalk
 v  Visual Basic.NET
 v  C++
 v  Pascal
 v  Java
 v  Visual Foxpro
 v  Adebe Flash AS 3.0



1.    Jelaskan perbedaan pemrograman terstruktur dan berorientasi objek !
JAWAB :
Pemrograman terstruktur dan berorientasi objek mempunyai perbedaan dari bentuk sifatnya. Jika pemrograman terstruktur :
1.      Biaya perawatan dan pengujian lebih rendah
2.      Tidak menggunakan perintah GOTO
3.      Mempunyai dokumentasi yang baik
4.      Logika yang mudah dipahami
5.      Mempunyai algo yang efisien, efektif dan mudah dipahami pula
6.      Tekhnik pemecahan msalahnya sistematis dan logis.

Sedangkan pemrograman berorientasi objek :
1.      Inheritance (pewarisan)
2.      Encapsulation (pembungkusan)
3.      Polymorphism (perberdaan bentuk)
4.      Maintenance (pengontrol kerumitan)
5.      Pengubahan program
6.      Dapat menggunakan objek yang sudah ada ataupun kita buat sendiri.



Nama    : Nina Latifah
Kelas      : 2ia13
NPM      : 54410997


Jumat, 20 April 2012

Polymorphism

Polymorphism, suatu aksi yang memungkinkan pemrogram menyampaikan pesan tertentu keluar dari hirarki obyeknya, dimana obyek yang berbeda memberikan tanggapan/respon terhadap pesan yang sama sesuai dengan sifat masing-masing obyek.
Atau Polymorphic dapat berarti banyak bentuk, maksudnya yaitu kita dapat menimpa (override), suatu method, yang berasal dari parent class (super class) dimana object tersebut diturunkan, sehingga memiliki kelakuan yang berbeda.

Contohprogramnya :


class CetakDataTipe {
// membuat method dengan nama sama tapi berbeda tipe data
public void CetakData(String Cetak) {
System.out.println(Cetak);
}
public void CetakData(int Cetak) {
System.out.println(Cetak);
}
public void CetakData(double Cetak) {
System.out.println(Cetak);
}
public void CetakData(char Cetak) {
System.out.println(Cetak);
}
}
class Polymorphism {
public static void main(String[] args) {
CetakDataTipe data = new CetakDataTipe();
System.out.print("CETAK DATA TIPE STRING : ");
data.CetakData("NINALATIFAH");
System.out.print("CETAK DATA TIPE INTEGER : ");
data.CetakData(54410997);
System.out.print("CETAK DATA TIPE DOUBLE : ");
data.CetakData(2012 / 2);
System.out.print("CETAK DATA TIPE CHAR : ");
data.CetakData('Z');
}
}


Outputnya



Nama : Nina Latifah
Kelas : 2 ia 13
NPM : 54410997

INHERITANCE



Pengertian INHERITANCE adalah dimana sebuah objek dapat mempunyai objek turunan. dalam hal pemrograman dapat diimplemantasikan dengan sebuah class yang mempunyai class turunan. class yang mempunyai turunan disebuat sebagai Parent Class atau Base Class, sedangkan class yang menjadi turunan dari Parents Class disebut sebagai SubClass atau ChildClass.  


setiap class, hanya dapat memiliki satu superclass, tetapi dapat memiliki banyak subclass!


Cara untuk mendeklarasikan inheritance adalah dengan memberikan keyword extends setelah nama kelas diikuti dengan nama Parent atau class. kata kunci extends memberikan informasi pada Kompiler JAVA bahwa kita ingin melakukan perluasan class.

Keuntungan dari pewarisan adalah tidak perlu mengutak atik kode kelas yang membutuhkan tambahan atribut atau metode saja, karena tinggal membuat kelas turunannya tanpa harus mengubah kode kelas dasarnya. Kelas dasar akan mewariskan semua atribut dan kodenya kecuali konstruktor dan destruktor yang memiliki izin akses publicdan protectedke kelas turunannya dengan izin akses yang sama dengan pada kelas dasar. Ketika sebuah kelas turunan dibuat objeknya saat eksekusi, maka secara implisit konstruktor kelas dasar dipanggil terlebih dahulu baru kemudian konstruktor kelas turunan dijalankan. Begitu juga saat objek dimusnahkan maka secara destruktor kelas turunan akan dijalankan baru kemudian destruktor kelas dasar dijalankan.


Berikut contoh Program nya :
class Karyawan {
 private String nama;
 private String npm;
 private String golongan;
 private double gaji;

 public void setNama(String nama)
 {
  this.nama=nama;
 }
 public void setNpm(String npm)
 {
  this.npm=npm;
 }
 public void setGolongan(String golongan)
 {
  this.golongan=golongan;
  switch(golongan.charAt(0)){
   case '1':this.gaji=5000000;
     break;
   case '2':this.gaji=3000000;
     break;
   case '3':this.gaji=2000000;
     break;
   case '4':this.gaji=1000000;
     break;
   case '5':this.gaji=750000;
     break;
  }
 }
 public void setGaji(double gaji)
 {
  this.gaji=gaji;
 }
 public String getNama()
 {
  return nama;
 }
 public String getNpm()
 {
  return npm;
 }
 public String getGolongan()
 {
  return golongan;
 }
 public double getGaji()
 {
  return gaji;
 }
}

class Manager extends Karyawan {
 private double tunjangan;
 private String bagian;
 private Staff st[];
 public void setTunjangan(double tunjangan)
 {
  this.tunjangan=tunjangan;
 }
 public double getTunjangan()
 {
  return tunjangan;
 }
 public void setBagian(String bagian)
 {
  this.bagian=bagian;
 }
 public String getBagian()
 {
  return bagian;
 }
 pu
  this.st=st;
 }
blic void setStaff(Staff st[])
 {
 public void viewStaff()
 {
  int i;
  System.out.println("--------------------");
  for(i=0;i<st.length;i++)
  {
   st[i].lihatInfo();
  }
  System.out.println("--------------------");
 }
 public void lihatInfo()
 {
  System.out.println("MANAGER :"+this.getBagian());
  System.out.println("NPM :"+this.getNpm());
  System.out.println("NAMA :"+this.getNama());
  System.out.println("GOLONGAN :"+this.getGolongan());
  System.out.printf("TUNJANGAN :%.0f\n",this.getTunjangan());
  System.out.printf("GAJI :%.0f\n",this.getGaji());
  System.out.println("BAGIAN :"+this.getBagian());
  this.viewStaff();
 }
 public double getGaji()
 {
  return super.getGaji()+tunjangan;
 }
}
class Staff extends Karyawan {
 private int lembur;
 private double gajiLembur;

 public void setLembur(int lembur)
 {
  this.lembur=lembur;
 }
 public int getLembur()
 {
  return lembur;
 }
 public void setGajiLembur(double gajiLembur)
 {
  this.gajiLembur=gajiLembur;
 }
 public double getGajiLembur()
 {
  return gajiLembur;
 }
 public double getGaji(int lembur,double gajiLembur)
 {
  return super.getGaji()+lembur*gajiLembur;
 }
 public double getGaji()
 {
  return super.getGaji()+lembur*gajiLembur;
 }
 public void lihatInfo()
 {
  System.out.println("NPM :"+this.getNpm());
  System.out.println("NAMA :"+this.getNama());
  System.out.println("GOLONGAN :"+this.getGolongan());
  System.out.println("JUMLAH LEMBUR :"+this.getLembur());
  System.out.printf("GAJI LEMBUR :%.0f\n", this.getGajiLembur());
  System.out.printf("GAJI :%.0f\n",this.getGaji());
 }
}
class Utama {
 public static void main(String[] args)
 {
  System.out.println("PROGRAM TESTING CLASS MANAGER & STAFF\n");
  Manager man[]=new Manager[2];
  Staff staff1[]=new Staff[2];
  Staff staff2[]=new Staff[3];

  //pembuatan manager
  man[0]=new Manager();
  //NINA LATIFAH
  man[0].setNama("Nina Latifah");
  man[0].setNpm("54410997");
  man[0].setGolongan("1");
  man[0].setTunjangan(5000000);
  man[0].setBagian("GM KEUANGAN");

  man[1]=new Manager();
  //RIKY SYAPUTRA
  man[1].setNama("Riky Syaputra");
  man[1].setNpm("55410964");
  man[1].setGolongan("1");
  man[1].setTunjangan(2500000);
  man[1].setBagian("GM MARKETING");

  // staff NINA
  staff1[0]=new Staff();
  staff1[0].setNama("Dora");
  staff1[0].setNpm("55343534");
  staff1[0].setGolongan("2");
  staff1[0].setLembur(10);
  staff1[0].setGajiLembur(10000);

  staff1[1]=new Staff();
  staff1[1].setNama("TELETUBIES");
  staff1[1].setNpm("0005");
  staff1[1].setGolongan("2");
  staff1[1].setLembur(10);
  staff1[1].setGajiLembur(55000);
  man[0].setStaff(staff1);

  //staff RIKY
  staff2[0]=new Staff();
  staff2[0].setNama("SAILORMOON");
  staff2[0].setNpm("55343534");
  staff2[0].setGolongan("3");
  staff2[0].setLembur(15);
  staff2[0].setGajiLembur(5500);
  staff2[1]=new Staff();
  staff2[1].setNama("DORAEMON");
  staff2[1].setNpm("66252625");
  staff2[1].setGolongan("4");
  staff2[1].setLembur(5);
  staff2[1].setGajiLembur(100000);
  staff2[2]=new Staff();
  staff2[2].setNama("SHAUNTHESHEEP");
  staff2[2].setNpm("55363537");
  staff2[2].setGolongan("3");
  staff2[2].setLembur(6);
  staff2[2].setGajiLembur(20000);
  man[1].setStaff(staff2);

  //cetak informasi dari manager + staffnya
  man[0].lihatInfo();
  man[1].lihatInfo();
  }
}



OUTPUTnya adalah :



 Sumber

Nama : Nina Latifah
Kelas : 2ia13
NPM : 54410997

Jumat, 13 April 2012

Tugas PBO

 ·         Berorientasi Objek & Enkapsulasi


    Ø  Apa yang di maksud dengan enkapsulasi?

Enkapsulasi (pengkapsulan), Pengkapsulan memiliki arti mengelompokkan program dalam satu unit sehingga program mudah untuk digunakan.
Tujuan digunakannya enkapsulasi yaitu untuk melindungi program dari pengaksesan variabel kritis atau perubahan oleh programmer selama tahap pembangunan program.
Enkapsulasi memiliki manfaat sebagai berikut:
> Modularitas
Source code dari sebuah class dapat dikelola secara independen dari source code class   yang lain. Perubahan internal pada sebuah class tidak akan berpengaruh bagi class yang menggunakannya.
> Information Hiding
Penyembunyian informasi yang tidak perlu diketahui objek lain.


Ø  Contoh Program Sederhana Yang Mengimplementasikan kKonsep, Berorientasi Objek & Enkapsulasi :
public class Mahasiswa {
 private String nama;
private String npm;
 public Mahasiswa(String n, String npm) {
this.nama = n;
this.npm = npm;
}
 public String tampilkanNama() {
return nama;
}
 public String tampilkanNpm() {
return npm;
}
 public void tugas() {
System.out.println("Tugas PBO");
}
 public void blabla() {
System.out.println("Paling lambat tanggal :");
}
 public void tanggal() {
System.out.println("13/04/2012");
}
}

 Ø  Sekarang kita membuat class main-nya :

public class main {
 public static void main(String[] args) {
Mahasiswa nina = new Mahasiswa("Nina", "54410997");
System.out.println("Nama \t : " + nina.tampilkanNama());
System.out.println("NIM \t : " + nina.tampilkanNpm());
nina.tugas();
nina.blabla();
nina.tanggal();
System.out.println();
 Mahasiswa riky = new Mahasiswa("Riky", "55410964");
System.out.println("Nama \t : " + riky.tampilkanNama());
System.out.println("NIM \t : " + riky.tampilkanNpm());
riky.tugas();
riky.blabla();
riky.tanggal();
System.out.println();
 Mahasiswa sapakek = new Mahasiswa("Sapakek", "000000002");
System.out.println("Nama \t : " + sapakek.tampilkanNama());
System.out.println("NIM \t : " + sapakek.tampilkanNpm());
sapakek.tugas();
sapakek.blabla();
sapakek.tanggal();
System.out.println();
}
}
Outputnya :
 
Selesai.

Nama : Nina Latifah
Npm : 54410997
Kelas : 2 IA 13

Rabu, 04 April 2012

Tugas 6 April 2012


PEMROGRAMAN TERSTRUKTUR DAN BERBASIS OBJEK

Pemrograman terstruktur  adalah sebuah program yang menjelaskan tiap langkah secara berurut untuk membantu menyelesaikan masalah para user. Sedangkan Pemrograman berbasis objek (OOP) adalah pemrograman yang berbasis objek dengan data dan fungsinya terdapat didalam sebuah objek.

Bahasa pemrograman yang menggunakan pemrograman terstruktur :
 v  Cobol
 v  C
 v  Pascal
 v  Delphi
 v  Borland Delphi

Bahasa pemrograman yang menggunakan pemrograman yang berorientasi objek :
 v  Eiffel
 v  Delphi
 v  Perl
 v  C#
 v  Phyton
 v  Ruby
 v  Smarttalk
 v  Visual Basic.NET
 v  C++
 v  Pascal
 v  Java
 v  Visual Foxpro
 v  Adebe Flash AS 3.0



1.    Jelaskan perbedaan pemrograman terstruktur dan berorientasi objek !
JAWAB :
Pemrograman terstruktur dan berorientasi objek mempunyai perbedaan dari bentuk sifatnya. Jika pemrograman terstruktur :
1.      Biaya perawatan dan pengujian lebih rendah
2.      Tidak menggunakan perintah GOTO
3.      Mempunyai dokumentasi yang baik
4.      Logika yang mudah dipahami
5.      Mempunyai algo yang efisien, efektif dan mudah dipahami pula
6.      Tekhnik pemecahan msalahnya sistematis dan logis.

Sedangkan pemrograman berorientasi objek :
1.      Inheritance (pewarisan)
2.      Encapsulation (pembungkusan)
3.      Polymorphism (perberdaan bentuk)
4.      Maintenance (pengontrol kerumitan)
5.      Pengubahan program
6.      Dapat menggunakan objek yang sudah ada ataupun kita buat sendiri.



Nama    : Nina Latifah
Kelas      : 2ia13
NPM      : 54410997