Minggu, 10 Oktober 2010

Pemrograman Terstruktur dan pemrograman berorientasi objekrog

Pemrograman Terstruktur

Pemrograman terstruktur adalah suatu teknik yang mencegah masalah besar menjadi lebih kecil dan lebih mudah dipahami sehingga masalah yang besar dapat diselesaikan dengan baik. Pemrogramman terstruktur digumakan secara berurutan dan terstuktur baik dalam analisa, cara dan penulisan program. Program dapat dibagi-bagi menjadi prosedur dan fungsi.

Mempelajari bahasa pemrograman terstruktur sangat penting artinya karena konsep-konsep yang diterapkan disini akan dipakai terus dalam bahasa bahasa pemrograman generasi baru. Dalam mempelajari pemrograman terstruktur yang sangat penting dipahami adalah konsepnya.

Ciri-ciri pemrograman terstruktur

1. Mengandung teknik pemecahan masalah yang tepat dan benar

2. Memiliki algoritma pemecahan masalah yanag sederhana, standar da efektif.

3. Penulisan program memiliki struktur logika yang benar dan mudah dipahami

4. Program hanya terdiri dari 3(tiga) struktur dasar, yaitu struktur berurutan, struktur

seleksi dan struktur perulangan.

5. Menghindari penggunaan pernyataan GOTO, yang akan menjadikan program tidak terstruktur dengan baik.

6. Biaya pengujian yang dibutuhkan rendah.

7. Memliki dokumentasi yang baik

8. Biaya perawatan dan dokumentasi yang dibutuhkan rendah.

Prinsip pemrograman tersturuktur :

- Gunakan rancangan pendekatan dari atas ke bawah (top down design).

- 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.

- Gunakan nama-nama bermakna (mnemonic names)

- Buat dokumentasi yang akurat dan berarti.

Tujuan Pemrograman Terstruktur

1. Meningkatkan kehandalan program

2. Program mudah dibaca dan ditelusuri

3. Menyederhanakan kerumitan program

4. Lebih mudah dalam pemeliharaan program

5. Meningkatkan produktivitas pemrograman

Ada tiga bentuk yang digunakan dalam pemrograman terstruktur yaitu : Sequence Structure, Loop Structure dan Selection Structure.

Sequential 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.

Contoh Program Struktur berurutan menghitung luas empat persegi panjang

Program persegi panjang;

Uses crt;

Var

luas,panjang,lebar:integer;

Begin

clrscr;

write(‘Masukan Panjang:’);

Readln(panjang);

write(‘Masukan Lebar:’);

Readln(Lebar);

Luas:=Panjang * Lebar;

writeln(‘luas Persegi Panjang: ‘, Luas);

Readln;

End.

Loop Structure

Struktur perulangan akan melakukan proses berulang ulang selama selama Kondisi bernilai

True atau selama kondisi perulangan terpenuhi.

Dan Kondisi akan berhenti jika hanya keadaan berubah menjadi false atau kondisi

perulangan tidak terpenuhi.

Struktur pengulangan terdiri dari :

· FOR .. DO

· While .. Do

Perulangan digunakan untuk melaksanakan blok statement selama kondisinya benar. Dalam perulangan ini kondisi diuji terlebih dahulu.

· 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.

Bahasa pemrograman yang mendukung pemrograman terstruktur antara lain:

- Pascal

- Cobol

- Bahasa C

Object Oriented Programming (OOP)

Pada tahun 1960, ditemukan program yang terstruktur (struktur programming). Metode ini dikembangkan dari Bahasa C dan Pascal. Dengan program yang terstruktur inilah untuk pertama kalinya kita mampu menulis program yang begitu sulit dengan lebih mudah.

OOP adalah suatu metode dalam pembuatan program yang bertujuan untuk menyelesaikan kompleksnya berbagai masalah program yang terus meningkat

Contoh kasus OOP

“anggap saja kita mempunyai sebuah departemen yang memiliki manager, sekretaris, petugas administrasi data dan lainnya. Misalnya manager tersebut manager tersebut ingin memperoleh data dari bagian administrasi, maka manager tersebut tidak harus mengambilnya langsung tetapi dapat memerintahkan petugas administrasi untuk mengambilnya. Pada kasus tersebut seorang manajer tidak harus mengetahui bagaimana cara mengambil data tersebut tetapi manajer bisa mendapatkan data tersebut melalui objek petugas administrasi”

Pemrograman orientasi-objek menekankan konsep berikut:

§ kelas — kumpulan atas definisi data dan fungsi-fungsi dalam suatu unit untuk suatu tujuan tertentu. Sebagai contoh 'class of dog' adalah suatu unit yang terdiri atas definisi-definisi data dan fungsi-fungsi yang menunjuk pada berbagai macam perilaku/turunan dari anjing. Sebuah class adalah dasar dari modularitas dan struktur dalam pemrograman berorientasi object. Sebuah class secara tipikal sebaiknya dapat dikenali oleh seorang non-programmer sekalipun terkait dengan domain permasalahan yang ada, dan kode yang terdapat dalam sebuah class sebaiknya (relatif) bersifat mandiri dan independen (sebagaimana kode tersebut digunakan jika tidak menggunakan OOP). Dengan modularitas, struktur dari sebuah program akan terkait dengan aspek-aspek dalam masalah yang akan diselesaikan melalui program tersebut. Cara seperti ini akan menyederhanakan pemetaan dari masalah ke sebuah program ataupun sebaliknya.

§ Objek - membungkus data dan fungsi bersama menjadi suatu unit dalam sebuah program komputer; objekmerupakan dasar dari modularitas dan struktur dalam sebuah program komputer berorientasi objek.

Konsep dasar dari OOP ada 3 yaitu :

- Pewarisan (Intheritance)

Merupakan sifat dalam bahasa berorientasi objek yang memungkinkan sifat-sifat dari suatu class yang diturunkan ke class lain.

- Pengkapsulan (Encapsulation)

Penyembunyian informasi. Dapat juga diartikan dengan pengemasan data dan methoddalam wadah bernama objek. Konsep public dan private akan senantiasa digunakan dalam pengkapsulan. Memastikan pengguna sebuah objek tidak dapat mengganti keadaan dalam dari sebuah objek, dengan cara yang tidak layak. Hanya method dalam objek yang diberi izin untuk mengakses keadaannya

- Polimerfisme

Istilah ini sendiri berasal dari kata Yunani yang berarti mempunyai banyak bentuk. Polimerfisme merupakan suatu konsep yang menyatakan sesuatu yang sama dapat memiliki berbagai bentuk perilaku yang berbeda. Contohnya, bila sebuah burung menerima pesan “gerak cepat”, dia akan menggerakkan sayapnya dan terbang. Bila seekor singa menerima pesan yang sama dia akan menggerakkan kakinya dan berlari. Keduanya menjawab sebuah pesan yang sama, namun yang sesuai dengan kemampuan hewan tersebut.

Bahasa pemrograman yang mendukung OOP antara lain:

1. Visual Foxpro

2. Java

3. C++

4. Visual Basic.NET

5. SIMULA

6. Smalltalk

7. Ruby

8. Python

9. PHP

10. Delphi

11. Eiffel

12. Perl

Perbedaan antara antara OOP dan pemrograman terstruktur

Dengan menggunakan OOP maka dalam melakukan pemecahan suatu masalah kita tidak melihat bagaimana cara menyelesaikan suatu masalah tersebut (terstruktur) tetapi objek-objek apa yang dapat melakukan pemecahan masalah tersebut. Sedangkan untuk pemrograman terstruktur, menggunakan prosedur/tata cara yang teratur untuk mengoperasikan data struktur

Untuk tata nama, keduanya pun memiliki tatanan yang sama walaupun memiliki pengertian tersendiri:

object oriented menggunakan “method” sedangkan terstruktur menggunakan “function”. Bila di OOP sering didengar mengenai “objects” maka di terstruktur kita mengenalnya dengan ” modules”. Begitu pula halnya dengan “message” pada OO dan “argument” pada terstruktur. “attribute” pada OO juga memiliki tatanan nama yang sepadan dengan “variabel” pada pemrograman terstruktur.

Persamaan kedua pemrogaman adalah keduanya termasuk ke dalam pemodelan pemrograman yang digunakan dewasa ini.

tidak ada yang dapat dikatakan lebih baik karena keduanya memiliki spesifikasi tersendiri dalam pemrogramannya. Hal ini juga tergantung pada bagaimana pribadi si pemrogram ingin menyusun program yang akan dibuatnya. Apakah lebih suka menggunakan yang berorientasikan pada objek maupun pemrograman yang terstruktur.

Pemrograman prosedural akan dikatakan lebih baik apabila dalam segala situasi melibatkan kompleksitas moderat atau yang memerlukan signifikan kemudahan maintainability. Manfaat yang dirasakan dalam penggunaan pemrograman prosedural adalah kemampuan kembali menggunakan kode yang sama tanpa menggunakan kode yang berbeda ataupun mengkopinya kembali. Dengan menggunakan “goto”, memudahkan programmer melacak kumpulan data sehingga menghindarkan pemrograman terstruktur menjadi seperti spagethii code.

Pemrograman berorientasikan objek dikatakan lebih baik apabila Model data berorientasi objek dikatakan dapat memberi fleksibilitas yang lebih, kemudahan mengubah program, dan digunakan luas dalam teknik piranti lunak skala besar. Lebih jauh lagi, pendukung OOP mengklaim bahwa OOP lebih mudah dipelajari bagi pemula dibanding dengan pendekatan sebelumnya, dan pendekatan OOP lebih mudah dikembangkan dan dirawat.

1 komentar:

  1. mbak nurul yng kalo pemrograman“tidakterstruktur” maksudnya gimana kasi tahu dung saya gak tahu

    BalasHapus