PERTEMUAN I PENGENALAN DASAR PEMROGRAMAN I. Pengertian Program adalah kata, ekspresi, pernyataan atau kombinasinya yang disusun dan dirangkai menjadi satu kesatuan prosedur yang berupa urutan langkah untuk menyelesaikan masalah yang diimplementasikan dengan menggunakan bahasa pemrograman sehingga dapat dieksekusi oleh komputer”. Secara singkat Program dapat diartikan : pernyataan yang disusun menjadi satu kesatuan prosedur yang berupa urutan langkah yang disusun secara logis dan sistematis untuk menyelesaikan masalah. Bahasa Pemrograman adalah prosedur penulisan program. Terdapat 3 faktor penting dalam bahasa pemrograman : 1. Sintaks adalah aturan penulisan bahasa tersebut (tata bahasanya). 2. Semantik adalah arti atau maksud yang terkandung didalam statement tersebut. 3. Kebenaran logika adalah berhubungan dengan benar tidaknya urutan statement. Pemrograman adalah proses mengimplementasikan urutan langkah untuk menyelesaikan suatu masalah dengan menggunakan bahasa pemrograman. Dalam pengolahan data memerlukan beberapa aspek-aspek dasar yaitu : a. Brainware Tenaga pelaksana yang menjalankan serta mengawasi pengoperasian sistem unit komputer didalam proses pengolahan data untuk menghasilkan suatu informasi yang tepat waktu, tepat guna dan akurat. Contoh : Sistem Analis, Programmer, operator, Technical Support, dll. b. Hardware Serangkaian unsur-unsur yang terdiri dari beberapa perangkat keras komputer yang digunakan untuk membantu proses kerja manusia ( Brainware ). Contoh : CPU, Monitor, Keyboard, Harddisk, Disk drive, dll. c. Software Serangkaian unsur-unsur yang terdiri dari beberapa perangkat lunak program komputer yang digunakan untuk membantu proses kerja manusia ( Brainware ). Contoh : Sistem Software, Application Software, Package Software, dll II. Bahasa Pemrograman Berdasarkan Perkembangan A. Machine Language Bahasa Pemrograman yang hanya dapat dimengerti oleh mesin (komputer ) yang didalamnya terdapat CPU yang hanya mengenal 2 (dua) keadaaan yang berlawanan, yaitu : - Bila tejadi kontak (ada arus) bernilai 1 - Bila kontak terputus (tidak ada arus) bernilai 0
B. Low Level Language (Bahasa tingkat rendah) Karena susahnya bahasa mesin, maka dibuatlah simbol yang mudah diingat yang disebut dengan “Mnemonics” ( Pembantu untuk mengingat ). Contohnya : A : Untuk kata Add (Menambahkan) B : Untuk kata Substract (mengurangi ) Mov : Untuk kata Move ( Memindahkan ) Bahasa Pemrograman yang menerjemahkan Mnemonics disebut Assembler. C. Middle Level Language (Bahasa tingkat menengah) Bahasa pemrograman yang menggunakan aturan-aturan gramatikal dalam penulisan pernyataan, mudah untuk dipahami dan memilik instruksi- instruksi tertentu yang dapat langsung diakses oleh komputer. Contohnya adalah bahasa C. D. High Level Language (Bahasa tingkat tinggi) Bahasa Pemrograman yang dalam penulisan pernyataannya mudah dipahami secara langsung. Bahasa pemrograman ini terbagi menjadi 2 yaitu : 1. Procedure Oriented Language a. Scientific Digunakan untuk memecahkan persoalan Matematis/perhitungan Misal : Algol, Fortran, Pascal, Basic b. Bussines Digunakan untuk memecahkan persoalan dalam bidang bisnis. Misal : Cobol, PL/1. 2. Problem Oriented Language Misal : RPG (Report Program Generator). E. Object Oriented Language (Bahasa berorientasi obyek) Bahasa pemrograman yang berorientasi pada obyek. Bahasa pemrograman ini mengandung fungsi-fungsi untuk menyelesaikan suatu permasalahan dan program tidak harus menulis secara detail semua pernyataannya, tetapi cukup memasukkan kriteria-kriteria yang dikehendaki saja. Contohnya : Visual dBase, Visual FoxPro, Delphi, Visual C , dll. III. Kerangka Dasar Pemrograman
Gambar I.1 Kerangka Dasar Pemrograman 2
Origination Tahap ini berhubungan dengan process pengumpulan data, yang biasanya merupakan proses pencatatan(recording) data ke dokumen dasar. Input Tahap ini merupakan proses pemasukkan data(entry data) kedala proses komputer melalui peralatan input(input device) Process Tahap ini merupkana proses pengolahan data dari data yang sudah dimasukkan yang berupa proses menghitung, membandingkan, menglasifikasikan, mengurutkan, mengendalikan dan mencari di storage Output Tahap ini merupakan proses untuk menghasilkan keluaran dari proses pengolahan data ke peralatan output(output device) yang berupa informasi. Distribution Tahap ini merupakan proses penyebaran inromasi kepada pihak-pihak yang berhak dan membutuhkan informasi Storage Tahap ini merupakan perekaman hasil pengolahana data ke secondary storage, yang dapat dipergunakan sebagai bahan input untuk proses selanjutnya.
3
PERTEMUAN II KONSEP DASAR PEMROGRAMAN I.
Algoritma Pemrograman Yang Baik Ciri-ciri algoritma pemrograman yang baik adalah : 1. Memiliki logika perhitungan/metode yang tepat dalam memecahkan masalah 2. Menghasilkan output yang tepat dan benar dalam waktu yang singkat 3. Ditulis dengan bahasa yang standar secara sistematis dan rapi sehingga tidak menimbulkan arti ganda. 4. Ditulis dengan format yang mudah dipahami dan diimplementasikan ke dalam bahasa pemrograman. 5. Semua operasi yang dibutuhkan terdefinisi dengan jelas. 6. Semua proses harus berakhir setelah sejumlah langkah dilakukan. Berikut ini contoh program yang mempunyai algortima yang tidak baik karena mengandung kesalahan logika. Uses crt; Var I : Integer; Begin Clrscr; I := 0; While I < 5 Do Begin Writeln (‘Bina Sarana Informatika’); I := I + I ; Readln; End; End. Berikut ini contoh program yang mempunyai algortitma yang baik karena mempunyai logika yang benar Uses crt; Var I : Integer; Begin clrscr; I := 0; While I < 5 Do Begin Writeln(‘Bina Sarana Informatika’); I := I + 1; Readln; End; End. 4
II. Standar Suatu Program Yang Baik A. Standar Pemecahan masalah Teknik untuk dapat membantu memecahkan masalah antara lain teknik Top Down dan teknik Modular. B. Standar Penyusunan Program 1. Kebenaran logika dan penulisan Program yang disusun harus memiliki logika dalam pemecahan masalah. Program yang dibuat harus memiliki ketepatan, ketelitian dan kebenaran sehingga menghasilkan program yang baik. 2. Waktu penulisan dan eksekusi program a. Contoh Logika pengujian yang tidak baik karena pengujian ulang sehingga waktu eksekusi tidak efisien IF item = nilai1 instruksi1 Endif IF item = nilai2 Instruksi2 Endif IF item = nilai3 instruksi3 Endif
yang
berulang-
b. Logika pengujian yang baik sehingga waktu lebih efisien: IF item = nilai1 instruksi1 ELSE IF item = nilai2 instruksi2 ELSE IF item = nilai3 instruksi3 ENDIF ENDIF c. Contoh kedua susunan baris program yang tidak baik n := 1; while n <=50 do Begin item (n) := A*B/C+D-E+n; n := n + 1; Readln; End; 5
d. Susunan baris program yang baik n := 1; Hasil := A*B/C+D-E+n; while n <=50 do Begin item (n) := Hasil + n n := n + 1; Readln; End; 3. Perawatan dan pengembangan program Penyusunan program harus mempunyai sifat kesederhanaan dan kejelasan dari program yang nantinya akan dikembangkan dan membantu dalam perawatan. 4. Portabilitas Bahasa pemrograman dan program yang disusun sebaiknya bias dipakai pada berbagai tipe komputer yang berbeda-beda dan berbagai jenis sistem operasi. C. Standar Perawatan Program 1. Dokumentasi 2. Penulisan Instruksi a. Berikan keterangan untuk awal statement atau instruksi yang tergabung dalam sekelompok statement. b. Awal dan akhir statement dari sekumpulan statement ditulis pada kolom yang sama. c. Gunakan sebaris atau beberapa baris kosong sebagai pemisah. d. Hindari pernyataan untuk Percabangan (IF statement ) yang sangat rumit dan Nested Loop (Loop disalam Loop lain) yang berlebihan. e. Gunakan “kurung buka dan tutup” dalam menulis suatu ekspresi Aritmatika atau logika. f. Gunakan “Spasi” dalam menulis statement atau instruksi. III. Sifat Penulisan Program a. Program Oriented Penulisan program yang struktur programnya selalu berubah, apabila kondisi data yang diproses di dalam program tersebut, bertambah volume datanya. Selain itu penulisan program ini bersifat statis dan tidak fleksibel (program animasi). b. Data Oriented Penulisan program yang struktur programnnya tidak selalu berubah, walaupun volume data yang diproses di dalam program tersebut, dalam jumlah besar. Selain itu pula penulisan program ini bersifat dinamis dan mempunyai tingkat fleksibilitas yang tinggi. 6
IV. Kualitas Bahasa Pemrograman Ekspresivitas : secara jelas menggambarkan algoritma yang dibuat oleh programmer Dapat didefinisikan dengan baik : sintaks dan semantik harus konsisten tidak bermakna ganda Tipe data dan strukturnya : berkemampuan untuk mendukung berbagai tipe data Modularitasnya : harus mempunyai fasilitas subprogramming (modul) Fasilitas masukan dan keluaran : harus mendukung berbagai model file (sequential, random, access, index, multiple index) dalam pemrosesan masukan dan keluaran Portabilitas : harus dapat dipakai pada berbagai mesin komputer yang berbeda Effisiensi : dapat dikompilasi dan dieksekusi secara cepat pada mesin komputer dimana program dapat diimplementasikan Mudah dipelajari : harus mudah dipahami dan diajarkan Bersifat umum : memiliki jangkauan luas untuk berbagai aplikasi
7
PERTEMUAN III TAHAPAN MEMBUAT PROGRAM A. Membuat Suatu Program Yang Kompleks Untuk membuat program yang besar dan kompleks, programmer membutuhkan tahapan-tahapan dibawah ini : a. Definisi Masalah Menentukan model /rancangan apa yang akan dibuat untuk penyelesaian masalah b. Analisis Kebutuhan Menentukan data untuk masukan dan keluaran yang diminta, bahasa pemrograman yang digunakan serta tipe komputer apa yang dibutuhkan c. Desain Algoritma / Membuat Rumusan Pemecahan Masalah Membuat susunan langkah-langkah/instruksi penyelesaian masalah. Hal ini dapat dilakukan dengan 2 cara : • Menggunakan Flowchart • Menggunakan bahasa semu (pseudocode) d. Bahasa Pemrograman Pembuatan program dengan menggunakan bahasa pemrograman e. Pengujian Program Dilakukan melalui 2 tahap : 1. Pengujian Tahap Debuging, Untuk mengecek kesalahan program, Baik sintaksis maupun logika. 2. Pengujian tahap profiling, Untuk menentukan waktu tempuh dan banyak nya memori program yang digunakan. Setelah program bebas dari kesalahan sehingga dapat dilakukan proses excute program f. Dokumentasi Digunakan untuk file backup g. Pemeliharaan Upaya yang dilakukan dengan Menghindari kerusakan atau hilangnya suatu program baik hardware maupun Human Error B. Membuat Suatu Program Yang Sederhana Untuk membuat suatu program yang sederhana, programmer tidak perlu menggunakan tujuh tahapan diatas, tetapi cukup beberapa tahap saja, seperti : 1. Definisi Masalah 2. Desain Algoritma 3. Bahasa Pemrograman 4. Testing and Debugging C. Karakteristik Seorang Programmer 1. Mampu menyusun algoritma dengan baik dan logis. 2. Memiliki ketekunan dan ketelitian yang tinggi. 8
3. Menguasai bahasa dan teknik penulisan program dengan baik. 4. Dapat bekerja sama dalam suatu tim. 5. Dapat bekerja secara efisien dan tepat waktu D. Menulis Program Interaktif 1. Program harus dapat melakukan validasi terhadap setiap data yang masuk. 2. Program harus dapat mengecek setiap kemungkinan-kemungkinan yang penting, yang akan muncul pada data masukan. 3. Buatlah format masukan sesederhana mungkin 4. Buatlah agar program dapat memberikan tanda bahwa data yang dikehendaki sudah terpenuhi. 5. Berikan label atau keterangan pada setiap keluaran, termasuk bentuk pesan kesalahan apabila sipemakai salah mengoperasikan program tersebut. 6. Berikan pesan, apabila program sedang melakukan suatu proses yang memerlukan suatu waktu tunggu.
9
PERTEMUAN 4 STRUKTUR SUATU BAHASA PEMROGRAMAN I. Struktur Bahasa Program Prosedural 1. Bagian Deklarasi Bagian deklarasi merupakan bagian program untuk mendefinisikan tipe data suatu variable,konstanta, serta fungsi dan prosedur yang akan digunakan pada program. Selain itu, bagian deklarasi dapat juga digunakan untuk memberi nilai awal suatu variable. 1. Deklarasi Variabel Bahasa Pascal: Var i,i2 : Integer; S : String; Bahasa C : Int i,i2; Char s [100]; 2. Deklarasi Konstanta const phi = 3.14; Penjelasan: Konstanta yaitu nilai yang tetap. Jadi jika mengacu pada contoh di atas, maka nilai phi tidak dapat diubah-ubah dan akan selalu 3.14 3. Deklarasi Tipe Data Bahasa Pascal : Type TdataSiswa = ^DataSiswa; DataSiswa= record Nama : String [30]; Alamat : String [60]; Telp : String [15]; End; Type hari = (Sen, Sel, Rab, Kam, Jum, Sab, Mig); Bahasa C : Struct DataSiswa { char Nama [30]; char Alamat [60]; char Telp [15]; }; enum hari (Sen, Sel, Rab, Kam, Jum, Sab, Mig);
10
Tipe Data dapat dikelompokkan menjadi: a. Tipe Data sederhana Tipe data sederhana merupakan tipe data yang paling kecil, yang hanya melibatkan satu item data, misalnya tipe data integer, string, real, Boolean, dan sebagainya. Kita dapat juga mendefinisikan sendiri tipe data ini. Tipe data yang didefinisikan sendiri tersebut diistilahkan enumerated data type (pada contoh adalah type hari). b.Tipe Data terstruktur Tipe data terstruktur merupakan tipe data yang terdiri dari beberapa item data. Bentuk dari tipe data ini dapat berupa array (terdiri dari item-item yang memiliki tipe data yang sama) ataupun record (terdiri dari item-item yang boleh memiliki tipe data yang berbeda). Pada contoh di atas, DataSiswa termasuk tipe data terstruktur. c. Tipe Data Pointer Tipe data pointer digunakan untuk menunjuk pada alamat memory suatu data yang lain. Jadi tipe data pointer pada dasarnya tidak menyimpan nilai data secara langsung, melainkan hanya menyimpan alamat dimana data berada. Untuk contoh pada bahasa Pascal, TDataSiswa merupakan tipe data pointer. 4. Deklarasi Procedure/Function Bahasa pascal : Bahasa Pascal: Procedure Cetak (kal: string); Function Tambah (a,b:Integer): Integer; Bahasa C : void Cetak (char *String); int Tambah (int a, int b); Perbedaan utama antara prosedur dan fungsi yaitu: prosedur adalah fungsi yang tidak mengembalikan suatu nilai. Sebaliknya fungsi adalah suatu prosedur yang mengembalikan nilai. Apabila mengacu pada contoh di atas, maka fungsi tambah akan mengembalikan suatu nilai yang bertipe integer, sedangkan prosedur Cetak tidak mengembalikan nilai apa-apa. B. Bagian Statement Pada bahasa Pascal, bagian statement selalu diawali dengan reserved word begin dan end. Apabila blok statement adalah blok utama program, maka reserved word end harus diakhiri dengan tanda titik(.), sebaliknya jika blok statement bukan blok utama program maka reserved word end diakhiri dengan tanda titik koma (;). uses crt; cont phi = 3.14; var diameter, radius, Luas : real; begin readln (diameter); radius :=diameter/2; Luas := phi * radius * radius; 11
Writeln (Luas); End. Pada bahasa C, dimulai dari deklarasi variable hingga akhir statement diawali dan diakhiri dengan tanda kurung kurawal { dan }. #include <stdio.h> Void main () { const phi = 3.14; float diameter, radius, Luas; scanf (“%f”, &diameter); radius = diameter / 2.0 Luas = phi * radius * radius; Printf (“%f”,Luas); }
12
PERTEMUAN 5 ELEMEN-ELEMEN BAHASA PEMROGRAMAN I. Elemen-Elemen Dalam Bahasa Pemrograman Berikut adalah element-element pada bahasa pemrograman: A. Aturan Leksikal Yang dimaksud aturan leksikal yaitu aturan yang digunakan dalam membentuk suatu deklarasi, definisi, maupun statement hingga menjadi satu program yang utuh. 1. Token Token yaitu element terkecil pada bahasa pemrograman yang memiliki arti penting bagi compiler. Yang termasuk token antara lain: identifier, keywords(reserved words), operator, dan sebagainya. 2. Komentar Komentar yaitu teks (kumpulan karakter) yang diabaikan oleh Compiler. Komentar sangat berguna untuk memberi catatan mengenai bagian program tertentu sebagai referensi baik bagi programmer itu sendiri maupun orang lain yang membaca kode program tersebut. Pada bahasa Pascal, teks yang berada di antara kurung kurawal pembuka {dan kurung kurawal tutup } akan dianggap sebagai komentar. Selain itu, dapat pula menggunakan tanda (* sebagai pembuka komentar, dan tanda *) sebagai penutup.
Gambar V.1 Contoh Program Pascal Komentar Pada bahasa C, teks yang berada di antara tanda /* dan tanda */ akan dianggap sebagai komentar. Dan untuk teks yang ada setelah tanda // juga akan dianggap komentar satu baris.
Gambar V.2 Contoh Program Bahasa C Komentar
13
3. Identifier Identifier merupakan kumpulan karakter yang digunakan sebagai penanda untuk nama variable, nama tipe data, fungsi, prosedur, dan sebagainya. 4. Keywords (Reserved Words) Keywords atau Reserved words merupakan kata-kata yang telah ada/didefinisikan oleh bahasa pemrograman yang bersangkutan. Kata-kata tersebut telah memiliki definisi yang sudah tetap dan tidak dapat diubah. Karena telah memiliki definisi tertentu, maka kata-kata ini tidak dapat digunakan sebagai identifier. 5. Operator Operator digunakan untuk menyatakan suatu perhitungan/operasi. Operator yang digunakan untuk operasi yang melibatkan satu operand disebut unary operator. Jika melibatkan dua operand maka disebut binary operator, dan jika melibatkan tiga operand, operator tersebut disebut ternary operator. Di dalam suatu operasi dapat terdapat banyak operator. Urutan eksekusi dari operator-operator disebut juga operator precedence. Precedence yang lebih rendah akan dieksekusi belakangan, misalnya: A = 10 + 5 * 2 Karena precedence operator * lebih tinggi daripada operator + maka nilai A adalah 20, diperoleh dari perkalian 5 dan 2, kemudian dijumlahkan dengan 10. Untuk mendahulukan eksekusi precedence yang lebih rendah dapat digunakan tanda ( dan ) sebagai contoh: A = (10 + 5) * 2 Variable A akan memiliki nilai 30, diperoleh dari penjumlahan 10 dan 5, kemudian dikalikan 2. a. Aritmatic Operator Yang termasuk di dalam operator arithmetic yaitu operator yang digunakan untuk melakukan operasi aritmatika Tabel V.1 Aritmatic Operator Operator Operasi Level Sqrt Pangkat I * Perkalian II / Pembagian II Mod Sisa Pembagian II Div Pembagian II + Penjumlahan III Pengurangan III
Operator-operator yang disebut di atas (selain sqrt) termasuk binary operator karena melibatkan dua operand. Terdapat pula operator unary, yaitu tanda – dan + yang digunakan sebagai penanda bilangan negatif atau positif. 14
b. Assigment Operator Operator pemberi nilai , dalam pascal “ :=” Operator ini digunakan untuk memberi nilai suatu identifier. C := A + B; c. Bitwise dan Logical Operator Operator ini digunakan untuk melakukan operasi bit dan logika. Yang termasuk operator Bitwise: Negasi bahasa Pascal : NOT contoh A := NOT B; bahasa C : ! contoh A = !B; And bahasa Pascal : AND contoh A := A AND B; bahasa C : && contoh A = A && B; Or bahasa Pascal : OR contoh A := B OR C; bahasa C : || contoh A = B || C; Shift Left bahasa Pascal : shl contoh A := B shl C; bahasa C : << contoh A = B << C; Shift Right bahasa Pascal : shr contoh A := B shr C; bahasa C : >> contoh A = B >> C; d. Relational Operator Operator yang digunakan untuk membandingkan hubungan antara 2 operand yang menghasilkan nilai true atau false. Operand yang dibandingkan harus memiliki tipe data yang sama, kecuali untuk bilangan bulat (bertipe integer) dan bilangan pecahan (bertipe real atau float). Tabel V.2 Tabel Relational Operator Operator Operasi = Sama dengan <> Tidak sama dengan < Lebih kecil > Lebih besar <= Lebih kecil atau atau sama dengan >= Lebih besar atau sama dengan e. Pointer Operator Operator pointer digunakan untuk melakukan operasi pada operand yang berupa pointer. Pada bahasa Pascal, digunakan tanda ^ sebagai deference pointer. Sedangkan pada bahasa C, deference pointer menggunakan tanda asterisks *.
15
B. Tipe data Pada suatu bahasa pemrograman umumnya telah menyediakan tipe-tipe data yang sederhana (simple) maupun yang terstruktur. Berikut adalah tipe data sederhana (simple) : Tabel V.3 Tipe Data Tipe Pascal Bahasa C Jangkauan Nilai Integer byte Char(unsigned 0..255 char) shortint Char(signed char) -128..127 integer int -32768..32767 word Short(unsigned 0..65535 char) longint Long 2147483648..2147483647 Real/Pecahan real float 3.4 E – 38.3..3.4 E+38 double double 1.7 E-308..1.7 E + 308 String String.char (1 karakter) Boolean Boolean Boo (tidak terdapat True,false pada bahasa C Standar) Yang dimaksud dengan tipe data terstruktur yaitu tipe data yang dapat menampung lebih dari satu nilai, sbb: 1. Array Yang dimaksud array yaitu tipe data berindeks yang terdiri dari satu atau lebih elemen/komponen yang memiliki tipe data yang sama.
Gambar V.3 Contoh Program Array 2. Record (Pascal) atau struct (Bahasa C) Tipe data ini digunakan untuk merepresentasikan kumpulan (set) elemen/komponen yang memiliki satu jenis atau lebih tipe data. Tiap element disebut juga field atau property atau attribute. 16
Gambar V.4 Contoh Program Record dan Struct C. Expression Yang dimaksud dengan expression (ekspresi) yaitu suatu pernyataan yang menghasilkan suatu nilai.Expression tersusun dari operator dan operand yang digunakan untuk menghitung atau memberi suatu nilai suatu variable atau identifier. Expression yang paling sederhana yaitu nama variable. Expression yang lebih kompleks akan melibatkan operator-operator, maupun pemanggilan function atau procedure. A hanya berupa nama variable 10 berupa suatu nilai A+3*2 expression menggunakan operator Calculate (A,B) melakukan pemanggilan function bernama Calculate D. Statement statement merupakan bagian program yang berisi perintah yang akan dieksekusi/dijalankan. Karena itu, statement-statement ini menentukan bagaimana jalannya program dan bagaimana suatu nilai variable dimanipulasi/berubah. 1. Simple Statement Yang digolongkan ke dalam simple statement (statement sederhana) yaitu statement yang tidak berisi statement lainnya a. Assignment Statement Yaitu statement yang digunakan untuk memberikan nilai ke suatu variable. Contoh :
17
Gambar V.5 Contoh Program Assignment Statement b. Statement untuk pemanggilan function atau procedure statement yang memanggil function atau procedure yang telah didefinisikan pada program.
Gambar V.6 Contoh Program Statement Pemanggilan Function c. Jump Statement Yaitu statement yang digunakan untuk melompati Yang termasuk dalam kategori statement ini yaitu: Tabel V.4 Jump Statement Fungsi Melompat ke statement tertentu Keluar dari iterative statement Melompat ke iterasi selanjutnya pada iterative statement Keluar dari function/procedure
statement-statement lain.
Bahasa Pascal goto break continue
Bahasa C goto break continue
exit
return
2. Compound Statement Compound statement (kumpulan statement) adalah sekumpulan statement yang terdiri dari statement-statement lain, termasuk juga iteration dan selection statement.
Gambar V.7 Contoh Program Compound Statement 18
3. Iteration Statement Iteration statement digunakan untuk melakukan perulangan sekumpulan statement (compound statement).
Gambar V. 8 Contoh Program Iteration Statement
19
Gambar V.9 Contoh Program Iteration Statement Lanjutan
20
PERTEMUAN 6 FLOWCHART Flowchar adalah metode untuk menggambarkan tahap-tahap pemecahan masalah dengan menggambarkan simbl-simbol tertentu yang mudah dimengerti, mudah digunakan dan standar. Dalam penulisan flowchart dikenal 2 (dua) metode yaitu : A. Sistem Flowchart Adalah diagram alir yang menggambarkan suatu sistem peralatan komputer yang digunakan dalam proses pengolahan data serta hubungan antar peralatan tersebut. Berikut contoh Sistem Flowchart :
Gambar VI.1 Contoh Sisten Flowchart B. Program Flowchart Adalah diagram alir yang menggambarkan urutan logika dari suatu prosedur pemecahan masalah. Dibawah ini adalah gambar simbol program flowchart : TERMINAL Digunakan untuk menggambarkan awal dan akhir dari kegiatan atau proses.
suatu
PROCESS Digunakan untuk menggambarkan instruksi atau proses pengolahan data. 21
DECISION Digunakan untuk menggambarkan proses pengujian suatu kondisi yang ada.
PREPARATION Digunakan sebagai nilai awal dari suatu variabel yang akan diproses juga sebagai proses loop.
FLOW LINE Digunakan untuk mengambarkan hubungan proses dari suatu proses keproses lainnya.
INPUT / OUTPUT Digunakan untuk meggambarkan proses input yang berupa pembacaan data dan sekaligus sebagai proses otput yang berupa pencetakan data.
SUBROUTINE Digunakan untuk menggambarkan proses pemanggilan sub program dari main program (recursivitas).
PAGE CONECTOR Digunakan sebagai penghubung antara suatu proses dengan peroses lainnya, akan tetapi berpindah halaman.
CONECTOR Digunakan sebagai penghubung antara suatu proses dengan proses lainnya dalam satu halaman.
22
C. Pseudocode Pseudocode berasal dari kata pseudo yang berarti mirip atau menyerupai dan code yang berarti program. Pseudocode adalah teknik tulisan untuk menggambarkan algoritma menggunakan kode yang mirip dengan kode pemrograman yang sebenarnya. Contoh pseudocode : phi 3.14 input (diameter) radius diameter / 2 luas phi * radius * radius Output (Luas) End
23
PERTEMUAN 7 REVIEW/QUIZ
PERTEMUAN 8 UTS
24
PERTEMUAN 9 ANALISA STRUKTUR PROGRAM LANJUTAN I. Struktur Program A. Struktur Berurutan (Sequence Structure) Struktur Berurutan adalah struktur program yang paling sederhana. Setiap baris program akan dikerjakan secara urut dari atas ke bawah maka hanya ada satu cara memulainya yaitu dari bagian atas, dan cara untuk keluarnya yaitu dari bagian bawah. B. Struktur Seleksi(Selection Structure) Struktur seleksi untuk melakukan proses pengujian pada kondisi dalam mengambil suatu keputusan. Kondisi adalah suatu syarat yang mempunyai nilai True dan False. Contoh bentuknya adalah sebagai berikut : ................ ................ Begin Perintah 1; If Kondisi Then Perintah 2; Else Perintah 3; ................... ................... End. Ada beberapa macam struktur instruksi IF atau Sruktur Seleksi yaitu : 1. Statement/perintah IF ... THEN ( Seleksi Tunggal ) Bentuk umumnya IF
THEN Begin ............ ............ End. Contoh : IF N>=60 Then Ket:=‘Lulus’;
2. Statement/Perintah IF ... THEN ... ELSE Bentuk Umumnya IF THEN Begin ............ 25
............ End; Else Begin ............ ............ End. Contoh : IF (N>=84) and (N<100) Then Mutu:=‘Amat Baik’ Else IF N>74 Then Mutu:=‘Baik’ Else IF N>60 Then Mutu:=‘Cukup’ Else Mutu:=‘Kurang’; 3. Statement/Perintah IF ... THEN ... ELSE IF Bentuk umumnya : IF Then Begin .......... .......... End Else If Then Begin .............. .............. End; Contoh: Uses CRT; Var Nilai : Byte; Ket : String[5]; Mutu : String[10]; BEGIN CLRSCR; Write(‘Nilai Ujian : ‘); ReadLn(Nilai); IF Nilai >=50 Then Ket := ‘Lulus’ Else Ket := ‘Gagal’; WriteLn(‘Keteragan : ‘,Ket); IF (Nilai>=0) and (Nilai<=59) Then Mutu :=’Kurang’ Else IF (Nilai>=60) and (Nilai<=74) Then Mutu := ‘Cukup’ Else IF (Nilai>=75) and (Nilai<=83) Then Mutu := ‘Baik’ Else Mutu := ‘Amat Baik’; WriteLn(‘Mutunya : ‘,Mutu); ReadLn; END.
26
Selain menggunakan instruksi IF, Struktur Seleksi juga dapat menggunakan instruksi CASE ... OF (Seleksi Ganda). Untuk masalah tertentu instruksi Case...Of lebih memberi kejelasan dibandingkan dengan instruksi IF. Bentuk umum dari CASE ..OF Case ungkapan Of Daftar label 1 : perintah 1; Daftar label 2 : perintah 2; Daftar label 3 : perintah 3; .......................... End; End; Contoh CASE N OF 85..100 : Mutu:=‘Amat Baik’; 75..84 : Mutu:=‘Baik’ ; 60..74 : Mutu:=‘Cukup’ 0..59 : Mutu:=‘Kurang’; END; Uses CRT; Var Nilai : Byte; Ket : String[5]; Mutu : String[10]; BEGIN CLRSCR; Write(‘Nilai Ujian : ‘); ReadLn(Nilai); IF Nilai >=50 Then Ket := ‘Lulus’ Else Ket := ‘Gagal’; WriteLn(‘Keteragan : ‘,Ket);
Case Nilai OF 0..59 : Mutu :=’Kurang’ ; 60..74 : Mutu := ‘Cukup’ ; 75..83 : Mutu := ‘Baik’ ; 84..100 : Mutu := ‘Amat Baik’; End; WriteLn(‘Mutunya : ‘,Mutu); ReadLn; END. C. Struktur Perulangan ( Looping Structure ) Struktur perulangan akan melakukan proses berulang ulang selama selama Kondisi bernilai True atau selama kondisi perulangan terpenuhi. 27
Dan Kondisi akan berhenti jika hanya keadaan berubah menjadi false atau kondisi perulangan tidak terpenuhi. Struktur Perulangan terdiri dari : 1. FOR .. DO Bentuk umumnya perulangan yang menaik: For {Batas Awal} To {Batas Akhir} DO Begin {Statement 1}; {Statement 2}; ----------------------------------{Statement N}; End; Bentuk umumnya perulangan yang menurun: For {Batas Awal} DownTo {Batas Akhir} DO Begin {Statement 1}; {Statement 2}; ----------------------------------{Statement N}; End;
Gambar IX. 1 Contoh Program For ..Do
28
2. While .. Do Perulangan digunakan unutk melaksanakan blok statement selama kondisinya benar. Dalam perulangan ini kondisi diuji terlebih dahulu. Bentuk umum : WHILE Do Begin ………… ………… End; 3. REPEAT .. UNTIL Perulangan ini melakukan uji kondisi pada akhir perulangan. Artinya perulangan (loop) dikerjakan terlebih dahulu, kemudian baru kondisi diuji. Proses akan diulang sampai suatu kondisi yang diberikan bernilai benar. Bentuk umum: REPEAT …………… …………… UNTIL;
29
Gambar IX.2 Contoh Program Repeat Until Biasanya didalam pembuatan program, perulangan tidak hanya satu kali saja. Bahkan didalam sebuah perulangan terdapat perulangan yang lain. Perulangan yang terdapat dalam perulangan yang lain disebut perulangan tersarang atau Nested Loop. II. Konsep Pemrograman Terstruktur Ide Pemrograman Terstruktur pertama kali di ungkapkan oleh Profesor Edsger Djikstra dari Universitas Eindhoven tahun 1965. Profesor Djikstra mengusulkan yaitu pernyataan GOTO seharusnya tidak dipergunakan di dalam pemrograman terstruktur. Pernyataan tersebut ditanggapi oleh HD. Millis bahwa pemrograman terstruktur tidak hanya dihubungkan dengan perintah GOTO tetapi oleh struktur program. Dari kesimpulan diatas maka Pemrograman Terstruktur adalah “Pemrograman terstruktur merupakan suatu tindakan untuk mengorganisasikan dan membuat kodekode program supaya mudah untuk dimengerti, mudah ditest dan mudah dimodifikasi”. A. Ciri-ciri pemrograman terstruktur. 1. 2. 3.
Mengandung teknik pemecahan masalah yang tepat dan benar Memiliki algoritma pemecahan masalah yanag sederhana, standar da efektif. Penulisan program memiliki struktur logika yang benar dan mudah dipahami 30
4. 5. 6. 7. 8.
Program hanya terdiri dari 3(tiga) struktur dasar, yaitu struktur berurutan, struktur seleksi dan struktur perulangan. Menghindari penggunaan pernyataan GOTO, yang akan menjadikan program tidak terstruktur dengan baik. Biaya pengujian yang dibutuhkan rendah. Memliki dokumentasi yang baik Biaya perawatan dan dokumentasi yang dibutuhkan rendah.
B. Tujuan Pemrograman Terstruktur 1. 2. 3. 4. 5.
Meningkatkan kehandalan program Program mudah dibaca dan ditelusuri Menyederhanakan kerumitan program Lebih mudah dalam pemeliharaan program Meningkatkan produktivitas pemrograman
C. Compiller Dan Interpreter Source program yang telah ditulis dengan bahasa pemrograman tingkat tinggi, tidak dimengerti oleh komputer karena komputer hanya mengerti bahasa mesin. Oleh sebab itu source program harus di terjemahkan ke dalam bahasa mesin terlebih dahulu sebelum dijalankan Source program
Penterjemah
Machine language
Terdapat 2(dua) jenis penterjemah yaitu : 1. Compiller Compiller merupakan penerjemah bahasa pemrograman yang menterjemahkan instruksi-instruksi dalam satu kesatuan modul ke dalam bahasa mesin sehingga dihasilkan suatu file executable. 2. Interpreter Interpreter merupakan penerjemah bahasa pemrograman yang menterjemahkan instruksi demi instruksi pada saat eksekusi program.
III. Debugging Dan Bentuk Kesalahan program Debugging adalah penghilangan semua kesalahan yang ditemukan pada saat pengujian. Kesalahan terjadi karena kecerobohan desain logika dan pengkodean. 31
Adapun macam-macam bentuk kesalahan program yaitu a. Syntax Error Bentuk kesalahan program yang disebabkan karena kesalahan didalam hal penulisan instruksi didalam program. Contoh:
- Writ ( dalam bahasa PASCAL ) - Use ( dalam bahasa PASCAL ) - dan lain-lain
b. Run Time Error Bentuk kesalahan program yang disebabkan karena adanya proses arithmathic yang ILLEGAL / tidak bisa diproses. Contoh:
-B=(0/3) - Akar Minus - dan lain-lain
c. Logic Error Bentuk kesalahan program yang disebabkan karena HUMAN-ERROR-LOGIC (kesalahan logika program yang dibuat oleh programmer) Contoh: - Hasil / output program yang tidak sesuai - Kesalahan program yang tidak dapat dideteksi - dan lain-lain
32
PERTEMUAN 10 TEKNIK PEMROGRAMAN TERSTRUKTUR I. Konsep pemrograman Terstruktur Adapun beberapa teknik Pemrograman terstruktur adalah : A. Pemrograman Modular Dalam pemrograman modular, program dipecah-pecah ke dalam modulmodul, dimana setiap modul menunjukkan fungsi dan tugas tunggal. Setiap program mempunyai sebuah modul program utama, yang mengontrol semua proses yang terjadi. Pemrograman modular diterapkan dengan menggunakan sub-routine. Subroutine adalah sebuah kumpulan perintah yang melakukan tugas pemrosesan yang terbatas. Dalam pemrograman secara modular, suatu program akan dipilah kedalam sejumlah modul, dimana setiap modul menjalankan fungsinya sendiri. Dengan adanya sejumlah modul program ini tentu saja kesalahan yang timbul dapat dikurangi. Setiap program tentu akan memiliki program utamanya, yang kemudian akan memanggil sejumlah modul-modul yang ada. Subroutine dikelompokan menjadi 2 : 1. Internal Subroutine Adalah bagian dari suatu program yang digunakan. Dideklarasikan cukup sekali saja, untuk sejumlah proses yang sama akan dilakukan oleh program tersebut. Program akan memanggil subroutines tersebut jika diperlukan dan apabila telah selesai, kontrol selanjutnya dikembalikan ke instruksi berikutnya. Instruksi yang mengendalikan kontrol transfer ke suatu subroutine umumnya dikenal sebagai call dan return. 2. External Subroutine Diletakkan secara terpisah dari program yang menggunakan subroutine tersebut. Subroutine ini dideklarasikan supaya bisa dipakai oleh program yang lain. Subroutine ini biasanya digunakan untuk pemrosesan yang komplek, yang dibutuhkan oleh banyak user.
33
Program Judul_Program; Procedure Nama_Procedure; Begin ……………… ……………... End; Begin ……………… Nama_Procedure ………………. End. B. Pemrograman Top-Down Pendekatan Top-down ini sangat berguna dalam perencanaan pemrograman modular. Dalam pemrograman top-down (atas ke bawah), yang pertama harus kita definisikan adalah modul utama. Modul utama yang dimaksud adalah modul yang pertama kali dijalankan atau modul yang memanggil modul lainnya atau juga modul yang mengakhiri proses program tersebut. Alat bantu perencanaan dalam TOP Down Programing Yaitu Stucture Chart atau Visual Table Of Center (VTOC) / HIPO
II. Kualitas Bahasa Pemrograman a. Ekspresifitas Bahasa pemrograman yang baik harus jelas dalam menggambarkan algoritmanya yang dibuat. b. Dapat didefinisikan dengan baik / Definitas Bahasa Pemrograman dapat didefinisikan dari adanya sintak dan semantic baik. Sintak dan semantic ini haruslah konsisten dan tidak bermakna ganda. c. Tipe data dan Strukturnya Bahasa pemrograman yang baik harus berkemampuan dalam mendukung berbagai tipe data (integer, string, real). Serta struktur data (array, record,file) d. Modularitas Bahasa pemrograman yang baik harus dapat mendukung berbagai jenis model file seperti sequential, random, index dsb dalam proses masukan dan keluaran. e. Fasilitas Masukan Keluaran / Adanya Input Output Bahasa pemrograman yang baik harus dapat mendukung berbagai jenis model file seperti sequential, random, index dsb dalam proses masukan dan keluaran. 34
f. Portabilitas Bahasa pemrograman yang dapat digunakan pada berbagai tipe mesin computer yang berbeda-beda. g. Efisiensi Bahasa pemrograman yang dapat mengatur banyaknya instruksi program dalam membatasi waktu tempuh pemrosesan, mengatur jumlah memori yang digunakan program. h. Interaktif Bahasa pemrograman yang baik harus mudah dipelajari dan diajarkan pada user. Serta dimengerti tentang proses yang sedang dilakukannya. i. Bersifat Umum Bahasa pemrograman yangn baik harus memiliki jangkauan yang luas untuk berbagai aplikasi pemrograman sehingga dapat bersifat bahasa serbaguna.
35
PERTEMUAN 11 TIPE FILE A. File Master 1. File Referensi Data yang tetap dimana pengolahan terhadap data tersebut memerlukan waktu yang lama. Data yang terdapat pada file referensi ini sebagai contoh adalah file Mahasiswa, yang apabila akan diperbaiki (di edit) untuk jangka waktu yang lama, misalnya jika terjadi perbaikan pada pengisian data untuk alamat (jika mahasiswa tersebut pindah alamat rumah) maka isi data pada alamat untuk mahasiswa yang bersangkutan harus diperbaiki 2. File Dinamik Data yang ada dalam file berubah tergantung transaksi. Misalkan saja file mata kuliah yang didalamnya terdapat informasi tentang seluruh mata kuliah yang terdapat di suatu lembaga pendidikan. Isi dari file mata kuliah dapat di perbaiki (di edit) jika kondisi yang ada dimasa depan mengharuskan adanya pergantian mata kuliah dengan nama mata kuliah yang baru dan sks yang juga baru, maka perbaikan data untuk isi file mata kuliah mutlak dilakukan. Hal ini yang disebut dengan penyetaraan mata kuliah. B. File Input (Transaksi) Berisi data masukkan yang berupa data transaksi dimana data-data tersebut akan diolah oleh komputer. Macam file transaksi yang ada pada lembaga pendidikan adalah file ujian, file nilai dan file pembayaran kuliah. File transaksi akan senatiasa mengalami perubahan sesuai dengan periode waktu tertentu C. File Laporan Berisi informasi yang akan ditampilkan. File ini berisi informasi yang akan ditampilkan dalam sebuah laporan. Isi dari Laporan yang dihasilkan biasanya berasal dari penggabungan file master dan file transaksi, tetapi tidak semua isi dari file-file tersebut ditampilkan, melainkan hanya informasi tertentu saja yang ditampilkan sesuai dengan laporan yang diinginkan. D. File Backup (Pelindung) Berisi salinan data-data yang masih aktif di database pada suatu waktu tertentu. File ini berisikan salinan (Copy) dari suatu file entah file master maupun file transaksi. Adapun isi (informasi) dari file backup ini sama persis dengan file aslinya. Jika ada yang diperbaiki maka hasil perbaikan data tersebut harus dibuatkan kembali backup dari file yang diperbaiki. E. File Kerja (Temporary File) Berisi data-data hasil pemrosesan yang bersifat sementara. File ini berisi data yang sifatnya sementara (tidak permanent) dalam arti hanya numpang lewat saja, tetapi file ini dapat berfungsi untuk mempercepat dan optimalisasi dari pengolahan data. 36
F. File Library Berisi program-program aplikasi atau utility program. File ini berisi programprogram bantu yang dapat berfungsi untuk mempercepat dan optimalisasi dari pengolahan data. Misalkan dalam file gaji yang mana mempunyai keterhubungan dengan file pendidikan pegawai (untuk mencari jenjang pendidikan dari seorang karyawan), file absensi (untuk megetahui data kehadiran pegawai) dan file lembur (untuk mengetahui intensitas kelebihan jam kerja yang dimiliki oleh seorang pegawai).
37
PERTEMUAN 12 ORGANISASI DAN AKSES FILE I. ORGANISASI & AKSES FILE Ada beberapa tipe organisasi file data yang digunakan, yaitu susunan berurutan (sequential), berurutan diindeks (indexed sequential), acak (random), dan acak diindeks (indexed random). Tujuan organisasi data di dalam pemrograman terstruktur adalah : 1. Untuk menyediakan sarana pencarian record bagi pengolahan, seleksi, atau penyaringan. 2. Memudahkan penciptaan atau pemeliharaan file . Organisasi file data harus mempertimbangkan beberapa hal penting, yaitu sebagai berikut : 1. Kemudahan dalam penyimpanan dan pengambilan data. 2. Kecepatan akses data/ efisiensi akses. 3. Efisiensi penggunaan media penyimpanan (storage device). Terdapat dua jenis alat penyimpanan data file yang digunakan, yaitu : 1. Piransi Akses Serial ( Squential Access Storage Device atau SASD). Contoh peralatan yang termasuk jenis ini adalah magnetic tape dan pita magnetic. Ciri ciri dari piranti ini adalah sebagai berikut : a. Proses pembacaan rekaman harus berurutan. b. Tidak ada pengamatan. c. Data disimpan dalam blok - blok. d. Proses write hanya bisa dilakukan sekali saja. e. Kecepatan akses datanya, sangat tergantung pada: 1. Kerapatan pita ( char/inci ). 2. Kecepatan pita ( inci/detik ). 3. Lebar celah / gap antar blok. 2. Piranti Akses Direct ( Direct Access Storage Device atau DASD). Contoh piranti akses tipe direct adalah cakram magnetic (magnetic disk) yang terdiri dari hard disk atau floppy disk. Piranti ini mempunyai ciri : a. Pembacaan rekaman tidak harus urut. b. Mempunyai alamat. c. Data dapat disimpan dalam karakter atau blok. d. Proses write dapat dilakukan beberapa kali Tiga metode susunan organisasi data file dalam media penyimpanan fisik yang lazim untuk digunakan, yaitu sebagai berikut :
38
1. Sequential. Metode ini mempunyai ciri - ciri sebagai berikut : a. Rekaman disimpan berdasarkan suatu kunci. b. Pencarian rekaman tertentu dilakukan record demi record sesuai kuncinya. Metode ini baik untuk digunakan apabila pengolahan terhadap basis data bersifat periodik dan menyeluruh. 2. Random. Dalam metode ini kunci rekaman ditransformasikan ke alamat penyimpanan dalam media fisik secara acak (random). Metode ini akan menimbulkan beberapa masalah, yaitu adanya alamat yang muncul lebih dari satu kali, dan ada alamat yang tidak pernah muncul sama sekali. Permasalahan seperti ini diatasi dengan teknik overflow location, yaitu dengan menggunakan alamat yang ada disampingnya. 3. Indexed Sequential. Metode ini mempunyai ciri - ciri sebagai berikut : a. b. c. d. e.
Merupakan gabungan antara metode sequential dan random. Record disimpan secara berurutan dengan menggunakan kunci. Masing - masing record diberi indeks. Pengalamatan dilakukan secara acak. Perlu penyimpanan tambahan, yaitu untuk file indeks.
39
PERTEMUAN 13 APLIKASI PEMROGRAMAN BUSSINES I.
TEKNIK PERANCANGAN PROGRAM ORIENTASI BUSSINES
Berikut ini akan dijelaskan beberapa teknik perancangan program didalam pemrograman terstruktur untuk mendukung proses pembangunan / pengembangan sistem informasi (BANGSISFO) Teknik perancangan file atau database dalam bentuk spesifikasi file Teknik perancangan program dalam bentuk spesifikasi program Adapun mengenai langkah-langkah didalam perancangan file tersebut adalah sebagai berikut : 1. Menentukan banyaknya jumlah kebutuhan file yang nanti akan digunakan didalam program 2. Menentukan Parameter dari file yang akan dibuat. Parameter File meliputi hal-hal sebagai berikut : a. Menentukan NAMA-FILE Contoh : File-Induk-Mahasiswa b. Menentukan AKRONIM-FILE Contoh : Siswa.Dbf c. Menentukan KODE-FILE Contoh : Mhs01 d. Menentukan TYPE-FILE (file induk,file transaksi dll) Contoh : File-Induk e. Menentukan Panjang Record (RECORD-SIZE) Contoh : 140 Character f. Menentukan ORGANISASI-FILE Contoh : Index-Sequential g. Menentukan ACCESS-FILE Contoh : Sequential h. Menentukan MEDIA-FILE Contoh : Harddisk i. Menentukan FIELD-KEY Contoh : Nomor induk siswa (NIS) j. Menentukan SOFTWARE yang digunakan Contoh : Fox-base Adapun mengenai langkah-langkah didalam perancangan program adalah sebagai berikut : 1. Menentukan banyaknya jumlah kebutuhan program yang nanti akan dibuat. 2. Menentukan Parameter dari Program yang akan dibuat. 40
Parameter Program meliputi hal-hal sebagai berikut : a. Menentukan NAMA-PROGRAM Contoh : Program Menu Utama b. Menentukan AKRONIM-PROGRAM Contoh : Menu.Prg c. Menentukan KODE-PROGRAM Contoh : PMU01 d. Menentukan FUNGSI-PROGRAM Contoh : Untuk menampilkan pilihan menu utama di dalam proses Program e. Menentukan PAKET-PROGRAMMING LANGUAGE Contoh : Visual Basic, Visual Foxpro f. Menentukan bentuk SISTEM FLOWCHART / PROGRAM FLOWCHART g. Mentukan bentuk PROSES-PROGRAM secara rinci dan detail
41
PERTEMUAN 14 OOP (OBJECT ORIENTED PROGRAMMING) I. Pengertian Tujuan utama dari pengembangan perangkat lunak atau program berorientasi objek, dapat dijelaskan sbb : Mempersingkat waktu dan menurunkan biaya perangkat lunak.
pengembangan rekayasa
Menurunkan biaya perawatan perangkat lunak. Pemrograman berorientasi objek memberikan landasan berguna untuk pembuatan prototype sistem secara cepat.
yang
sangat
II. Metode dan Objek Ada 3(tiga) karakteristik utama bahasa pemrograman berorientasi objek yaitu: a. Enkapsulasi ( pengkapsulan ) Enkapsulasi merupakan gabungan beberapa type data (record) dengan prosedur dan fungsi yang membentuk suatu type data baru yang tepat. Hakikat dari enkapsulasi ini adalah memadukan langkah program dengan data yang ada didalamnya. Dengan enkapsulasi anda dapat menyembunyikan didalam objek, baik data maupun fungsi / prosedur. Hanya dengan interface objek maka kita dapat mengakses datanya. Encapsulation: Mekanisme menyembunyikan suatu proses dalam sistem untuk menghindari interferensi dan menyederhanakan penggunaan sistem itu sendiri : • Tongkat transmisi (gigi) pada mobil • Tombol on/off/pengaturan suhu b. Inheritance ( penurunan sifat ) Penurunan sifat memungkinkan kita untuk membuat sebuah objek baru yang sama dengan objek sebelumnya yang telah didefinisikan. Karakteristik dari suatu objek diturunkan ke objek yang lain sehingga objek yang baru akan memiliki karakteristik yang sama dengan induknya. Penurunan ini diawali dengan mendefinisikan objek induk, sehingga dengan menggunakan objek induk tersebut, dapat membuat objek yang bertumpu pada objek induknya. Sehingga akan terbentuk objek keturunan. Dimana setiap objek turunannya dapat mengakses semua data dan program yang dimiliki oleh objek induknya. 42
Inheritance: Suatu class dapat mewariskan atribut dan method kepada class lain (subclass), serta membentuk class hierarchy c. Polymorphism Polymorphism: Suatu object dapat memiliki berbagai bentuk bentuk, sebagai object dari classnya, sendiri atau object dari superclassnya •
Overloading : Penggunaan satu nama untuk beberapa method yang berbeda (beda parameter)
•
Overriding: Terjadi ketika deklarasi method subclass dengan nama dan parameter yang sama dengan method dari superclassnya
d. Abstraction Cara kita melihat suatu sistem dalam bentuk yang lebih sederhana sederhana, yaitu , sebagai suatu kumpulan subsistem (object) yang saling berinteraksi. contoh : Mobil adalah kumpulan sistem pengapian, sistem kemudi, sistem pengereman e. Modularity Sifat object adalah modular. Object dapat (independen) dari object lain
ditulis dan dimaintain terpisah
43
PERTEMUAN 15 REVIEW/QUIZ
PERTEMUAN 16 UAS
44
DAFTAR PUSTAKA Handayani, Dewi. 2001. Sistem Berkas. Yogyakarta: J&J Learning H.M. Jogiyanto. 1998. Pemrograman Turbo Pascal. Yogyakarta: ANDI Indra, Yatini. 2001. Pemrograman Terstruktur. Yogyakarta: J&J Learning Kadir, Abdul. 2007. Pemrograman Pascal. Yogyakarta: ANDI Kristanto, Andri. 2009. Algoritma & Pemrograman dengan C++. Yogyakarta: Graha Ilmu Kusnadi, Yahdi. 2000. Struktur Data. Jakarta: AMIK BSI Nugroho, Adi. 2004. Pemrograman Berorientasi Objek. Bandung: Informatika Sutedjo, Budi. 2004. Algoritma & Teknik Pemrograman. Yogyakarta: ANDI
45