Paradigma Pemrograman
Irfan Wahyudin, S. Si, M.Kom
Review Minggu Lalu...
Kita belajar tentang...
● Object
● Property
● Method
● Abstraksi
Kenapa Membutuhkan Paradigma?
● Moore’s Law:
“The number of transistors in a dense integrated circuit
doubles approximately every years”
● Pemrograman → Complexity Cost (Ukuran performa dari
sebuah algoritma untuk menyelesaikan beragam masalah)
Performance
Waktu
Algoritma Processor
Top-Down/Bottom-Up Programming
● Teknik pemrograman paling tua
● Belum ada penggunaan blok pemrograman
modern seperti “for-next”,”do-while”
● Masih mengandalkan “go-to”
● Bisa berakhir dengan “Spaghetti code”
goto statements lead to spaghetti code
10 i = 0
20 i = i + 1
30 PRINT i; " squared = "; i * i
40 IF i >= 10 THEN GOTO 60
50 GOTO 20
60 PRINT "Program Completed."
70 END
Structured Programming
(Pemrograman Terstruktur)
● Teknik pemrograman yang mengedepankan
penggunaan instruksi-instruksi (subroutine),
block structures (if-else), dan perulangan (loop)
● Dipopulerkan untuk mengatasi kekurangan
terhadap penggunaan goto statement oleh
Disjktraa
Perlunya Pemrograman Terstruktur
● Kita perlu pemrograman yang lebih terstruktur
untuk menghindari spaghetti code
● Bandingkan dengan…
10 FOR i = 1 TO 10
20 PRINT i; " squared = "; i * i
30 NEXT i
40 PRINT "Program Completed."
50 END
Kelebihan Pemrograman Terstruktur
● Lebih rapih,sederhana, dan efektif
● Struktur pemrograman lebih mudah dipahami
● Pengujian lebih mudah
● Proses dokumentasi lebih mudah
● Biaya perawatan rendah
Pemrograman Terstruktur di Java
Package
Class
Main Subroutine
Komponen Utama Pemrograman Terstruktur
● Variabel
● Subroutine (Instruksi)
● Block Statement (If-else)
● Loop Statement (loop, do-while)
Procedural Programming
● Sebuah paradigma pemrograman, yang
merupakan pengembangan dari structured
programming, yang mengedepankan
pembagian instruksi-instruksi utama ke dalam
beberapa prosedur.
Procedural Programming
Main Program
Function 1 Function 2
Function 3 Function 4 Function 5
Demo struktural programming &
procedural programming
menggunakan Java
Object Oriented Programming
● Teknik pemrograman didasari oleh konsep
abstraksi dari objek yang diobservasi di dunia
nyata, menghasilkan struktur perangkat lunak
yang terdiri dari atribut dari ciri/sifat objek, dan
metode yang didasari dari operasi-operasi
yang dimungkinkan untuk memanipulasi nilai
atribut
Prinsip dari OOP
● Encapsulation
● Inheritance
● Polymorphism

P 2 programming_paradigm

  • 1.
  • 2.
    Review Minggu Lalu... Kitabelajar tentang... ● Object ● Property ● Method ● Abstraksi
  • 3.
    Kenapa Membutuhkan Paradigma? ●Moore’s Law: “The number of transistors in a dense integrated circuit doubles approximately every years” ● Pemrograman → Complexity Cost (Ukuran performa dari sebuah algoritma untuk menyelesaikan beragam masalah) Performance Waktu Algoritma Processor
  • 4.
    Top-Down/Bottom-Up Programming ● Teknikpemrograman paling tua ● Belum ada penggunaan blok pemrograman modern seperti “for-next”,”do-while” ● Masih mengandalkan “go-to” ● Bisa berakhir dengan “Spaghetti code”
  • 5.
    goto statements leadto spaghetti code 10 i = 0 20 i = i + 1 30 PRINT i; " squared = "; i * i 40 IF i >= 10 THEN GOTO 60 50 GOTO 20 60 PRINT "Program Completed." 70 END
  • 6.
    Structured Programming (Pemrograman Terstruktur) ●Teknik pemrograman yang mengedepankan penggunaan instruksi-instruksi (subroutine), block structures (if-else), dan perulangan (loop) ● Dipopulerkan untuk mengatasi kekurangan terhadap penggunaan goto statement oleh Disjktraa
  • 7.
    Perlunya Pemrograman Terstruktur ●Kita perlu pemrograman yang lebih terstruktur untuk menghindari spaghetti code ● Bandingkan dengan… 10 FOR i = 1 TO 10 20 PRINT i; " squared = "; i * i 30 NEXT i 40 PRINT "Program Completed." 50 END
  • 8.
    Kelebihan Pemrograman Terstruktur ●Lebih rapih,sederhana, dan efektif ● Struktur pemrograman lebih mudah dipahami ● Pengujian lebih mudah ● Proses dokumentasi lebih mudah ● Biaya perawatan rendah
  • 9.
    Pemrograman Terstruktur diJava Package Class Main Subroutine
  • 10.
    Komponen Utama PemrogramanTerstruktur ● Variabel ● Subroutine (Instruksi) ● Block Statement (If-else) ● Loop Statement (loop, do-while)
  • 11.
    Procedural Programming ● Sebuahparadigma pemrograman, yang merupakan pengembangan dari structured programming, yang mengedepankan pembagian instruksi-instruksi utama ke dalam beberapa prosedur.
  • 12.
    Procedural Programming Main Program Function1 Function 2 Function 3 Function 4 Function 5
  • 13.
    Demo struktural programming& procedural programming menggunakan Java
  • 14.
    Object Oriented Programming ●Teknik pemrograman didasari oleh konsep abstraksi dari objek yang diobservasi di dunia nyata, menghasilkan struktur perangkat lunak yang terdiri dari atribut dari ciri/sifat objek, dan metode yang didasari dari operasi-operasi yang dimungkinkan untuk memanipulasi nilai atribut
  • 15.
    Prinsip dari OOP ●Encapsulation ● Inheritance ● Polymorphism