PEMROGRAMAN TERSTRUKTUR

Slides:



Advertisements
Presentasi serupa
Developing Knowledge Management dalam perusahaan Week 10 – Pert 19 & 20 (Off Class Session)
Advertisements

WE-2010 Web Engineering Husni husni.trunojoyo.ac.id
Aplikasi Komputer dalam MRK batagem.com. Aplikasi Komputer dalam MK2 Komputer dan Konstruksi? Normative cost per unit value Construction Automobiles.
Mata Kuliah : ALGORITMA dan STRUKTUR DATA 1.
PEMOGRAMAN BERBASIS JARINGAN
Aspek Sosial & Organisasi Restyandito, S.Kom, MSIS.
Perancangan Web dan Internet. Introduction ? •What is a web site ? •What Is Internet ?
PART 5 TRAINING INPUT Dosen : Dwisnanto Putro, ST, M.Eng.
File Handling.
DASAR-DASAR ILMU KOMPUTER Cok. Istri Wulan Maheswari, S.Kom Staff Pengajar SMKTI BALI GLOBAL Mata Diklat KKPI.
PART 3 TRAINING OUTPUT LED Dosen : Dwisnanto Putro, ST, M.Eng.
Administrasi Basis Data
PENGUKURAN INTEGRITAS
Pemrograman Visual. Pernyataan IF…THEN…ELSE Pernyataan ini hanya memeriksa apakah suatu blok kode program dapat dieksekusi atau tidak. Jika kondisi pernyataan.
IT Project Management Based on PMBOK
Pemrograman Berorientasi Objek
Siklus Manajemen Pengetahuan
1.1 VISUAL STUDIO 2008 / VISUAL BASIC.NET By Wan hendra M
Rully Yulian MF MCAD,MCPD,MCT,MVP VB.NET Independent IT Trainer – Application Developer
PERULANGANPERULANGAN. 2 Flow of Control Flow of Control refers to the order that the computer processes the statements in a program. –Sequentially; baris.
Slide 3-1 Elmasri and Navathe, Fundamentals of Database Systems, Fourth Edition Revised by IB & SAM, Fasilkom UI, 2005 Exercises Apa saja komponen utama.
Pemrograman Dasar Warsun Najib
1 IKI20210 Pengantar Organisasi Komputer Kuliah No. 18: I/O, Interupsi 15 November 2002 Bobby Nazief Johny Moningka
Introduction to The Design & Analysis of Algorithms
IF-ITB/SAS/25Aug2003 IF7074 – Bagian Pertama Page 1 IF 7047 Kewirausahaan Teknologi Informasi Bagian Pertama: 1.1. Entrepreneurship, entrepreneur, dan.
Database Create-Retrieve-Update-Delete (CRUD)
PENGENALAN PL/SQL.
Ilmu Komputer, FMIPA UGM
PROSES PADA WINDOWS Pratikum SO. Introduksi Proses 1.Program yang sedang dalam keadaan dieksekusi. 2.Unit kerja terkecil yang secara individu memiliki.
Ch. 7 TECHLOGY INTELLIGENCE. (T) Technical Intelligence Market Intelligence (M)
Internal dan Eksternal Sorting
Pengantar/pengenalan (Introduction)
Could not load an object because it is not avaliable on this machine. Tidak dapat memuat sebuah benda karena tidak tersedia pada mesin ini.
Oracle Developer/2000. Developer/2000 Products FormsReportsGraphics.
PROGRAM AND MATERIALS DEVELOPMENT in ODL. How to design and develop the ODL programs and courses? Use systematic and systemic design know well the students.
Irwin/McGraw-Hill Copyright © 2004 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS6th Edition.
JAVA CLASS Bahasa Pemrogramam BAHASA PEMROGRAMAN PERTEMUAN #9.
1 Certified Assessor Training Galeri 678 Kemang, 26 – 28 Agustus 2008 Materi Kuliah Program Magister Psikologi Unika Atmajaya Agustus 2009 Disusun oleh.
Menggunakan OLE Drag-Drop
2-Metode Penelitian Dalam Psikologi Klinis
Menggunakan Drag-Drop
MEMORY Bhakti Yudho Suprapto,MT. berfungsi untuk memuat program dan juga sebagai tempat untuk menampung hasil proses bersifat volatile yang berarti bahwa.
SUBPROGRAM IN PASCAL Function.
Basisdata Pertanian. After completing this lesson, you should be able to do the following Identify the available group functions Describe the use of group.
2nd MEETING Assignment 4A “Exploring Grids” Assignment 4 B “Redesign Grids” Create several alternatives grid sysytem using the provided elements: (min.
Function, Procedure, Unit
Kreativitas Kreativitas Kreativitas Kreativitas Kreativitas Kreativitas Kreativitas Kreativitas Kreativitas Kreativitas Kreativitas Kreativitas Kreativitas.
Observation and Experiment Method Observation Experimentation Chapter 6.
LOGO Manajemen Data Berdasarkan Komputer dengan Sistem Database.
Chapter 1 Pendahuluan Komputer sebagai sebuah sistem yang berhirarki
Linked List dan Double Linked List
BASH – Shell Programming Guide Erick, Joan © Sekolah Tinggi Teknik Surabaya 1.
MANPRO-M13: MUTU PROYEK SISTEM
CRUD 3 STMIK AKAKOM 2014 Yii Framework
© 2009 Fakultas Teknologi Informasi Universitas Budi Luhur Jl. Ciledug Raya Petukangan Utara Jakarta Selatan Website:
Paging datagridview VB.Net
1 PENGANTAR APLIKASI KOMPUTER Haryoso Wicaksono, S.Si. MICROSOFT WINDOWS #2.
Lazarus? Lazarus is a free cross-platform visual integrated development environment (IDE) for rapid application development (RAD) using the Free Pascal.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public ITE PC v4.0 Chapter 1 1 Pengalamatan Jaringan – IPv4 Dosen Pengampu: Resi Utami Putri, S.Kom.,
Mengapa Strategi Gagal Diterapkan?
Web Teknologi I (MKB511C) Minggu 12 Page 1 MINGGU 12 Web Teknologi I (MKB511C) Pokok Bahasan: – Text processing perl-compatible regular expression/PCRE.
Lecture 2 Introduction to C# - Object Oriented Sandy Ardianto & Erick Pranata © Sekolah Tinggi Teknik Surabaya 1.
Slide 1 Chapter 1: Introduction to Systems Analysis and Design Alan Dennis, Barbara Wixom, and David Tegarden John Wiley & Sons, Inc.
PERKEMBANGAN PERANGKAT LUNAK ( SOFTWARE )
Komputasi & Pemrograman
User Interface Design and Development Shneiderman, Ch. 2 (loosely)
Conditional Move and Arrays
What is Kerberos? Network Security.
Xuan Huo and Ming Li and Zhi-Hua Zhou
CMP 131 Introduction to Computer Programming
Transcript presentasi:

PEMROGRAMAN TERSTRUKTUR   PEMROGRAMAN TERSTRUKTUR disusun oleh Ir KI PRAMONO HA, MMSi JAKARTA 2011 kipram

BUKU REFERENSI 1. Kenneth C Louden : Programming   1. Kenneth C Louden : Programming Languages – Principles and Practice, 2nd Edition, PWD Publishing Company, 2003 2. Allen Tucker, Robert Noonan: Programming Languages, Prinsiples and Paradigms, McGraw Hill, 2002, ISBN 0072381116 3. Peter Van Roy, Seif Haridi : Concepts, Techniques, and Models of Computer Programming, MIT Press 2004 ISBN 0262220695 kipram

A. PSYCHOLOGY PROGRAMMING B A B I PENDAHULUAN A.  PSYCHOLOGY PROGRAMMING 1. PROGRAMMING as human performance * reading program - machine limitations - language limitations - programmer limitations - historical traces - specifications   kipram

* Bagaimana membuat program yang baik ?? - specifications - schedule - adaptability - effisiency   * Bagaimana dapat belajar programming - Instropection - Observation - Experiment - Phychological measurement - Using behavioral kipram

2. PROGRAMMING as a social activity * The Programming group - formal dan informal organisasi - lingkungan dan organisasi - error dan ego - egoless programming - creating dan pemeliharaan programming kipram

* The Programming Team - Belajar dari form a.Program structure b.Team organization - Establisting dan hasil yang diharapkan - Team leadership dan team leaders - The team kondisi tertentu kipram

* The Programming Project - perubahan stabilitas - pengukuran performance - strukture projek - problem sosial dalam projek yang besar kipram

3. PROGRAMMING as an Individual activity - professional vs amatir programming - programmer uji coba : * effisiency * kecepatan pemprograman - Status programming - Faktor Personalitas * kondisi top/meledak * perubahan personal * variasi personal * kritis personal * testing * testing of programmers kipram

- Intelligence or problem solving ability * psychological set * beberapa solusi * tehnik programming intelegence * aptitude tests * aptitude tests untuk programming   - Motivation, Training and Experience * motivation * training, scheduling & education * belajar * bagaimana belajar programming kipram

BAB II EVOLUSI BAHASA PEMROGRAMAN A. Paradigma a. Imperative Language -  berorientasi pada action, perhitungan berurutan -  specific order of execution pada instruksi -  penggunaakan Procedural Programming Language - contoh : Fortran, Pascal dan C kipram

b. Declarative Language - rules based language - rules yang specific bukan merupakan bagian - implemntasinya sistem harus memilih suatu order yang menghasilkan contoh : Prolog kipram

c. Functional Language - menitik beratkan pada fungsi -  fungsi harus sama dengan values dan merupakan bagian dari exoression serta dapat dilewatin menggunakan argument dan hasilnya ditempatkan pada data structure - contoh : SML, Miranda dan Haskell kipram

d. Object-Oriented Languange - 3 key utama + abstract data type + inheritance + polymorphism (banyak ketergantungan) + contoh: Simula 67, C++, Java kipram

- program logic depends on events e. Event-drive language -    program logic depends on events -     user di tuntut dalam membuata program -     events: mouse clicks, key press -     contoh: VB dan Delphi kipram

B. Histori 1. Zuse’s PLANKAKUL (1945) - tidak perlu di implementasi a. Bahasa Awal 1. Zuse’s PLANKAKUL (1945) -  tidak perlu di implementasi -  merupakan program kalkulus -  lengkap semua feature dalam struktur data -  notasi :   | A + 1  A V | 4 5 S | 1.n 1.n A[4] + 1 = A[5] kipram

2. FORTRAN (FORmula TRANslation/1954) - bahasa tingkat tinggi pertama -  dirancang untuk IBM 704 -  khusus untuk masalah-masalah scientific dengan notasi aljabar -  merupakan induk semua bahasa tikngkat tinggi -  Kontribusinya : + variable & Assignment statement + konsep dari type + modularity (subproram) + conditional/iterative control structure + formatted input/output kipram

- not restriced by the problem of implementation 3. COBOL (Common Business Oriented Language/1960) -  not restriced by the problem of implementation -  dapat pengesahan dari US Dept. of Defense -  Kontribusinya : + harus menggunakan nama yg tertentu + syntax : bahasa inggris + data division + struktur data record : heteregone + manipulation of files kipram

- dirancang untuk semua bahasa International Algorithmic 4. ALGOL 60 -  dirancang untuk semua bahasa International Algorithmic Language - Untuk semua feature FORTRAN dapat digunakan -  Machine independent -  Scientific problems -  Masalahnya : + no input/output statement dengan format + salah satu bahasa hanya untuk publishing algorithms + kurang flexible, sulit dimengerti + sulit di implementasi - Kontribusinya : + data type, compound/campuran statement (procedure calls), nested IF (:=), semi dynamic array + BNF (Backus-Anur Form): notasi untuk menjelaskan syntax bahasa + block structure (scope variasi & scope controls statements) + Recursion kipram

5. LISP (LISt Processing/ 1960) -  Lists : kumpulan dari cell memory yg tidak kontinues dimana menggunakan chained dengan pointer) -   Dikembangkan oleh John McCarthy di MIT -  Dirancang untuk semua kebutuhan -  Kontribusinya : + Non-numeric/symbolic computing + Konsep linked list + Konsep fungsi kipram

- dikembangkan oleh Kenneth Iverson 6. APL (A Programming Language) -  dikembangkan oleh Kenneth Iverson -  mathematical processing -  powerful operators menggunakan non-type array dalam primary struktur datanya kipram

7. BASIC (Beginners All-purpose Symbolic Intruction Code) - oleh Thomas Kurtz dan John Kemeny di Dartmouth College - mudah dipelajari (tidak berorientasi scientific) - small language dan dapat diimplemenatsikan di komputer kecil dengan memory kecil - remote terminal access, time sharing - interactive kipram

b. Algol Base 1. PL/1 (Programming Langauge One/1965) - oleh IBM - generalized programming language - dari ALGOL 60: block structure, control structure & recursion - dari FORTRAN: subprogram formatted input/output - dari COBOL : file manipulation & record structure - dari LISP : dynamic storage allocation & linked structure - dari APL : array operations - Kontribusinya : + cincurrency (multitasking) + exception handling (interupt-handling) + pointers -  Contoh: ADD: PROCEDURE OPTIONS(MAIN); GET LIST(A,B); TOTAL=A+B; PUT LIST(TOTAL); END ADD; kipram

- ditemukan oleh John Dahl & Kristen Nygaard 2. SIMULA 67 -  ditemukan oleh John Dahl & Kristen Nygaard -  untuk simulatin purpose -  turunan dari ALGOL 60 -  block structure dan control statements -  Kontribusinya : concept of class : perlindungan data dan procedure yang dapat mendukung dalam nomer objek kipram

- General purpose (kebalikan dari ALGOL 60) - Kontribusinya : + dynamic arrays + complexity + user-defined data types kipram

4. PASCAL (1969) - oleh Niklaus Wirth - dinamakan oleh Blaise Pascal - digunakan untuk bahan pelajaran di departemen computer - Kontribusi : + flexible control structure + user-defined data types + file record kipram

1. PROLOG (PROgramming LOGic/1970) c. Tahun 70an 1. PROLOG (PROgramming LOGic/1970) -  Dikembangkan oleh Phillippe Roussel dlm AI Group di University of Marsille -  Dirancang untuk Artifical Intelligence (AI) Applications -  Notasi dasar mendefisinikan Objek dan relationships -  Konsentrasi : + menitik beratkan pada objek dan relationshipnya + mendefinisikan rulenya + menjawab setiap objek da hubunganya -  contoh : girl(cindy) boy(joseph) likes(cindy,joseph) ? – girl(cindy) yes ? – girl(joseph) no ? – likes(cindy,X) X=joseph;   kipram

2. C - dikembangkan di Bell Laboratories th 1972 oleh Dennis Retchie -  dikembangkan dari B language -  powerful (kaya akan operator) tetapi sulit dibaca/ pelajari - diimplementasikan di UNIX   kipram

- dikembangkan oleh Niklaus Wirth pada Institute of 3. Modula 2 (1979) - dikembangkan oleh Niklaus Wirth pada Institute of Informatik di Zurich - digunakan untuk system programming (independent complation utk prosedure, asynchronous processings) kipram

4. Problem Pascal dengan Modula 2 addressed -  array dan parameter array ukuran tetap -  tidak ada pembagian prosedure dalam compilation -  selalu dilakukan type pengecekan -  case statement “no otherwise clause” -  pemesanan type, procedure , constant dan variable harus tetap dan tegas -  contoh: BEGIN N:=0;sum:=0.0; WriteString(“Enter series of numbers:”);writeln; ReadReal(X);Writeln; While Done DO N:=N+1; sum:=sum+X; END; kipram

d. Bahasa tahun 80an ADA - lebih banyak variasi maupun designnya - high level langauge untuk embedded system - perlindunagn untuk type data, data object dan prosedure - exception handling - generic program units - concurrency - diimplemntasikan untuk masalah besar dan kompleks kipram

e. Contemporary PL 1. Visual Basic - Contoh: -  evolusi dari BASIC -  dikembangkan semenjak th 1991 oleh Microsoft -  sekarang ada 6 versi dan .NET - Merupakan MS Windows Programming Language -  Event-driven programming language -  Dibuat dalam Integrated Development Environment (IDE) -  Menggunakan RAD (Rapid Application Development) - Contoh: Private sub compute_click() Dim Sum as integer Sum = Val(num1.text) + Val(num2.text) Result.caption =”the sum of “ & num1.text & “ and “ & _ Num2.text & “ is “ & Str(sum) & “.” End sub kipram

Procedure compute_click() 2. Delphi - drag and drop visual programming - menggunakan syntax Pascal - RAD tool untuk windows - Database development tool (dapat mengaccess variasi2 DBMS) - Ver 1 sampai 4 (Borland), Ver 5 : Inprise - Ver 5: high productivity development solution untuk Internet dan distrubuted computing - Contoh : Procedure compute_click() Begin Var sum:integer, Sum:= stringtolnt(num1.text) + stringtolnt(num2.text); Result.caption:=”the sum of” + num1.text + “and” +_ Num2.text + “ is “ + str(sum) + “.”, end kipram

- dikembangkan oleh Sun Microsystem th 1991 dan dipasarkan 3.Java - dikembangkan oleh Sun Microsystem th 1991 dan dipasarkan 1995 - oleh team (the Green Project) : Patrick Naughton, Mike Sherian dan James Gosling - machine independent - design untuk web programming - compiled dan interpreter - beberapa instruksi C atau C++ ada didalammnya khususnya untuk model processor - compiled untuk universal format (byte-code) dimana di gunakan dalam virtual machine   kipram

#/usr/local/bin/perl 4. PERL (Practical Extraction and Report Language) - dibuat oleh Lary Wall - Interpreted language - Tool yang baik untuk pencarian dan re array yang besar, manipluasi file dan managing proses - Syntax : C atau C++ - Contoh : #/usr/local/bin/perl $RequestMethod = $ENV{“REQUEST_METHOD”}; if ($RequestMethod eq ””){ print “Executed using command line”, } else if ($RequestMethod eq “GET”) { print “Content-type: text/htm;\n”, print “<htm><body>”, print “Hello World<br>\n”, print “</body></htm>\n”, } kipram

5. PHP (Hypertext Preprocessor) -  diluar server, cross-platform, HTML embedded scripting language - gabungan dari C, Java dan Perl - baik untuk men generated web - contoh: if (#addgrade==true){ print “<frommethod=Get Action=result.php>”, print “<h2>Add Transcript Entry</h2>”, $result = pg_exec(“Select stude_id from student”); $rows = pg_numrows($result); print ”<table><tr><d>Subjecyt Code:</td>”, print “<td><select name=subj_code>”; print “<option value=CS21>CS21”, print “<option value=CS93>CS93”, print “<select></td></tr>”; kipram

3. YANG MEMPENGARUHI BAHASA Computer Capabilitas a.  60-an : magnetic tape storage, core memories, time sharing system dynamic storage methods, list processing b.  70-an : semiconductor memories, microcomputers, structured programming c.  80-an : personal computer, LANs, OOP, Interactive systems d. 90-an : workstations, opens system, client/sever, networks kipram

Yang mempengaruhi programming language Pengaruh Language   1950-1955 Primitive computers Assembly language Assembly & manchine Expremental High Level language programming language Foundation concepts : none in use today - subprograms - Data structure Possibility of high-level language 1956-1960 Small,slow and expensive computer FORTRAN Magnetic tape mass storage systems ALGOL 58 and Compiler ALGOL 60 Software interpreters COBOL, LIPS Code optimization Dynamic storage management Linked data structure and list BNF grammars kipram

1961-1965 Large, expensive computers FORTRAN IV Pengaruh Language 1961-1965 Large, expensive computers FORTRAN IV Magnetic disk mass storage systems COBOL 61 Extended Operating Systems ALGOL 60 revised Multiprogramming SNOBOL Syntax directed compiler APL (as a notation "General purpose" as a language not implementation) design goal   1966-1970 Instruction set compatible computer PL/1 of varying size, speed & cost FORTRAN 66 (standard) Large,expensive mass storage systems COBOL 65 (standard) Time sharing,interactive operating system ALGOL 68 SNOBOLA Microprogramming SIMULA 67 Optimizing compilers BASIC Translator writing systems APL\360 First 'standard' language Flexibility & generality as language kipram

Pengaruh Language Small,inexpensive mass COBOL 74 (standard) 1971-1975 Microcomputers Pascal Small,inexpensive mass COBOL 74 (standard) storage systems Proofs og program correctness PL/1 (standard) Structured programming Software engineering Reaction againts large, complex language Simplicity as a language design goal kipram

Pengaruh Language 1976-1980 Powerful,inexpensive computer Ada Large,inexpensive mass storage FORTRAN 77 (standard) systems Distributed computer systems Embedded computer systems Concurrent & real time programming using hight level languages Interactive programming environment Data abstraction Software components Formal semantic definitions Reliability & ease of maintenance as language design goals. 1990- skrg PC, LANs, OOP, Interacative, Open system, WEB Client server, dll kipram