Dokumen tersebut membahas tiga paradigma pemrograman yaitu imperative, deklaratif, dan berorientasi objek. Pada paradigma imperative, program merupakan runtutan instruksi yang dijalankan secara berurutan. Paradigma deklaratif terbagi menjadi dua subparadigma yaitu fungsional dan logika. Paradigma berorientasi objek mewakili program sebagai kumpulan objek yang saling berinteraksi. Dokumen ini juga membahas langkah-langkah pengembangan program terstru
2. 3 Paradigma Pemrograman
Imperative / Algorithmic Paradigm
• Program merupakan sebuah runtutan
instruksi/perintah
• Komputer melakukan sederetan langkah-langkah
dimana setiap langkah terjadi
perubahan isi dan status sebagian memori
• Bahasa pemrograman : machine code,
assembly, FORTRAN, COBOL, ALGOL,
Pascal, Basic, C, C++, Java,etc
3. Declarative Paradigm
• Program berisi deklarasi/pernyataan fungsi
dan/atau fakta
• Terbagi menjadi 2 subparadigma :
functional/applicative dan logic
programming
• Bahasa subparadigma aplikatif : Haskell,
LISP, Miranda, Logo, dan APL
• Bahasa subparadigma logika : PROLOG
4. Object-Oriented Paradigm
• Setiap objek yang ada dalam
program merupakan sebuah
entitas yang merepresentasikan
status dan arti
• Bahasa pemrograman : Smalltalk,
Simula, C++, Oberon, dan Java
5. Pada tahun 1960-1970 terjadi software crisis
yang disebabkan pemecahan masalah yang
semakin rumit sehingga :
Penjadwalan dan estimasi biaya sering tidak
akurat
Produktivitas program rendah
Kualitas perangkat lunak yang tidak baik
6. Untuk mengatasi krisis tersebut dikembangkan 2
metoda, yaitu :
Portability meminimalisasi machine dependency
Peningkatan program correctness
Structured Programming
Menghasilkan program yang readability dan mantainability
Hanya menggunakan sequences, conditions, dan repetitions, tanpa
perintah jump atau goto
Modular Programming
Mencacah program menjadi modul-modul yang bertingkat sesuai
hirarki
Information Hiding
Melengkapi modular programming
Modul di desain agar informasi yang ada pada suatu modul tidak
tampak oleh modul yang lain
7. Pada 1980-an dikembangkan teknik object
orientation dan functional programming
Dua dekade selanjutnya dikembangkan 3 teknik
baru, yaitu:
Parallel programming algoritma didekomposisi
menjadi banyak task yang kemudian dikerjaan oleh
banyak prosesor secara simultan
Genetic programming untuk memproses hasil
proses parse tree, contoh : LISP
Bio-computing penggunaan komputer dalam riset
biologi
8.
9. Langkah-Langkah Pengembangan
Program Terstruktur
1. Pendefinisian masalah hingga rinci dan dipahami
agar pemecahaannya benar
2. Deskripsi metoda formal, mencari rumus-rumus bila
ada dan bila diperlukan
3. Penyusunan algoritma/flowchart
4. Penulisan instruksi/coding menggunakan bahasa
pemrograman yang sesuai
5. Uji coba dengan sebagian data dan perbaikan
kesalahan (debuging)
6. Menjalankan keseluruhan program untuk
memproses seluruh data
7. Mendokumentasikan seluruh aktifitas (poin 1-6)
10. Contoh
Perusahaan Sinar Cahaya Terang Benderang
ingin membuat suatu program untuk
menampilkan gambar deretan bintang-bintang
sesuai dengan nilai input seperti gambar di
bawah ini :
12. Mendeskripsikan masalah
Menampilkan gambar bintang-bintang
Misal input : 5, maka hasilnya :
i/j 0 1 2 3 4
0 *
1 * *
2 * * *
3 * * * *
4 * * * * *
Pada saat nilai (i,j) sebesar :
(0,0)
(1,0) (1,1)
(2,0) (2,1) (2,2)
(3,0) (3,1) (3,2) (3,3)
(4,0) (4,1) (4,2) (4,3) (4,4)
Komputer akan menampilkan “ *
”
Jadi, “ * “ akan dicetak sebanyak mulai nilai i=0 sampai i<n dan
mulai nilai j=0 sampai j<=i
19. Buatlah sebuah kelompok yang terdiri dari 3-4
orang
Setiap kelompok adalah user yang ingin
membuat suatu program sederhana dengan
menggunakan bahasa pemrograman C
20. Setiap kelompok adalah pihak developer yang
akan membangun sebuah program yang
sesuai dengan permintaan user
Pihak developer wajib membuat program
dengan langkah-langkah untuk
mengembangkan program secara terstruktur
yang telah diberikan
Pihak developer memiliki waktu 2 minggu
21. Dokumentasi : Diketik di kertas
A4
Cover : Judul program dan nama kelompok
1. Deskripsi Masalah : Dijelaskan secara detail
apa permintaan user, input, dan output
2. Rumus : Jika ada
3. Algoritma program : flowchart
4. Coding : Dicantumkan sourcecode-nya,
menggunakan bahasa dan software apa
5. Uji Coba : Dijelaskan berapa kali perbaikan,
bagianmana yang diperbaiki, letak kesulitannya
dimana, screenshoot hasilnya
6. Keberhasilan program : berhasil/tidaknya
program, screenshoot hasil