Dasar Komputer dan Pemrograman
Bahasa
Pemrograman
Kartika Firdausy - UAD kartika@ee.uad.ac.id blog.uad.ac.id/kartikaf
Setelah mempelajari materi ini, mahasiswa diharapkan mampu:
Dasar Komputer dan Pemrograman
¾ Serangkaian instruksi yang mengarahkan komputer untuk menjalankan tugas-tugas tertentu
Bahasa Pemrograman
digunakan untuk menuliskan instruksi
Program Komputer
Bahasa
Pemrograman
Bahasa tingkat tinggi(high-level)
Bahasa Tingkat rendah
(low-level)
Machine-dependent berjalan pada komputer
dengan tipe tertentu
biasanya machine-independent dapat berjalan pada komputer
dengan berbagai tipe
Bahasa Mesin
Dasar Komputer dan Pemrograman
Bahasa Tingkat Rendah
Bahasa mesin
(machine language)
¾ Bahasa yang langsung dimengerti oleh komputer
¾ Menggunakan deretan digit biner (0 dan 1) dengan kombinasi angka dan huruf yang menunjukkan digit biner
Bahasa Assembly
(assembly language)
¾ Instruksi yang disusun oleh kode simbolis, singkatan dan kode dengan makna tertentu
Dasar Komputer dan Pemrograman
sering disebut third-generation language (3GL)
Procedural Languages
Instruksi ditulis menggunakan deretan kata
mirip kata-kata dalam Bahasa Inggris Programmer menuliskan
instruksi sehingga komputer mengetahui apa yang harus dikerjakan dan bagaimana
cara mengerjakannya
Compiler
¾ Program yang mengkonversi source program secara
Dasar Komputer dan Pemrograman
Interpreter
¾ Program yang
menerjemahkan dan melakukan eksekusi kode program sekaligus
¾ Tidak menghasilkan object program
¾ Contoh: PHP
COBOL
¾ Didesain untuk aplikasi bisnis
¾ Pernyataan mirip bahasa Inggris sehingga kode program mudah dibaca, ditulis dan dikelola
Dasar Komputer dan Pemrograman
Bahasa C
¾ powerful
¾ awalnya dipakai untuk membuat perangkat lunak sistem
¾ membutuhkan skill pemrograman profesional
Object-Oriented Programming (OOP) Languages
Bahasa Pemrograman Object-Oriented
untuk
mengimplementa-sikan desain object-oriented
Keuntungan: object yang sudah ada dapat
digunakan lagi
Event
Event--driven—driven
memeriksa dan merespon events
C++ dan Java adalah bahasa object-oriented Object
terdiri dari data dan prosedur
Event adalah aksi
sebagai respon dari
Dasar Komputer dan Pemrograman
Java
¾ Dikembangkan oleh Sun Microsystems ¾ Pengembangan dari
C++
¾ Menggunakan just-in-time (JIT) compiler untuk konversi source code ke kode mesin
C++
¾ semua elemen C
¾ dengan fitur tambahan untuk mendukung konsep OOP
Dasar Komputer dan Pemrograman
C#
¾ Bahasa pemrograman object-oriented berbasis pada C++
¾ Menjadi standar aplikasi Web dan Web services berbasis XML
¾ menggunakan JIT compiler
¾ Menghasilkan kode yang disebut Microsoft Intermediate Language (MSIL)
Visual Programming Language
Programmer menulis dan mengimplementasikan program dalam
segmen-segmen Visual programming
environment (VPE) drag dan drop object
untuk membangun program
Sering digunakan pada
Sering digunakan pada RAD (rapid application
development)
juga disebut
juga disebut
fifth-generation language
interface visual/grafis untuk membuat source
Dasar Komputer dan Pemrograman
Visual Studio 2005
¾.NET adalah teknologi yang memungkinkan program berjalan di Internet
¾Visual Basic 2005, Visual C++ 2005, Visual C# 2005, and Visual J# 2005
Step 1. mendesain user interface.
Step 2.menentukan properties untuk tiap object dalam form.
Step 3. menuliskan kode untuk mendefinisikan aksi setiap tombol command Step 4.pengujian
program
Delphi
¾ Powerful visual programming tool ¾ Ideal digunakan untuk skala besar dan
Dasar Komputer dan Pemrograman
PowerBuilder
¾ powerful visual programming tool ¾ sesuai untuk aplikasi berbasis Web dan
object-oriented berskala besar
Bahasa Nonprosedural
dan Program Development Tools
Nonprocedural Language
memakai instruksi mirip Bahasa Inggris atau berinteraksi dengan visual
environment untuk mengambil data dari file
atau basis data
Program Development Tools
Program yang user-friendly didesain untuk membantu
Dasar Komputer dan Pemrograman
RPG (
Report Program Generator
)
¾ Bahasa nonprosedural yang digunakan untuk membuat laporan, menampilkan komputasi, dan update file
Fourth-generation language (4GL)
¾ Bahasa nonprosedural yang memungkinkan untuk mengakses data dalam basis data ¾ SQL, bahasa query language yang digunakan
Dasar Komputer dan Pemrograman
Bahasa Pemrograman Lainnya
ALGOL
ALGOL
ADA
ADA APLAPL
BASIC
BASIC FORTHFORTH FORTRANFORTRAN HYPERTALKHYPERTALK
LISP
LISP LOGOLOGO MODULA-MODULA-22
PASCAL
PASCAL PILOTPILOT PL/1PL/1 PROLOGPROLOG
SMALLTALK
SMALLTALK
Program Development Tools
Application generator
¾ Program yang membuat source code dan kode mesin dari spesifikasi form
¾ Terdiri dari report writer, form, dan menu generator
Dasar Komputer dan Pemrograman
Program Development Tools Lainnya
Visual Basic for Applications (VBA)
¾ Macro programming language
Macro—deretan pernyataan yang digunakan untuk otomatisasi perintah
Web Page Development
HTML (Hypertext Markup Language
)
Dasar Komputer dan Pemrograman
Web Page Development
Menambahkan special effects dan elemen interaktif pada sebuah halaman Web
Counter Counter mencatat jumlah pengunjung Image Image map map grafis yang menunjuk URL Script Script jalan di sisi klien, perlu interpreter
Applet
Applet jalan di sisi klien, perlu kompilasi Processing Processing form form mengumpul-kan data dari
pengunjung Servlet Servlet applet yang berjalan pada sisi server ActiveX ActiveX control control program kecil yang berjalan di sisi klien
Web Page Development
Common Gateway Interface (CGI)
¾ Standar yang
mendefinisikan cara server Web
berkomunikasi dengan sumber luar
Dasar Komputer dan Pemrograman
Bahasa Scripting
¾ Mudah dipelajari dan digunakan
JavaScript— memberi isi dinamis dan elemen interaktif pada halaman Web
Perl(Practical Extraction and Report Language)—memiliki kemampuan pemrosesan teks yang andal
VBScript(Visual Basic, Scripting Edition)— memberi kecerdasan dan membuat halaman Web interaktif
Dynamic HTML (DHTML)
Dasar Komputer dan Pemrograman
XHTML, XML, and WML
XHTML (Extensible HTML)
XML
(Extensible Markup Language)
memungkinkan developer untuk membuat tag sendiri
WML
WML
(
(WWireless ireless MMarkup arkup LLanguage)anguage)
Terdiri dari fitur-fitur HTML dan XML
PDA dan smart phones banyak yang memakai WML
Server mengirim semua record sehingga klien dapat
melakukan proses lebih lanjut tanpa perlu kembali ke
server
Programming Languages
Ajax
¾ Asynchronous JavaScript and XML ¾ metode membuat apikasi Web interaktif
Dasar Komputer dan Pemrograman
FrontPage Flash
MX
Web Page Development
Web page authoring software
¾ Membuat halaman Web yang canggih tanpa menggunakan HTML
¾ membangkitkan HTML Dreamweaver
MX
Multimedia Program Development
multimedia authoring software
¾ Kombinasi teks, grafis, animasi, audio, dan video untuk presentasi interaktif
¾ Memakai computer-based training (CBT) dan Web-based training (WBT)
Dasar Komputer dan Pemrograman
Program Development Cycle
¾ Langkah-langkah dalam membangun program komputer
Programming team— sekelompok programmer yang terlibat dalam pengerjaan program
Step 1 — Analyze Requirements
Analisis Kebutuhan:
1. Review kebutuhan
2. Bertemu analis sistem dan user
3. Identifikasi input, output, proses, and komponen data
Tabel IPO —
Dasar Komputer dan Pemrograman
Programmer
Programmer
mulai dengan desain umum,
mulai dengan desain umum,
kemudian desain rinci
kemudian desain rinci
Step 2 — Design Solution
Desain object Desain object--orientedoriented
Structured Structured
design design, , desain
desaintoptop--downdown Dua Dua pendekatan pendekatan Susun Susun algoritma algoritma penyelesaian, penyelesaian, prosedur prosedur langkah demi langkah demi langkah untuk langkah untuk menyelesaikan menyelesaikan problem problem
Step 2 — Design Solution
Hierarchy Chart
¾ Tampilan grafis modul program
Dasar Komputer dan Pemrograman
Step 2 — Design Solution
Object-oriented (OO) design
¾ Programmer mengemas data dan procedure ke dalam satu kesatuan, yang disebut object
Objects dikelompokkan ke dalam kelas-kelas (classes)
Diagram kelas (class
diagram) merepresentasikan relasi hirarkis kelas
Step 2 — Design Solution
Struktur kontrol sekuensial (sequence control structure)
¾ Aksi berurutan
Control structure
Dasar Komputer dan Pemrograman
Step 2 — Design Solution
Selection control structure
¾ Aksi berdasarkan kondisi
¾ Ada dua tipe
1. Case control structure 2.If-then-else control structure
memberikan 2 kemungkinan: true or false
Step 2 — Design Solution
Dasar Komputer dan Pemrograman
Step 2 — Design Solution
Repetition control structure (perulangan)
¾ Menjalankan satu atau lebih aksi secara berulang
Do-while control structure— perulangan selama kondisitrue
Do-until control structure— perulangan sampai kondisi true
Step 2 — Design Solution
Flowchart Program
Dasar Komputer dan Pemrograman
Step 2 — Design Solution
Contoh flowchart
Step 2 — Design Solution
Flowcharting softwareDasar Komputer dan Pemrograman
Step 3 — Validate Design
Validasi rancangan
Cek akurasi rancangan program
Logic error
Logic error menyebabkan hasil yang
tidak akurat
Test data
Test data sampel data yang mirip
dengan data riil
Pemeriksaan logika dan koreksi logic errors
Desk check Desk check
menggunakan data uji
(test data)
Inspection Inspection
analis sistem melakukan review hasil yang diperoleh selama system development
cycle
Step 4 — Implement Design
Implementasi
¾ Menulis kode program, menerjemahkan rancangan ke dalam program
Dasar Komputer dan Pemrograman
Step 5 — Test Solution
Memastikan bahwa
Memastikan bahwaprogram program berjalan dengan benar dan bebas
berjalan dengan benar dan bebas
error (
error (errorerrorfree)free)
Debugging
Debugging——menemukan dan menemukan dan
mengoreksi syntax
mengoreksi syntaxdandanlogic logic errors
errors((bugs)bugs)
Menguji copy
Menguji copyprogramprogram, ,
disebut
disebutbetabeta, , kadang kadang digunakan untuk
digunakan untuk
menemukan bug
menemukan bug
Step 6 — Document Solution
¾ Programmer melakukan dua aktivitas
Melakukan review kode program—menghapus
dead code, instruksi program yang tidak
pernah dieksekusi Melakukan review
Dasar Komputer dan Pemrograman
Referensi
Firdausy, K., 2008, Hand Out Mata Kuliah Dasar Komputer dan Pemrograman, Teknik Elektro, Universitas Ahmad Dahlan, Yogyakarta
Shelly & Cashman,Discovering Computers 2007
Indonesia e-Learning & Distance Learning Community on the Computer Science & Information Technology