Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
Diterbitkan olehSofyan Chaniago Telah diubah "10 tahun yang lalu
1
Konsep Pemrograman Berorientasi Objek, Modular dan Terstruktur
2
Konsep Object-Oriented
Ide dasarnya adalah menggabungkan data dan fungsi menjadi satu kesatuan unit yang dikenal sebagai object.
3
Yang harus diperhatikan :
Object Class Attribute Method Inheritance Encapsulation/data hiding Polymorphism
4
Object (Obyek) Di dunia nyata, tiap obyek memiliki ciri dan tingkah laku (behavior). Misalnya : Obyek-obyek mahasiswa, ciri bisa dilihat dari warna kulit, suara, jenis kelamin. Tingkah laku : berlari, menulis, makan.
5
Object (Obyek) Di programming, ciri dari tiap obyek diimplementasikan menjadi “attribute” (atau variabel) Tingkah laku diimplementasikan menjadi “method” (atau fungsi)
6
Contoh : Pada Balok: Objek : balok Data : panjang, lebar dan tinggi Fungsi : menghitung volume dan menghitung luas permukaan balok itu Untuk menghitung volume dan luas permukaan beberapa Balok, maka harus ada beberapa objek Persegi Panjang. Tiap Objek memiliki Data dan fungsi sendiri-sendiri
7
Class (Kelas) Di dunia nyata, kita sering melihat banyak obyek dengan model yang sama. Obyek-obyek tersebut bisa memiliki perbedaan atau tidak. Misalnya : Mobil, mahasiswa Class adalah blueprint dalam membentuk obyek Obyek-obyek yang sama adalah merupakan anggota dari suatu kelas.
8
Contoh Class Mahasiswa NIM : Nama: Menulis, Kuliah, Makan, Buku
No. Buku: Judul: Dibaca, Disampul Nama class atribut Metoda/ method
9
Contoh Obyek Mahasiswa NIM : Nama : Darto Menulis, Kuliah, Makan, Buku No.Buku : B001 Judul : PBO Dibaca, disampul
10
Contoh hubungan Antara Kelas dan Obyek
Person Budi Lusi Sri Object = an instance of
11
Atribut dan Metode Atribut adalah data atau field yang menentukan ciri dari suatu class / obyek. Bisa disebut juga data anggota. Metode adalah fungsi yang dilakukan oleh class atau yang dikenakan terhadap class. Bisa disebut juga sebagai fungsi anggota (member function).
12
Inheritance (Pewarisan)
Sifat dari suatu kelas diturunkan kepada kelas yang lain. Superclass : class yang diturunkan ke kelas lain. Subclass : class yang diturunkan dari kelas lain. Contoh : class “tabung” diturunkan dari kelas “lingkaran”
13
Contoh inheritance Bidang Lingkaran Segi empat Tabung Kubus superclass
subclass
14
Encapsulation Data hiding
Cara kerja dari suatu metode (fungsi) dalam mengakses data (atribut) bersifat tertutup. Bersifat seperti “black box”
15
Polymorphism Metode (fungsi) yang dapat melakukan tugas lebih dari satu jenis. Dikarenakan karena terdapat beberapa metode dengan nama yang sama namun parameternya berbeda-beda.
16
Pemrograman Terstruktur
Adalah suatu proses untuk mengimplementasikan urutan langkah untuk menyelesaikan suatu masalah dalam bentuk program Adalah teknik pemrograman secara berurut dan terstruktur dalam: analisa, cara dan penulisan program Prinsip dari pemrograman terstruktur adalah bahwa apabila kita sudah sampai pada langkah tertentu, kita tidak boleh mengeksekusi langkah sebelumnya. Hal ini dikecualikan pada langkah-langkah untuk proses berulang.
17
Tujuan PT Untuk meningkatkan kualitas dan kehandalan program
Untuk memudahkan pemahaman terhadap isi program Untuk menyederhanakan program Untuk maintenance (pemeliharaan) program Untuk meningkatkan produktifitas program
18
Sifat / Ciri PT Gunakan rancangan pendekatan dari atas ke bawah (top down design) -> program dimulai dengan gambaran global yang dinyatakan dengan nama prosedur/sub-rutin dan bukan isi detailnya Bagi program ke dalam modul-modul logika yang sejenis, Gunakan sub-program untuk proses-proses sejenis yang sering digunakan. Gunakan pengkodean terstruktur: IF ... THEN, DO ... WHILE dan lain-lainnya. Menghindari penggunaan perintah GO TO bila tidak diperlukan
19
Contoh PT COBOL(Common Busines Oriented Language).
FORTRAN(FORmula TRANslator) BASIC(Beginner All Purpose Symbolic Interchange Code). Pascal(Dinamakan untuk menghormati Blaise Pascal) Ada (Dinamakan untuk menghormati Ada Lovelace) C
20
Bentuk / Struktur Dasar PT
Sequence Structure: dieksekusi berdasarkan urutannya. Selection Structure: terdapat sejumlah perintah yang dikerjakan tergantung dari kondisi yang dipenuhinya. Loop/Iteration Structure: menggambarkan perulangan dari satu atau lebih instruksi.
21
Sequence Structure
22
Selection Structure
23
Loop / Iteration Structure
24
Ex. PT COBOL(Common Busines Oriented Language).
FORTRAN(FORmula TRANslator) BASIC(Beginner All Purpose Symbolic Interchange Code). Pascal(Dinamakan untuk menghormati Blaise Pascal) Ada (Dinamakan untuk menghormati Ada Lovelace) C
25
Review PT dengan C Susunan C: Diawali dengan header library
#include<stdio.h> Diikuti body Variable Global Function / Procedure / Method Harus ada function main() sebagai titik masuk program int main() { statements; return 0; }
26
Variable Deklarasi variable:
<data type> <variable_name>(, <variable_name_2 dst>); int height; int height, width;
27
Tipe Data Dasar Tipe Data Ukuran Jangkauan Format Keterangan char
1 byte - 128 s/d 127 %c Karakter int 2 byte s/d 32767 %i atau %d Integer / bilangan bulat float 4 byte - 3.4E-38 s/d 3.4E+38 (7 digit) %f Float / bilangan pecah double 8 byte - 1.7E-308 s/d (15 digit) %lf Double / bilangan pecahan presisi ganda
28
Modifier short long signed unsigned
29
Struct Digunakan untuk mendeklarasikan tipe data baru yang berisikan kumpulan sejumlah variable.
30
Array & Pointer Array: kumpulan data sejenis
char j[20]; char j[] = {‘a’, ‘b’}; Pointer: variable yang berisi alamat memori Bentuk umum: <tipe data> *<nama var>; int v = 5; int *p = &v; printf("the value of p is %p\n", p); printf("the value at that address is %d\n", *p);
31
Flow Control Selection / Branching Iteration / Looping
If Else ? : Operator Switch Case Iteration / Looping While For Break & Continue
32
If Else if (expression) statement; or
if (expression) { Block of statements; } or if (expression) { Block of statements; } else { Block of statements; } or if (expression) { Block of statements; } else if(expression) { Block of statements; } else { Block of statements; }
33
If Else Sample
34
? : Operator condition ? X : Y;
35
Switch Case switch( expression ) { case constant-expression1: statements1; break; [case constant-expression2: statements2; break;] [case constant-expression3: statements3; break;] [default : statements4; break;] }
36
Switch Case Sample
37
While while ( expression ) { Single statement; or Block of statements; } do { Single statement; or Block of statements; } while (expression);
38
While Sample
39
For for(expression1; expression2; expression3) { Single statement; or Block of statements; } expression1 - Initializes variables. expression2 - Conditional expression, as long as this condition is true, loop will keep executing. expression3 - expression3 is the modifier which may be simple increment of a variable.
40
For Example
41
Break & Continue break -- exit form loop or switch.
continue -- skip 1 iteration of loop.
42
Function / Procedure / Method
Adalah sebuah module / blok code program yang berurusan dengan sebuah tugas tertentu. Functions punya 2 tujuan: They allow a programmer to say: `this piece of code does a specific job which stands by itself and should not be mixed up with anyting else', Second they make a block of code reusable since a function can be reused in many different contexts without repeating parts of the program text. Function dapat memiliki sejumlah parameter, melakukan pemrosesan dan kemudian dapat mengembalikan sebuah nilai (bisa Y/N).
43
Function <return type> <name>(<param1, [param2, dst]>) { statements; [return value;] } return type: void data type ttn
44
Function Sample
45
Pemrograman modular
46
Tujuan Mahasiswa mampu memecah sebuah program besar menjadi sejumlah subprogram.
47
Filosofi Untuk mencapai suatu tujuan besar, maka tujuan tsb harus dibagi-bagi menjadi tujuan kecil sampai tujuan kecil itu merupakan tujuan yang dapat dicapai berdasarkan potensi yang dimiliki saat itu (Al Khuwarizmi)
48
Definisi Pemrograman modular adalah teknik pemecahan sebuah program besar menjadi sejumlah subprogram. Sebuah program yang besar sebaiknya dipecah menjadi beberapa subprogram dimana setiap subprogram melakukan komputasi yang spesifik.
49
Keuntungan Pemrograman Modular
Modularisasi program memberikan dua keuntungan: Pertama, untuk aktivitas yang harus dilakukan lebih dari satu kali, modularisasi menghindari penulisan teks program yang sama. Keuntungan kedua adalah kemudahan dalam menulis dan menemukan kesalahan (debug) program.
50
Contoh #include <stdio.h> void main() { int A, B, C, D, temp; printf("Masukkan nilai A B C D: "); scanf("%d %d %d %d",&A, &B, &C, &D); temp = A; A = B; B = temp; if (C > D) temp = C; C = D; D = temp; } printf("Nilai A B C D setelah pertukaran adalah: %d %d %d %d\n", A, B, C, D);
51
Contoh Program Modular
#include <stdio.h> void Tukar(int *A, int *B); void main() { int A, B, C, D; printf("Masukkan nilai A B C D: "); scanf("%d %d %d %d",&A, &B, &C, &D); Tukar(&A,&B); if (C > D) Tukar(&C,&D); printf("Nilai A B C D setelah pertukaran adalah: %d %d %d %d", A, B, C, D); } void Tukar(int *A, int *B) int temp; temp = *A; *A = *B; *B = temp;
52
Teknik Pemrograman Modular
Ada 2 teknik pemrograman modular: Prosedur Fungsi Struktur kedua teknik ini pada sasarnya sama dengan struktur program biasa, yakni ada bagian judul (header) yang berisi nama modul, bagian deklarasi dan bagian algoritma yang berisi instruksi yang akan dilaksanakan.
53
Pendefinisian Subprogram
Penamaan subprogram sama dengan peubah, sebaiknya diawali dengan kata kerja karena subprogram berisi suatu aktivitas. Subprogram dideklarasikan sebagai prototype judul sebelum program utama (main) Parameter adalah nama-nama peubah yang dapat disertakan pada bagian judul, tapi tidak harus ada parameter Nama-nama peubah yang dideklarasikan di dalam subprogram hanya dikenal di dalam subprogram tsb, disebut peubah lokal
54
Pemanggilan Subprogram
Instruksi di dalam sebuah subprogram baru dapat dilaksanakan jika subprogram tsb dipanggil. Parameter yang disertakan pada waktu pemanggilan subprogram disebut parameter aktual. Sedangkan parameter yang disertakan di dalam bagian judul disebut parameter formal. Ketika subprogram dipanggil, kendali program berpindah secara otomatis ke subprogram tsb. Setelah semua instruksi di dalam subprogram dilaksanakan, kendali program berpindah secara otomatis kembali ke instruksi sesudah pemanggilan subprogram.
55
Parameter Aturan yang harus diperhatikan dalam parameter:
Jumlah parameter aktual pada pemanggilan subprogram harus sama dengan jumlah parameter formal pada judul subprogram dan deklarasi prototype judul. Tiap parameter aktual harus bertipe sama dengan parameter formal yang bersesuaian. Tiap parameter aktual harus diekspresikan dengan cara yang taat-asas dengan parameter yang bersesuaian.
56
Program Pertukaran #include <stdio.h> void main() { int A, B, temp; /* Membaca nilai A dan B */ printf("A = "); scanf("%d", &A); printf("B = "); scanf("%d", &B); /* Menukar nilai A dan B */ temp = A; A = B; B = temp; /* Mencetak nilai A dan B */ printf("A = %d \n", A); printf("B = %d \n", B); }
57
Memecah Program Pertukaran
Program pertukaran dapat dipecah menjadi tiga buah subprogram: membaca data A dan B melakukan pertukaran nilai A dan B mencetak nilai A dan B setelah pertukaran
58
Program Pertukaran Modular
#include <stdio.h> void Baca(int *A, int *B); void Tukar(int *A, int *B); void Tulis(int A, int B); void main() { int A, B; Baca(&A,&B); Tukar(&A,&B); Tulis(A,B); }
59
void Baca(int. A, int. B) { printf("A = "); scanf("%d", &
void Baca(int *A, int *B) { printf("A = "); scanf("%d", &*A); printf("B = "); scanf("%d", &*B); } void Tukar(int *A, int *B) int temp; temp = *A; *A = *B; *B = temp; void Tulis(int A, int B) printf("A = %d \n", A); printf("B = %d \n", B);
60
Program Pertukaran Modular
#include <stdio.h> void Baca(int *A, int *B) { printf("A = "); scanf("%d", &*A); printf("B = "); scanf("%d", &*B); } void Tukar(int *A, int *B) int temp; temp = *A; *A = *B; *B = temp; void Tulis(int A, int B) printf("A = %d \n", A); printf("B = %d \n", B);
61
void main() { int A, B; Baca(&A,&B); /. Membaca nilai A dan B
void main() { int A, B; Baca(&A,&B); /* Membaca nilai A dan B */ Tukar(&A,&B); /* Menukar nilai A dan B */ Tulis(A,B); /* Mencetak nilai A dan B */ }
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.