Chapter 11 Bahasa Pemrograman dan Pengembangan Program
Discovering Computers 2009
Pemrograman Program Komputer
- Sekumpulan instruksi yang memerintahkan komputer untuk mengerjakan tugas tertentu
Bahasa Pemrogramanan – digunakan untuk berkomunikasi dengan instruksi
Pemrograman Bahasa Tingkt Rendah dan Bahasa Tingkt Tinggi Bahasa Bahasa Bahasa Bahasa Tingkat Rendah Tingkat Tinggi Tingkat Rendah Tingkat Tinggi Bergantung pada Mesin Bergantung pada Mesin Tidak bergantung pada Mesin Tidak bergantung pada Mesin hanya berjalan pada satu tipe hanya berjalan pada satu tipe dapat berjalan pada banyak tipe dapat berjalan pada banyak tipe komputer tertentu komputer tertentu komputer dan sistem operasi komputer dan sistem operasi Contohnya: Bahasa Mesin dan Contohnya: Bahasa Mesin dan Bahasa Assembly Bahasa Assembly
Bahasa Tingkat Rendah
Hanya komputer yang
- dapat mengerti secara langsung Menggunakan bilangan
- biner (1 dan 0) untuk mewakili sebuah karakter
Bahasa Assembly
Instruksi biasanya berupa
- kode simbol, seperti singkatan dan kode lain Kode Sumber akan di
- konversi ke bahasa mesin
Biasa disebut bahasa generasi ketiga Bahasa Prosedural
Biasanya menggunakan bahasa Inggris – seperti kata perintah Programmer mengetikkan instruksi untuk menyuruh komputer apa yang harus dilakukan dan bagaimana melakukannya
Compiler
Program yang
- mengkonversi seluruh kode sumber menjadi bahasa mesin sebelum mengeksekusi nya
Interpreter
Program yang
- menerjemahkan dan mengeksekusi satu kode program pada satu waktu Tidak menghasilkan
- objek program
COBOL Common Business-Oriented Language Di desain untuk aplikasi bisnis
- Menggunakan bahasa Inggris sehingga mudah dibaca,
- ditulis, dan di maintenance
C
Powerful, di desain pertama kali untuk membuat
- sistem software Butuh keahlian dalam bahasa pemrogramanan ini
Objek
Bahasa Pemrograman Berorientasi Objek
Digunakan untuk Keuntungan: Event – untuk Contoh: mengimplementas objek yang ada mengecek dan Java, C++, C#, ikan desain Objek dapat merespon suatu dan VB.Net digunakan perintah kembali dan dimodifikasi Event adalah Objek adalah sebuah aksi sesuatu yang untuk berisi data merespon dan prosedur program
Objek Java
Dikembangkan
- oleh Sun Microsystem Menggunakan
- just-in-time (JIT) compiler untuk mengkonversi bytecode ke bahasa mesin
Objek C++
Termasuk C, dan beberapa fitur tambahan lain agar
- dapat bekerja dengan konsep bahasa OOP Digunakan untuk membuat aplikasi dengan database
- dan juga aplikasi web
Objek C#
Bahasa OOP dari berlandaskan C++
- Diterima sebagai standar aplikasi web dan web XML
- Menggunakan JIT compiler
- Hasil kodenya disebut Microsoft Intermediate
- Language (MSIL)
Objek Bahasa Pemrograman Visual
Programmer menuliskan dan mengimplementasika n program pada segment-segment Dengan Visual programming environment (VPE) programmer dapat dengan mudah melakukan drag & drop objek dalam membuat program Digunakan pada RAD Digunakan pada RAD (rapid application (rapid application development) development) Menyediakan visual Menyediakan visual atau graphical interface atau graphical interface untuk membuat source untuk membuat source code code
Objek Visual Studio .NET adalah teknologi yang dapat membuat program berjalan pada internet
- Terdiri dari Visual Basic , Visual C++ , dan Visual C#
- Step 1.
developer Step 2. developer menambahkan properties ke mendesain user setiap objek pada form interface.
Step 3. developer menuliskan kode untuk mendefinisikan setiap aksi pada command button. developer Step 4.
Objek Delphi
Powerful sebagai alat pengembangan program
- Cocok untuk aplikasi perusahaan besar dan aplikasi
- web
Objek PowerBuilder
Baik digunakan
- untuk aplikasi berbasis web dan aplikasi perusahaan besar yang berorentasi objek
RPG (Report Program Generator)
Bahasa Nonprosedural yang digunakan untuk
- menmbuat laporan, mengakses data, dan memperbarui data
fourth-generation language (
4GL ) Bahasa Nonprosedural untuk mengakses data pada database
- Contoh yang paling populer adalah SQL , bahasa query yang
- dapat digunakan user untuk mengatur data pada relational DBMS
Contoh bahasa pemrogramman lainnya
ALGOL ALGOL ALGOL ALGOL Ada Ada Ada Ada
HyperTalk HyperTalk HyperTalk HyperTalk FORTRAN FORTRAN FORTRAN FORTRAN Forth Forth Forth Forth LISP LISP LISP LISP Modula-2 Modula-2 Modula-2 Modula-2 Logo Logo Logo Logo Pascal Pascal Pascal Pascal
Prolog Prolog Prolog Prolog PL/1 PL/1 PL/1 PL/1 PILOT PILOT PILOT PILOT
Smalltalk
Smalltalk Smalltalk
Smalltalk
Application generator
- Program yang membuat source code atau kode mesin dari sebuah spesifikasi
- Teridiri dari report writer, form, dan menu generator
Form digunakan untuk memasukkan data
Macro
Sekumpulan statements yang menginstruksikan
- aplikasi untuk menyelesaikan suatu tugas
HTML (Hypertext Markup Language)
- Digunakan untuk membuat halaman Web
Bagaimana sebuat efek dan elemen-elemen interaktif ditambahkan pada halaman web?
Counter Counter menghitung jumlah pengunjung pada website Image map Image map gambar yang menunjuk ke sebuah URL Script Script mengintrepreta- sikan program yang berjalan pada client Applet Applet biasanya berjalan pada client, setelah di compile Processing form Processing form mengumpulkan data dari pengunjung ke sebuah website Servlet Servlet applet yang berjalan pada server ActiveX ActiveX control control program kecil yang berjalan pada client
Common Gateway Interface (CGI)
Standar komunikasi yang mendefinisikan bagaimana
sebuah web server berkomunikasi dengan sumber-sumber lainnya
CGI script—program yang mengatur pengiriman dan penerimaan pada CGI
Bahasa Script
- Mudah dipelajari dan digunakan
JavaScript (Practical Extraction
Perl
and Report Language) (PHP: Hypertext
PHP
Preprocessor) (Restructured
Rexx
eXtended eXecutor) (Tool Command
TCL
Language)
VBScript (Visual Basic, Scripting Edition)
Dynamic HTML (DHTML)
Digunakan untuk
- menambahkan grafik dan hal-hal lain agar sebuah halaman web lebih interaktif
XHTML ,
XML , dan WML
XHTML (Extensible HTML) digunakan agar website dapat ditampilkan pada microbrowsers
XHTML
XML
XML (Extensible Markup Language) developer dapat membuat tag sendiri WML WML (Wireless Markup Language) developer dapat mendesain halaman secara khusus untuk microbrowser Termasuk fitur-fitur pada HTML dan XML smart phones dan PDA menggunakan WML Server mengirim seluruh record pada client, membuat client dapat memproses lebih banyak tanpa harus ke server RSS 2.0 dan ATOM
Ajax Singkatan dari Asynchronous JavaScript and XML
- Metode untuk membuat aplikasi web yang lebih interaktif
- serta di desain untuk respon yang lebih cepat Kombinasi dari JavaScript, HTML atau XHTML, XML,
- dan CSS (cascading style sheets) Contoh situs : Google Map dan Flickr
Ruby on Rails (RoR) Disebut juga Rails
- Framework Open source yang menggunakan teknologi
- berorientasi objek, database diatur website Ruby berasal dari beberapa bahasa termasuk Ada, LISP,
- Perl, dan Smalltalk
Software Web page authoring
- Membuat halaman web yang kompleks
- Akan men-generate HTML
Multimedia Software multimedia authoring Mengkombinasikan
- teks, grafik, animasi, audio, dan video menjadi sebuah presentasi yang interaktif Software: Toolbook dan
- Director
Siklus pengembangan program
- Langkah-langkah yang digunakan untuk mengembangakan program
Programming team— beberapa programmber bekerja bersama
Apa saja yang masuk ke analisa permintaan?
1. Review permintaan
2. Bertemu dengan systems analyst dan users
3. Identifikasi komponen input, output, proses, dan data
IPO chart—mengidentifikasi komponen input, proses, dan output
Desain berorientasi Objek Desain berorientasi Objek Desain Desain terstruktur terstruktur , , kadang disebut kadang disebut juga juga top-down top-down design design
2 Pendekatan
2 Pendekatan Rencanakan Rencanakan algoritma algoritma solusi, untuk solusi, untuk menyelesai- menyelesai- kan masalah kan masalah
Programmer Programmer mulai dari desain mulai dari desain yang umum yang umum kemudian beralih kemudian beralih ke desain yang ke desain yang lebih detail lebih detail Apa saja yang termasuk dalam Solusi Desain?
Hierarchy chart
- Menampilkan modul program secara grafis
- Disebut juga structure chart
Desain Berorientasi Objek
- Programmer membuat data dan program menjadi satu paket yang disebut objek
Objek-objek di kelompokkan dalan kelas
Class diagram menunjukkan hubungan tingkatan antar kelas
Struktur Kontrol Berurutan
- Struktur kontrol menunjukkan aksi berantai pada
setiap perintah
Struktur Kontrol menggambarkan logika dari sebuah intruksi program
Struktur Kontrol Pemilihan
- Memerintahkan program aksi mana yang akan dipilih berdasarkan kondisi
Struktur Kontrol Case
Struktur Kontrol If- then-else hanya 2 kemungkinan: benar atau salah
Struktur kontrol Case
- Beberapa kemungkinan
Struktur Kontrol Perulangan
- Program dapat melakukan aksi perulangan
Do-while—akan terus berulang selama kondisi benar
Do-until —akan terus berulang sampai kondisi benar
Flowchart
Menunjukkan algoritma
- program
Contoh Flowchart
Software Flowchart
Pseudocode
Menggunakan bahasa
- inggris yang singkat untuk menunjukkan logika program
Apa yang termasuk dalam Validasi Desain? Programmer mengecek Cek desain program untuk logika untuk membetulkan keakuratan logika yang masih eror Logic error Logic error desain cacat yang menyebabkan hasil tidak Desk check Desk check
akurat programmers menggunakan test data untuk setiap logika Inspeksi system analyst me-review Test data Test data selama masa siklus contoh data yang mirip pengembangan dengan data asli
Implementation
- Mengubah desain menjadi bahasa program
Syntax—aturan bagaimana menuliskan instruksi
Comments—dokumentasi program
- Extreme programming (XP)—coding dan testing secepat
permintaan diberikan
Apa saja yang termasuk dalam tes solusi Debugging —mencari lokasi dan Debugging —mencari lokasi dan Meyakinkan program berjalan Meyakinkan program berjalan
membetulkan kesalahan syntax membetulkan kesalahan syntax benar dan bebas dari eror benar dan bebas dari eror dan logika logic atau bugs dan logika logic atau bugs Test copy dari program, disebut beta , Test copy dari program, disebut beta , kadang digunakan untuk mencari bugs kadang digunakan untuk mencari bugs
Yang masuk ke dalam dokumentasi solusi
- Programmer melakukan 2 aktifitas
Me-Reviews kode program— menhilangkan intruksi kode program yang tidak dipakai(dead code)
Me-Reviews kode program— menhilangkan intruksi kode program yang tidak dipakai(dead code)
Me-Reviews dokumentasi Me-Reviews dokumentasi