Versi 1.0
Tahun Penyusunan 2014
Page 1
KATA PENGANTAR
Page 2
DAFTAR ISI
Daftar isi 3
Pertemuan 1 6
Bahasa Pemrograman 7
Evolusi Bahasa Pemrograman 7
Perkembangan Metode-Metode Pemrograman 9
Paradigma Pemrograman 11
Tipe Eksekusi 12
Tipe Aplikasi 13
Desktop Application vs Web Application 13
Dasar-Dasar Pemrograman 13
Arsitektur Aplikasi 16
Pertemuan 2 18
Pendahuluan 19
Menjalankan Program Delphi 19
Bagian-Bagian Dari Jendela Delphi 21
Mengenal Component, Property, Method, Event 21
Membuat Sebuah Form 22
Menyimpan Form 23
Mengenal Objek I ( Label, Edit, dan Button ) 23
Membuat Aplikasi Salam Kenal 24
Membuat Program Luas Segitiga 25
Page 3
Pertemuan 3 27
Pendahuluan 28
Membuat Program Menggunakan Komponen Radio Button 28
Membuat Program Menggunakan Komponen Combo Box 30
Membuat Program Menggunakan Komponen Check Box 32
Membuat Program Menggunakan Komponen ListBox 34
Pertemuan 4 36
Pertemuan 5 45
Console Application 46
Data Dan Variabel 47
Statements 53
Percabangan 54
Iteration (Looping) Statements 57
Exception Handling Try-Catch 60
GUI Application 60
VB .NET IDE 63
Pertemuan 6 67
Java 68
Java Virtual Machine (JVM) 69
Menginstal Java 70
Menulis Struktur Aplikasi Java 71
Page 4
Mengkompilasi Program 71
Menjalankan Program 72
Memahami Struktur Aplikasi Java 72
Fase – Fase Pemrograman JAVA 73
Pertemuan 7 81
Pertemuan 8 93
Pengenalan PL/SQL 94
Blok PL/SQL 96
Tipe Data Dalam PL/SQL 98
Deklarasi Variable Dalam PL/SQL 100
Menampilkan Output Blok PL/SQL 101
Karakter Set Dan Lexical Unit 102
Penggunaan SQLl Dalam PL/SQL 104
Struktur Kondisi 105
Struktur Kontrol 106
Page 5
Pertemuan 1
Pengantar Pemrograman
Objektif :
Page 6
Bahasa Pemrograman
Bahasa pemrograman, atau sering diistilahkan juga dengan bahasa
komputer atau bahasa pemrograman komputer, adalah instruksi standar untuk
memerintah komputer. Bahasa pemrograman ini merupakan suatu himpunan dari
aturan sintaks dan semantik yang dipakai untuk mendefinisikan program komputer.
Bahasa ini memungkinkan seorang programmer dapat menentukan secara persis data
mana yang akan diolah oleh komputer, bagaimana data ini akan disimpan/diteruskan,
dan jenis langkah apa secara persis yang akan diambil dalam berbagai situasi.
Menurut tingkat kedekatannya dengan mesin komputer, bahasa pemrograman
terdiri dari:
1. Bahasa Mesin, yaitu memberikan perintah kepada komputer dengan memakai
kode bahasa biner, contohnya 01100101100110
2. Bahasa Tingkat Rendah, atau dikenal dengan istilah bahasa rakitan (bah.Inggris
Assembly), yaitu memberikan perintah kepada komputer dengan memakai kode-
kode singkat (kodemnemonic), contohnya MOV, SUB, CMP, JMP, JGE, JL,
LOOP, dsb.
3. Bahasa Tingkat Menengah, yaitu bahasa komputer yang memakai campuran
instruksi dalam kata-kata bahasa manusia (lihat contoh Bahasa Tingkat Tinggi di
bawah) dan instruksi yang bersifat simbolik, contohnya {, }, ?, <<, >>, &&, ||,
dsb.
4. Bahasa Tingkat Tinggi, yaitu bahasa komputer yang memakai instruksi berasal
dari unsur kata-kata bahasa manusia, contohnya begin, end, if, for, while, and,
or, dsb.
Sebagian besar bahasa pemrograman digolongkan sebagai Bahasa Tingkat
Tinggi, hanya bahasa C yang digolongkan sebagai Bahasa Tingkat Menengah dan
Assembly yang merupakan Bahasa Tingkat Rendah.
Page 7
Generasi Pertama
Bahasa Mesin adalah bahasa generasi pertama (1GL). Pertama kali digunakan di
akhir dekade 40-an yaitu di masa awal komputer generasi pertama diciptakan. Bahasa
mesin ditulis dalam biner. Urutan instruktsi yang ditulis dalam bahasa mesin disebut
kode mesin. Untuk menulis sebuah program, programer harus mengetahui set
instruksi yang tersedia pada prosesor dari komputer yang akan digunakan. Satu
keuntungan dari sebuah program yang ditulis dalam bahasa mesin adalah ia dapat
dieksekusi dengan sangat cepat karena tidak memerlukan penerjemahan.
Generasi Kedua
Programer menyadari bahwa mereka perlu melakukan sesuatu agar lebih mudah
memprogram komputer. Oleh karena itu mereka membuat bahasa yang sedikit lebih
baik yang disebut bahasa rakitan (assembly), yang dikenal sebagai bahasa generasi
kedua (2GL). Bahasa assembly memungkinkan penggunaan kata dan angka desimal
atau yang dikenal dengan istilah mnemonic symbol.
Untuk dapat dieksekusi, program dalam bahasa assembly harus diterjemahkan
menjadi bahasa mesin menggunakan translator yang disebut assembler. Program
yang ditulis dalam bahasa assembly disebut kode sumber.
Generasi Ketiga
Bahasa generasi ketiga (3GL) menggunakan perintah yang tidak dikhususkan
untuk prosesor tertentu. Kode sumber diterjemahkan oleh sebuah compiler menjadi
kode mesin. Pemisahan pemrograman dan instruksi mesin memungkinkan program
untuk berjalan pada komputer-komputer yang berbeda sepanjang ada sebuah
compiler yang dapat mengkonversi bahasa ke dalam kode mesin untuk komputer
tersebut.
Bahasa generasi ketiga mempunyai aturan yang sangat spesifik yang disebut
sintaks. Ejaan dan pemberian tanda baca harus benar, dan perintah dibatasi pada
kumpulan kata yang telah ditentukan atau yang disebut statement. Bila ada aturan
sintaks yang dilanggar, compiler mengeluarkan sebuah laporan kesalahan. Kesalahan
disebut bug, dan perbaikan kesalahan disebut debugging.
Bahasa generasi ketiga adalah bahasa prosedural dimana programer memberikan
satu set instruksi yang spesifik tentang bagaimana menangani data dan pemrosesan.
Contoh 3GL yang populer adalah FORTRAN, COBOL, BASIC, C, C++, Pascal,
dan lain-lain.
Page 8
Generasi Keempat
Bahasa generasi keempat (4GL) dapat digunakan oleh para programer non pakar
dan pakar untuk bekerja dengan aplikasi spesifik seperti basis data. 4GL lebih dekat
dengan bahasa sehari-hari manusia dibanding dengan 3GL, tetapi memerlukan sintaks
yang tegas. Bahasa-bahasa tersebut adalah non prosedural, yang artinya instruksi
terperinci tentang bagaimana menyelesaikan tugas tidak turut dimasukkan. Karena
itu, sangat sedikit kode yang diperlukan untuk menyelesaikan tugas yang sama.
Permintaan informasi dari suatu basis data disebut query, dan bahasa standar
untuk penulisan query adalah Structure Query Language (SQL).
4GL mempunyai beberapa dari, atau bahkan semua, sifat berikut :
Bekerja dengan struktur dan pemrograman basis data
Menawarkan pemrograman visual dengan menggunakan ikon-ikon yang
diposisikan dengan sebuah alat penunjuk (pointing device) seperti mouse.
Kalangan awam/pemula dan pakar dapat menggunakannya
Menawarkan lingkungan pemrograman yang interaktif dan multifungsi
Ciri lain dari suatu 4GL, dapat dilihat dari kemampuannya dalam
membangkitkan aplikasi (Application Generator). 4GL ini memiliki komponen-
komponen yang memudahkan pengguna dalam mengembangkan suatu aplikasi,
sebagai berikut :
Data specification, untuk menentukan struktur data yang akan digunakan
Screen specification, untuk menentukan bentuk tampilan aplikasi
Report specification, untuk menentukan bentuk dan spesifikasi laporan
Dialog specification, untuk menentukan interaksi manusia dengan komputer
Fasilitas prosedural, memungkinkan menyusun dan merangkai komponen di atas
dalam struktur program yang ditentukan oleh : loop, kondisi, dan lain-lain.
Contoh 4GL adalah SQL, PL/SQL, Visual Basic, Borland Delphi, dan lain-lain.
Generasi Kelima
Bahasa generasi kelima (5GL) mirip dengan 4GL, yang menggunakan sebuah
sistem berbasis pengetahuan, yang dapat menginterpretasikan instruksi-instruksi
dalam sebuah cara yang menyerupai manusia. Secara umum 5GL tidak didefinisikan
dengan ketat. Umumnya digunakan untuk aplikasi kecerdasan buatan. Contoh bahasa
5GL diantaranya adalah Prolog.
Bahasa generasi ketiga, keempat, dan kelima ini dikategorikan sebagai High
Level Language, sementara generasi pertama dan kedua disebut Low Level Language.
Page 9
Perkembangan Metode-Metode Pemrograman
Seiring dengan berkembangnya bahasa pemrograman, berkembang pula metode-
metode dalam melakukan pemrograman. Khususnya sejak berkembangnya bahasa
generasi ketiga. Berikut ini disampaikan beberapa perkembangan penting terkait
dengan metode-metode pemrograman.
Instruksi GOTO
Sebuah fitur penting dari suatu program adalah kemampuannya untuk
melakukan operasi berbeda berdasarkan kondisi-kondisi tertentu. Ini disebut
branching atau percabangan. Bahasa 3GL pertama pada 1950-an dan 1960-an seperti
FORTRAN, COBOL dan BASIC menggunakan operasi IF kondisional
dikombinasikan dengan perintah GOTO, yang memindahkan kontrol ke suatu bagian
program yang berbeda. Metode ini membuat program menjadi terlihat rumit,
sehingga sulit untuk diikuti. Program-program yang menggunakan statement GOTO
yang sulit diikuti sering disebut spaghetti code oleh para programer yang frustasi,
karena mengikuti logika mereka seperti melacak satu bakmi dalam piring spaghetti.
Pemrograman Terstruktur
Pada akhir 1960-an para programer setuju untuk meninggalkan statement GOTO
dan menggunakan blok perintah seperti IF - THEN - ELSE atau DO - WHILE, yang
dapat menangani berbagai kondisi yang berbeda pada satu lokasi dalam program.
Metode ini disebut pemrograman terstruktur.
Pemrograman Modular
Programer mulai menuliskan prosedur atau sub rutin program yang digunakan
berulang-ulang, dalam sebuah file terpisah, yang bisa di-copy ketika diperlukan.
Praktik ini meluas ke dalam sebuah metode yang disebut pemrograman modular.
Pada metode ini program dapat terdiri dari file program utama dan file modular.
Penulisan blok kode program untuk menangani prosedur-prosedur standar dalam file
terpisah ini disebut information hiding (penyembunyian informasi). Dengan cara ini
programer dapat berbagi modul. Programer dapat melakukan pemanggilan nama
prosedur yang ada dalam modul, tanpa perlu mengetahui apa yang terjadi dalam
prosedur tersebut. Hal ini secara signifikan meningkatkan produktivitas programer,
menghemat waktu dan mengurangi kesalahan. Di kemudian hari modul-modul
terpisah yang dapat berbagi pakai ini disebut library (pustaka). Bahasa 3GL yang
muncul setelah tahun 1970-an menyediakan sejumlah library yang dapat
dimanfaatkan oleh programer dalam membuat aplikasi.
Page 10
Event-Driven
Metode ini dikenal melalui bahasa pemrograman Visual Basic, yang
dikembangkan oleh Microsoft pada tahun 1987. Bahasa ini dikembangkan untuk
mempermudah para pengembang/programer untuk menggunakan fitur standar
Windows (yang dikenal dengan istilah widget), seperti tombol, kotak dialog, scroll
bar, dan menu. Masing-masing widget ini bisa berisi ratusan baris kode, tetap
programer dapat menggabungnya dengan hanya menyeret (drag) sebuah ikon ke
layar di lokasi yang diinginkan dan kemudian menggambarkan hasil yang diinginkan
dari penggunaan ikon tersebut. Cara ini sering disebut dengan visual programming
(pemrograman visual). Pengguna dapat memilih untuk klik tombol atau memasukkan
data di dalam sebuah kotak dialog ketika ia memilih. Meng-klik sebuah tombol, atau
memilih kotak dialog adalah event, dan program dikendalikan oleh event (event
driven). Baris program dituliskan pada event-event yang tersedia bersama dengan
widget-widget tersebut. Ketika sebuah event terjadi, maka program akan
mengekskusi baris-baris kode yang terdapat pada event tersebut. Metode ini banyak
digunakan pada 4GL.
Scripting Language
Hadirnya Internet memunculkan variasi dari bahasa-bahasa bertujuan khusus
(special purpose). Bahasa yang banyak digunakan untuk membuat situs web yang
dinamis disebut bahasa skrip. Contohnya Perl, PHP, ASP, TCL, JavaScript, dan lain-
lain.
Paradigma Pemrograman
Page 11
Paradigma Pemrograman adalah suatu pendekatan mengenai bagaimana bahasa
pemrograman digunakan untuk memecahkan masalah. Paradigma pemrograman
mempengaruhi cara programer menyusun struktur dan unsur-unsur dari suatu
program aplikasi.
Dalam kesempatan ini, hanya akan dibahas 2 paradigma pemrograman yaitu
Procedural dan Object Oriented.
Procedural
Paradigma procedural mengkonstruksi program sebagai urut-urutan langkah atau
prosedur tentang bagaimana memecahkan masalah. Urut-urutan langkah dalam
memecahkan masalah ini disebut algoritma. Kode program merupakan implementasi
algoritma dalam suatu bahasa pemrograman. Kode program dieksekusi secara
sekuensial. Sebagai ilustrasi, jika ingin membuat program untuk menghitung luas
persegi panjang, maka penyelesaiannya adalah dengan menyusun langkah-langkah
mulai dari menentukan masukan, bagaimana memasukkan nilai data panjang dan
lebar, proses menghitung luas, dan menampilkan hasilnya. Kode program yang
dibuat, akan secara langsung merepresentasikan langkah-langkah tersebut dalam
bahasa pemrograman yang digunakan. Bisa dikatakan dalam paradigma procedural
ini, sebuah program adalah algoritma + data.
Object Oriented
Pada paradigma object oriented, program didesain sebagai pendefinisian objek-
objek yang diperlukan dan bagaimana menggunakannya untuk memecahkan masalah.
Sebagai ilustrasi, jika ingin membuat program untuk menghitung luas persegi
panjang, maka penyelesaiannya adalah dengan mendefinisikan terlebih dahulu
persegi panjang sebagai sebuah objek yang memiliki atribut panjang dan lebar, serta
memiliki operasi menghitung luas. Implementasinya dalam bahasa pemrograman,
programmer akan membuat kode program untuk mendefinisikan persegi panjang
sebagai sebuah objek, kemudian programer akan membuat kode program untuk
menyatakan cara menggunakan objek persegi panjang dengan memanggil operasi-
operasi yang telah didefinisikan sebelumnya dalam objek tersebut.
Tidak semua bahasa pemrograman mendukung kedua paradigma ini. Bahasa
generasi ketiga umumnya procedural. Namun versi-versi terakhir dari beberapa
bahasa seperti Pascal , C++ sudah mendukung paradigma berorientasi objek. Tanda
++ pada C++ menunjukkan bahwa bahasa ini dikembangkan dari bahasa C yang
ditambahkan fitur agar dapat mengimplementasikan paradigma berorientasi objek.
Page 12
Tipe Eksekusi
Ditinjau dari cara sebuah program dieksekusi, maka setidaknya terdapat 3 tipe
sebagai berikut :
Compiled, kode sumber dikonversi menjadi kode mesin oleh sebuah compiler,
sebelum program dijalankan. Contoh : Pascal, C, C++, FORTRAN, dll.
Interpreted, kode sumber dikonversi menjadi kode mesin pada saat runtime
(program dijalankan) oleh sebuah program eksternal yang disebut interpreter.
Contoh : BASIC, SQL, dan lain-lain.
Framework / Virtual Machine, kode sumber dikonversi menjadi bahasa antara,
untuk kemudian diinterpretasi oleh sebuah interpreter. Pada tipe ini kode sumber
dikompilasi dan kemudian diinterpretasi oleh sebuah program yang disebut
virtual machine atau framework. Contoh : Java, Visual Basic .NET.
Tipe Aplikasi
Program aplikasi saat ini berjalan di atas sebuah sistem operasi. Ditinjau dari
segi tampilan antarmukanya, sistem operasi menyediakan dua modus interaksi yang
dapat digunakan oleh penggunanya yaitu :
Command Line Interface (CLI), yaitu antarmuka berbasis teks, seperti yang dapat
ditemuan pada sistem operasi UNIX, DOS, dan lainnya.
Graphical User Interface (GUI), yaitu antarmuka berbasis grafis yang ditandai
dengan penggunaan Window, Icon, Mouse dan Pulldown menu (WIMP).
Antarmuka ini digunakan sebagai antarmuka utama pada sistem operasi
Windows dan MacOS. Namun sistem operasi berbasis UNIX terutama Linux
juga menyediakan antarmuka ini sebagai pilihan.
Page 13
Desktop Application vs Web Application
Selain terminologi di atas, terdapat terminologi lain yang menunjukkan adanya
tipe aplikasi yang berbeda yaitu Desktop Application (Aplikasi Desktop) dan Web
Application (Aplikasi Web) atau Web Based Application (Aplikasi berbasis web).
Desktop Application adalah aplikasi yang berjalan secara stand-alone pada sebuah
desktop komputer. Sementara Web Application adalah aplikasi yang memerlukan
sebuah Web Browser (seperti Internet Explorer, Mozilla Firefox, Google Chrome, dll)
untuk dapat menjalankannya.
Dasar-Dasar Pemrograman
Dasar-dasar pemrograman yang dimaksud adalah fitur-fitur dasar yang
umumnya terdapat pada suatu bahasa pemrograman. Dengan memahami hal ini,
memudahkan programer dalam mempelajari suatu bahasa pemrograman.
Syntax (Sintaks)
Sintaks adalah sekumpulan aturan yang mengkombinasikan symbol dan tata cara
penulisan untuk mendefinisikan struktur program yang legal. Sintaks dapat dikatakan
sebagai Grammer dalam suatu bahasa. Ia mengatur tata cara bagaimana sebuah
‘statement’ disusun sehingga menjadi program yang valid dan dapat
dikompilasi/diinterpretasi. Setiap bahasa pemrograman memiliki sintaks masing-
masing.
Page 14
Selain tipe data sederhana, terdapat pula tipe data kompleks, atau yang sering
disebut dengan struktur data, seperti :
- Array, set item data sejenis yang disusun secara baik menjadi satu rangkaian dan
diacu atau ditunjuk oleh satu identifier (penunjuk).
- String, rangkaian karakter yang ditangani sebagai satu unit data tunggal
- Dan lain-lain
Expression (Ekspresi)
Ekspresi adalah sebuah cara untuk merepresentasikan operasi terhadap berbagai
tipe data atau variable. Operasi meliputi operasi aritmatika, operasi relasional
(perbandingan/komparasi), operasi string, operasi logika, dan lain-lain. Setiap bahasa
pemrograman menyediakan ekspresi dalam berbagai variasi sesuai dengan tipe data
yang mereka miliki.
Input / Output
Input adalah metode yang digunakan untuk memberikan informasi kepada
program. Dapat dilakukan melalui :
- Command line arguments (argument yang mengikuti baris perintah pada CLI)
- File input
- Sockets (input yang berasal dari jaringan)
Output adalah metode yang digunakan untuk mendapatkan informasi dari sebuah
progam. Dapat dilakukan melalui :
- Layar / Monitor
- Printer
Page 15
- File output
- Sockets
Struktur Kendali
Struktur kendali menunjukkan bagaimana alur eksekusi dari suatu program.
Terdapat 3 struktur kendali yang umum :
- Sequence. Alur program mengalir dari atas ke bawah secara berurutan.
- Decision. Alur program mengalir dari atas ke bawah, pada satu titik bertemu
dengan kondisi yang akan menyebabkan alur program menjadi bercabang.
- Loop. Alur program mengalir dari atas ke bawah, pada satu titik kembali ke atas
sesuai kondisi yang ditemukan.
Procedure / Function
Sebuah program dapat memiliki tugas spesifik yang sering dieksekusi secara
berulang. Tugas spesifik ini dapat ditulis dalam baris terpisah dan dinamakan sebagai
sub rutin. Sub rutin dapat dipanggil dari program utama, dengan menyertakan data
yang berbeda. Terdapat 2 jenis sub rutin yaitu :
- Procedure, sub program yang dapat memiliki satu atau lebih nilai balik (return
value) atau tidak sama sekali.
- Function, sub program yang harus memiliki satu nilai balik (return value).
Pada bahasa pemrograman berorientasi objek, kedua jenis sub rutin ini disebut
method. Pada pendeklarasian method, dapat dinyatakan apakah sebuah method
memiliki nilai balik atau tidak.
Dependencies / Libraries
Sejak diperkenalkan pemrograman modular, bahasa pemrograman menyediakan
kode-kode program dalam bentuk procedure atau function untuk melaksanakan tugas
tertentu, yang diorganisasikan sesuai dengan kesamaan fungsinya dalam suatu unit
program yang disebut library (pustaka). Untuk menggunakan procedure atau function
tersebut, pada program utama perlu dinyatakan nama kelompok pustaka yang
mengandung procedure atau function yang akan digunakan.
Class (Kelas)
Class adalah suatu struktur program dalam pemrograman berorientasi objek
yang terdiri dari atribut (property) dan operasi (method) yang merepresentasikan
suatu objek tertentu. Ia merupakan template atau cetak biru dari suatu objek. Atribut
Page 16
merepresentasikan karakteristik dari suatu objek, sementara operasi menunjukkan
operasi apa saja yang dapat berlaku pada objek tersebut.
Arsitektur Aplikasi
Arsitektur aplikasi menunjukkan bagaimana suatu aplikasi diorganisasikan.
Aplikasi secara logis dapat didistribusikan kepada beberapa lapisan atau layer.
Lapisan aplikasi secara logis dapat berupa :
- Presentation layer, yaitu lapisan yang diakses secara langsung oleh user, seperti
tampilan antarmuka desktop, halaman web, dan lain-lain.
- Application layer. Lapisan ini berisi business logic seperti validasi data, aturan
pengaksesan, dan lain-lain yang merepresentasikan inti proses bisnis dari suatu
aplikasi. Sering disebut juga middle layer.
- Data layer (resource management layer), yaitu sumber data eksternal untuk
menyimpan data dari suatu aplikasi. Dapat berupa server basis data, sistem
CRM, sistem ERP, mainframe, atau lainnya.
Setiap lapisan ini dapat berada pada lokasi fisik yang sama maupun berbeda yang
dikenal dengan sebutan Tier. Sebuah aplikasi dapat dikembangkan untuk dapat
dijalankan pada satu dari beberapa arsitektur berikut :
- Arsitektur 1-Tier. Semua lapisan dari aplikasi hanya dapat berjalan pada satu
komputer.
- Arsitektur 2-Tier. Presentation layer dan middle layer berjalan pada satu
komputer, data layer berjalan pada komputer yang berbeda. Atau middle layer
dan data layer berjalan pada satu komputer, sementara presentation layer
berjalan pada komputer yang berbeda.
- Arsitektur 3-Tier. Masing-masing lapisan berjalan pada komputer yang berbeda.
- Arsitektur N-Tier. Beberapa lapisan pada 3-Tier dapat dipecah lagi menjadi
beberapa lapisan, dan masing-masing lapisan tersebut berjalan di komputer yang
berbeda.
Page 17