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