Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Oleh Munawar Asikin. Konsep pemrograman secara umum : Konsep pemrograman secara umum :  Perkembangan pemrograman komputer  Sejarah bahasa pemrograman.

Presentasi serupa


Presentasi berjudul: "Oleh Munawar Asikin. Konsep pemrograman secara umum : Konsep pemrograman secara umum :  Perkembangan pemrograman komputer  Sejarah bahasa pemrograman."— Transcript presentasi:

1 Oleh Munawar Asikin

2 Konsep pemrograman secara umum : Konsep pemrograman secara umum :  Perkembangan pemrograman komputer  Sejarah bahasa pemrograman  Jenis bahasa pemrograman  Perbandingan bahasa pemrograman Ide Pemrograman terstruktur : Defenisi, Tujuan, Kriteria Metoda dasar pemrograman terstruktur GOTOLess : Sekuensial, Selection, Looping Perbandingan bahasa pemrograman  (Berdasarkan kriteria pemrograman terstruktur) Metoda desain pemrograman terstruktur Modular, TopDown,… OOP, Pemrograman berorientasi objek  (Lebih terstuktur dari ide pemrograman terstruktur ?) Struktur pemrograman visual

3 Perkembangan (cara) mem-program komputer : 1.Pemrograman dengan mengatur/menyambung titik jumper di rangkaian komputer 2.Pemrograman dengan langsung menulis kode biner ke memory, direpresentasikan melalui kode hexa, kode biner disebut juga bahasa mesin komputer 3.Pemrograman dengan bahasa assembler : Perintah- perintahnya berkaitan langsung dengan struktur internal hardware 4.Pemrograman dengan bahasa tingkat tinggi/menengah : Perintah-perintahnya mirip dengan bahasa manusia/english Mem-program komputer, secara teknis bertujuan :Mem-program komputer, secara teknis bertujuan : Memasukkan/ menyusun sejumlah instruksi dan data ke memory, yang selanjutnya akan diambil satu persatu oleh CPU/Processor untuk dilaksanakan

4 CPU Programmer Instruksi A Instruksi D Data D Instruksi B Data A Instruksi C Sejumlah Instruksi dan data ……… ……… Susunan instruksi dan data dalam memory Mov A,05 Mov B,12 Add A,B Assembly A = High/Medium Level 3C 05 3D 12 2D Hexa Tool

5

6 Generasi bahasa pemrograman: Generasi I : machine language Generasi II : assembly language : Asssembler Generasi III : high-level programming language: C, PASCAL, dsb. Generasi IV : 4 GL (fourth-generation language): Prolog, SQL, Visual tool, dsb Jenis bahasa pemrograman berdasarkan metodanya : Pemrograman tidak terstruktur : Basica, Fortran, … Pemrograman terstruktur : Pascal, C/C++, … Pemrograman berorientasi objek : C++, Java, … Pemrograman visual : VB, Delphi, … Jenis bahasa pemrograman berdasarkan bentuk (corak kode) nya : Pemrograman prosedural : Pascal, C, Pemrograman fungsional : Lisp Pemrograman deklaratif : Prolog Pemrograman berorientasi objek : Java Pemrograman prosedural sekaligus berorientasi objek : C++ Jenis bahasa pemrograman berdasarkan tujuan (hasil) : Pemrograman stand-alone Pemrograman client/server Pemrograman web : HTML, Script Pemrograman jaringan Jenis bahasa pemrograman berdasarkan cara penterjemahan : Interpreter : Basica, Foxpro, Matlab,… Compiler : Turbo Basic, Pascal, C/C++, …

7 Jenis ProgramBahasa TerbaikBahasa Terburuk Data terstrukturADA, C /C++, PASCALAssembler, BASIC Proyek cepatBASICPASCAL, ADA, Assembler Eksekusi cepatAssembler, CBASIC, Intrepreter Language Kalkulasi matematikaFORTRAN PASCAL Menggunakan memori dinamisPASCAL, CBASIC Lingkungan bermemori terbatasBASIC, Assembler, CFORTRAN Program real-timeADA, Assembler, CBASIC, FORTRAN Manipulasi stringBASIC, PASCALC Program mudah dikelolaPASCAL, ADAC, FORTRAN BahasaRasio Assembler1: 1 ADA1 : 4.5 Quick / Turbo / Basic1 : 5 C1 : 2.5 FORTRAN 1 : 3 PASCAL1 : 3.5 Berdasarkan tujuan tertentu : Berdasarkan jumlah instruksi dibandingkan dengan assembler

8

9 Digunakan untuk menunjukkan awal dan akhir program Digunakan untuk memberikan nilai awal (inisial) pada suatu variabel atau counter Digunakan untuk proses, pengolahan arithmatik, dan pemindahan data Digunakan untuk mewakili operasi perbandingan logika yang dibutuhkan pada Selection dan Looping Digunakan untuk proses yang detailnya dijelaskan terpisah, misalkan untuk menyatakan prosedur, atau sub program Digunakan untuk hubungan arus proses yang terputus masih di halaman yang sama Digunakan untuk hubungan arus proses yang terputus di halaman yang berbeda Digunakan untuk menghubungan antar simbol/elemen yang lain dan sekaligus menyatakan arah aliran Digunakan untuk menyatakan operasi memasukkan data/input dan menampilkan data/output

10 Pemrograman yaitu aktivitas membuat program, yaitu menyusun sejumlah perintah yang dikenal komputer Terstruktur dapat berarti terpola, bentuk yang mengikuti aturan tertentu, juga berarti sesuatu yang sistematis Orang pertama yang mencetuskan ide pemrograman terstruktur adalah Profesor Edsger W. Dijkstra dari University of Eindhoven, Nederland. Ide utamanya adalah bahwa statemen GOTO sebaiknya tidak digunakan di dalam pemrograman terstruktur, sebab bisa membuat program menjadi ruwet. Ide ini ditanggapi oleh HD Milis, yang beranggapan bahwa pemrograman terstruktur semestinya tidak hanya dihubungkan dengan tanpa penggunaan GOTO, tetapi yang lebih utama adalah struktur program itulah yang menentukan apakah suatu pemrograman terstruktur atau tidak Kriteria pemrograman terstruktur : -Struktur programnya; jelas dan tegas -Fasilitas penulisan kode program; jelas dan tegas -Statemen untuk kebutuhan Selection dan Looping; lengkap -Fasilitas menyatakan berbagai type data (struktur data); lengkap dan tegas -Fasilitas pemberian komentar; lengkap -Fasilitas instruksi yang tersedia (operasi arithmatik/matematik, string, …); lengkap -Fasilitas modular (baik internal maupun eksternal); lengkap -Fasilitas debugging, mudah dan jelas Ide pemrograman terstruktur muncul karena jumlah baris program semakin lama semakin besar, tentu saja hal ini terjadi karena diinginkan aplikasi yang lengkap dan lebih berkualitas Dengan ide pemrograman terstruktur diharapkan dapat membantu manajemen source code (kode program) sehingga program mudah untuk dikelola bagi kepentingan selanjutnya Tujuan utama pemrograman terstruktur adalah : agar program-program besar menjadi lebih mudah ditelusuri alur logikanya, mudah untuk dimodifikasi (dikembangkan) dan mudah pula untuk ditemukan bagian yang salah ketika program sedang diuji.

11 a bc d -Mana yang susunannya terstruktur (teratur, …) -Mana yang lebih mudah anda hafalkan -Jika akan ditambah satu batang lagi, dimana harus diletakkan agar posisinya dapat dinilai benar -Jika susunannya dirombak, mana yang lebih mudah untuk disusun kembali

12 Ide awal penerapan pemrograman terstruktur yaitu dengan menghindari penggunaan GOTO untuk melompat ke bagian program tertentu Kegunaan GOTO untuk melompat ke baris program tertentu, secara umum dapat dibagi ke dalam 2 kelompok : 1.Melompat ke bagian bawah program dari posisi program saat ini 2.Melompat ke bagian atas program dari posisi program saat ini Dengan pemrograman terstruktur; Jika ada kebutuhan melompat ke bagian bawah, dapat digantikan dengan perintah Selection (If, Case, Select, Switch,…) Jika ada kebutuhan melompat ke bagian atas, dapat digantikan dengan perintah Looping (for, While, repeat-until,…) Prinsip utamanya adalah, program tidak boleh melompat ke atas, kecuali untuk keperluan pengulangan Untuk itu dalam pemrograman terstruktur hanya dikenal 3 struktur : 1.Sekuensial, yaitu program yang tidak memiliki lompatan. Baris program dijalankan secara normal (lurus) satu per- satu dari atas ke bawah 2.Selection, yaitu program yang memiliki pilihan apakah harus menjalankan baris program sesuai dengan urutannya atau melompati sejumlah baris program tersebut 3.Looping, yaitu program yang juga mengandung pilihan apakah akan mengulangi program yang sudah pernah dijalankan sebelumnya atau tidak

13 1. Struktur urut sederhana (Simple sequence) 2. Struktur 1 pilihan dengan IF-THEN 3. Struktur 2 pilihan dengan IF-THEN-ELSE

14 4a. Struktur banyak pilihan dengan IF-THEN-ELSEIF 4b. Struktur banyak pilihan dengan CASE

15 5. Struktur perulangan FOR For 6. Struktur perulangan WHILE 7. Struktur perulangan UNTIL

16 Kondisi Proses 1a IF-THEN true false Proses 1 Proses 2 Proses1 If {kondisi } then Proses1a End if Proses2 Proses1 If {kondisi=false } then goto lompat Proses1a Lompat: Proses2 Jika kondisi=true, urutan pelaksanaan : Proses1 Proses1a Proses2 Jika kondisi=false, urutan pelaksanaan : Proses1 Proses2 Analisa :

17 Kondisi Proses 1b IF-THEN-ELSE true false Proses 1 Proses 2 Proses1 If {kondisi=true } then Proses1b else proses1a end if Proses2 Proses1 If {kondisi=true } then goto lompat1 else goto lompat2 Lompat1: Proses1b goto lompat3 Lompat2: Proses1a Lompat3: Proses2 Jika kondisi=true, urutan pelaksanaan : Proses1 Proses1b Proses2 Jika kondisi=false, urutan pelaksanaan : Proses1 Proses1a Proses2 Analisa : Proses 1a

18 Kondisi1 Proses 2a IF-THEN-ELSE-IF true false Proses 1 Proses 2d Proses1 If {kondisi1=true } then Proses2a else if {kondisi2=true } then Proses2b else if {kondisi3=true } then Proses2c else Proses2d end if Proses3 Proses1 If {kondisi1=true } then goto lompat1 If {kondisi2=true } then goto lompat2 If {kondisi3=true } then goto lompat3 Goto lompat4 Lompat1: Proses2a goto habis Lompat2: Proses2b goto habis Lompat3: Proses2c goto habis Lompat4: proses2d Habis: proses3 Kondisi2 Kondisi3 Proses 2b Proses 2c Proses 3 Proses1 Case of var Kondisi1: Proses2a Kondisi2: Proses2b Kondisi3: Proses2c else Proses2d end case Proses3

19 Looping : FOR I=1 Ulang : Proses1 Proses2 I=I+1 If I<=5 then goto Ulang Proses3 For I=1 to 5 Proses 1 Proses 2 Next I Proses 3 Proses1 Proses2 FOR I=1 to 5 Proses3

20 Looping : WHILE Ulang : If {kondisi=true} then Proses1 Proses2 goto Ulang Proses3 While {kondisi=true} Proses 1 Proses 2 Wend Proses 3 While {kondisi} Proses1 Proses2 Proses3

21 Looping : UNTIL Ulang : Proses1 Proses2 If {kondisi=true} then goto Ulang Proses3 do Proses 1 Proses 2 Loop Until {kondisi=true} Proses 3 Proses1 Until {kondisi} Proses3

22 C=2 C=C=1 C>12 end start

23 end start Lompatan tidak terstruktur : a.Melompat ke bagian yang belum tentu dilewati b.Melompat keluar dari daerah induknya

24 Bahasa pemrograman dengan kemampuan meng-ekspresi-kan semua kebutuhan struktur data akan lebih mendukung pencapaian tujuan dari pemrograman terstruktur Bahasa pemrograman yang tidak memiliki fasilitas untuk mengungkapkan struktur data tertentu cendrung mengarahkan kode program ke bentuk yang kurang teratur Kemampuan struktur data suatu bahasa pemrograman ditentukan oleh kemampuan fasilitas type data yang dimilikinya Type data secara umum terdiri dari : -Type data dasar standar : Integer, real, string, charakter, dan logic -Type data dasar tidak standar : sub range, enumerate -Type data majemuk : set, array, record, file -Type data dinamis : pointer

25 Metode Perancangan Top-down Metada Perancangan Modular Implementasi internal : Procedure/Subprogram, Function Implementasi eksternal : file Unit/Header/Modul Diagram Nassi-Schneiderman Tabel Decision Untuk membantu dan menjamin dihasilkannya program yang terstruktur, dapat digunakan beberapa metoda/alat berikut :

26 Sub Masalah ASub Masalah BSub Masalah C Masalah Besar Sub Masalah A1 Sub Masalah A2 B A C A1 A2 Masalah utama Strategi umum dalam penyelesaian masalah besar; kompleks; rumit

27 …….. Call A …….. Call B …….. Call C …….. ……. Call A1 ……. Call A2 …….. ……. A B C A1 A2 Bagian Utama Dapat diterapkan secara : - Internal : sub program, procedure, function - Eksternal : file unit, header, modul

28 Statemen1 Statemen2 Stateme3 if yatdk proses1 if yatdk proses1proses2 While kondisi proses2 Until kondisi Mulai Masukkan Nilai koefisien A Masukkan Nilai koefisien B Masukkan Nilai Koefisien C D = B*B-4*A*C D<0 Imajiner Real sama Real berbeda D=0 yatdk yatdk Contoh :

29  TERIMA KASIH 


Download ppt "Oleh Munawar Asikin. Konsep pemrograman secara umum : Konsep pemrograman secara umum :  Perkembangan pemrograman komputer  Sejarah bahasa pemrograman."

Presentasi serupa


Iklan oleh Google