| 
Pemrograman Terstruktur | 
| 
Memecah program dalam fungsi dan data | 
| 
Memiliki ciri Sequence (berurutan),
  Selection (pemilihan) dan Repetition (perulangan)   | 
| 
Struktur program rumit karena berupa
  urutan proses dan fungsi-fungsi  | 
| 
Re-use kode program kurang | 
| 
Efektif digunakan untuk menyelesaikan
  masalah kecil dan tidak cocok untuk menyelesaikkan masalah yang rumit, karena
  nantinya akan kesulitan menemukan solusi permasalahan ketika terjadi error | 
| 
Mudah diawal, namun kompleks diproses
  selanjutnya | 
| 
Eksekusi lebih lambat karena setiap
  perintah dikerjakan berurutan | 
| 
Pemrograman Berorientasi Objek | 
| 
Menggabungkan fungsi dan
  data dalam kelas – kelas atau objek - objek | 
| 
Memiliki ciri Encapsulation
  (pengemasan), Inheritance (penurunan sifat) dan Polymorphism (perbedaan
  bentuk dan perilaku) | 
| 
Struktur program ringkas, cukup dengan
  membuat Objek dan class lalu bekerja berdasarkan object dan class tersebut. | 
| 
Kode program sangat
  re-usable. object dan class dapat digunakan berkali-kali, sehingga dapat
  menghemat space memori. | 
| 
Efektif digunakan untuk menyelesaikan
  masalah besar, karena OOP terdiri dari class-class yang memisahkan setiap
  kode program menjadi kelompok - kelompok kecil, sesuai dengan fungsinya | 
| 
Sulit diawal (karena harus membuat
  class) namun selanjutnya akan terasa mudah dan cepat | 
| 
Eksekusi lebih cepat karena dieksekusi
  bersamaan, program hanya mengatur Objek, properties dan method-nya saja | 
Contoh Kode program:
     a.    Pemrograman terstruktur
#include <stdio.h>
int main ()
{
    int HH1,
MM1, SS1, HH2, MM2, SS2;
   
scanf("%d:%d:%d", &HH1, &MM1, &SS1);
   
scanf("%d:%d:%d", &HH2, &MM2, &SS2);
    HH1 = HH1 +
HH2;
    MM1 = MM1 +
MM2;
    SS1 = SS1 +
SS2;
    if (HH1 >
24) HH1 -= 24;
    if (MM1 >
60) {
        HH1++;
        MM1 -=
60;
    }
    if (SS1 >
60){
        MM1++;
        SS1 -=
60;
    }
    if (HH1 <
10) printf("0%d:", HH1);
    else
printf("%d:", HH1);
    if (MM1 <
10) printf("0%d:", MM1);
    else
printf("%d:", MM1);
    if (SS1 <
10) printf("0%d\n", SS1);
    else
printf("%d\n", SS1);
    return 0;
}
b.   Pemrograman berbasis objek
class Karyawan:
jumlah_karyawan = 0
def __init__(self, nama, gaji):
self.nama = nama
self.gaji = gaji
Karyawan.jumlah_karyawan += 1
def tampilkan_jumlah(self):
print("Total karyawan:", Karyawan.jumlah_karyawan)
def tampilkan_profil(self):
print("Nama :", self.nama)
print("Gaji :", self.gaji) print()
# Membuat objek pertama dari kelas Karyawan
karyawan1 = Karyawan("Sarah", 1000000)
# Membuat objek kedua dari kelas Karyawan
karyawan2 = Karyawan("Budi", 2000000)
karyawan1.tampilkan_profil()
karyawan2.tampilkan_profil()
print("Total karyawan :",
Karyawan.jumlah_karyawan)
 
Tidak ada komentar:
Posting Komentar