Lecture-03a
|------ Fakultas Teknologi Industri ----à
|------- Universitas Ahmad Dahlan ----à
Petunjuk/Teknik Pemrograman Visual (Delphi) Konvensi Penamaan Identifier, Tipe Data, Operator, Struktur Keputusan (Pernyataan Kondisional), Pernyataan Perulangan, Sub Program, Komentar Program, Membuat Aplikasi Baru.
Ali Tarmuji, S.T.
Teknik Informatika
1
Teknik Informatika – FTI – UAD
Konvensi Penamaan Identifier Membahas tentang: Dasar pertimbangan penamaan Aturan dasar penamaan Contoh penamaan komponen Contoh desain form
Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
2
Teknik Informatika – FTI – UAD
Dasar pertimbangan ³ Yg perlu nama: †variabel, † konstanta, † fungsi, † prosedur, † tipe (type), † properti, † library, † komponen, † paket komponen, † dll. Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
3
Teknik Informatika – FTI – UAD
Aturan dasar penamaan ³ diawali dengan karakter alfabet (huruf) atau garis
bawah,harus unik, tidak boleh ada yg sama pada satu ruang lingkup,
³ Maksimal 255 karakter pertama, selebihnya diabaikan, ³ Karakter2 khusus yg sdh dipakai utk operator, titik, titik dua, titik koma, spasi, dan tanda khusus lainnya tidak diijinkan digunakan karena ada pertimbangan khusus,
³ tidak boleh sama dengan kata tercadang (keyword), ³ Nama pengenal (variabel, konstanta, dan lainnya)
sebaiknya mencerminkan isi dari pengenal, sehingga mudah untuk diingat,
³ Nama pengenal untuk komponen sebaiknya
menggunakan nama dengan awalan singkatan dari PV-Lecture-03a, Gasal 2006 nama komponen tersebut.
Ali Tarmuji, S.T.
4
Teknik Informatika – FTI – UAD
Contoh awalan u/ komponen Komponen
Awalan
Komponen
Awalan
Frames
fra
MainMenu
mm
PopUpMenu
pum
Label
lbl
Edit
Ed
Memo
mem
Button
btn
CheckBox
chk
RadioButton
rdbtn
ComboBox
cbo
ListBox
lst
HscrollBar
hsb
VscrollBar
vsb
GroupBo
gb
RadioGroup
rg
Panel
pnl
BitBtn
bbtn
SpeedButton
spbtn
MaskEdit
med
StringGrid
strgrd
Image
img
Timer
tmr
DataSource
ds
Table
tb
Query
q
DBGrid
dbg
Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
5
PV-Lecture-03a, Gasal 2006
6
Teknik Informatika – FTI – UAD
Contoh desain form
Ali Tarmuji, S.T.
Teknik Informatika – FTI – UAD
Komponen yg terlibat 4 komponen Label (utk label Judul, NIM, Nama, dan Prodi) 3 komponen Edit (utk penyimpan NIM, Nama, dan Prodi) 2 komponen Button (utk proses Simpan dan Keluar) Properti Komponen
Properti Caption
Name Label1
lblJudul
DAFTAR MAHASISWA
Label2
lblNIM
NIM :
Label3
lblNama
Nama Mahasiswa :
Label4
lblProdi
Program Studi :
Button1
btnSimpan
&Simpan
Button2
btnKeluar
&Keluar
Ali Tarmuji, S.T.
Kompon en
Text Name
Edit1
eNIM
Edit2
eNama
Edit3
eProdi
Dikosongkan dengan cara posisikan kursor pd nilai text di jendela OI lalu tekan Del pada isi properti Text
PV-Lecture-03a, Gasal 2006
7
Teknik Informatika – FTI – UAD
Tipe data dlm Delphi ³ simple (tipe sederhana): † ordinal:
ž integer ž character ž Boolean ž enumerated ž subrange
† real (float, double, dll)
³ string ³ structured (tipe terstruktur): † set † array † file † class † class reference † interface
³ pointer ³ procedural ³ variant Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
8
Teknik Informatika – FTI – UAD
Jangkauan memori tipe data Tipe Integer Cardinal
Memori
Jangkauan
4 byte
(–2147483648..2147483647)
4 byte
Tipe
Memori
Jangkauan
Real48
6 byte
2.9 x 10–39 .. 1.7 x 1038
Single
4 byte
1.5 x 10–45 .. 3.4 x 1038
Double
8 byte
5.0 x 10–324 .. 1.7 x 10308
Extended
10 byte
3.6 x 10–4951 .. 1.1 x 104932
Comp
8 byte
–263+1 .. 263 –1
Currency
8 byte
–922337203685477.5808.. 922337203685477.5807
Real
8 byte
5.0 x 10–324 .. 1.7 x 10308
(0..4294967295)
Shortint
1 byte
(–128..127)
Smallint
2 byte
(–32768..32767)
Longint
4 byte
(–2147483648..2147483647)
Int64
8 byte
(–263..263–1)
Byte
1 byte
(0..255)
Word
2 byte
(0..65535)
Longword
4 byte
(0..4294967295)
Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
9
Teknik Informatika – FTI – UAD
Contoh penggunaan Variant ... var V1, V2, V3, V4, V5: Variant; I: Integer; D: Double; S: string; begin V1 := 1; { integer value } V2 := 1234.5678; { real value } V3 := 'Hello world!'; { string value } V4 := '1000'; { string value } V5 := V1 + V2 + V4; { real value 2235.5678} I := V1; { I = 1 (integer value) } D := V2; { D = 1234.5678 (real value) } S := V3; { S = 'Hello world!' (string value) } I := V4; { I = 1000 (integer value) } S := V5; { S = '2235.5678' (string value) } end; ... Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
10
Teknik Informatika – FTI – UAD
Deklarasi Variabel Tempat Deklarasi
Ruang Lingkup
program, sub program (fungsi dan prosedur)
berrlaku mulai dari posisi deklarasi sampai akhir blok progam, atau sub progam
bagian interface sebuah unit
berlaku mulai dari posisi dideklrasikan sampai akhir unit. Berlaku untuk progrram lain yang menggunakan unit ini.
bagian implementation sebuah unit, tetapi bukan di dalam sub program
berlaku mulai posisi dideklrrasikan sampai akhir unit, temasuk dalam sub program yang berada dalam unit tersebut
bagian definisi tipe record
berlaku mulai posisi dideklarasikan sampai akhir definisi tiper record
Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
11
Teknik Informatika – FTI – UAD
Deklarasi Konstanta (1) Sifat konstanta tidak dapat dirubah. ³ Konstanta langsungà langsung menuliskan nilai pada program
³
Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
12
Teknik Informatika – FTI – UAD
Deklarasi Konstanta (2) ³
Konstanta tidak langsungànilai disimpan pd suatu identifier.
Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
13
Teknik Informatika – FTI – UAD
Operator (1) - Aritmatika
Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
14
Teknik Informatika – FTI – UAD
Operator (2) – Boolean & String Boolean
String
Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
15
Teknik Informatika – FTI – UAD
Operator (3) – Logical (bitwise)
Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
16
Teknik Informatika – FTI – UAD
Operator (4) – Pointer
Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
17
PV-Lecture-03a, Gasal 2006
18
Teknik Informatika – FTI – UAD
Operator (5) – Set
Ali Tarmuji, S.T.
Teknik Informatika – FTI – UAD
Operator (5) – Relasional
Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
19
Teknik Informatika – FTI – UAD
Operator (6) – Class Operator yang dapat diterima oleh tipe class dan objek instannya antara lain : ³ operators as dan is. ³ Operator relasional = dan <>
Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
20
Teknik Informatika – FTI – UAD
IF statement ... if JKondisi <> 10 then begin ResultBlok:= I/J; statement 1 Count := Count + 1; end Kondisi else if Count = 2Last then Blok statement Done := True 2 else Exit; Blok statement 3 ... Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
21
Teknik Informatika – FTI – UAD
IF statement ... if J <> 0 then begin Result := I/J; Count := Count + 1; end else if Count = Last then Done := True else Exit; ... Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
22
Teknik Informatika – FTI – UAD
Case...of statement ... case
Nilai literal I
of
1..5: Label1.Caption := 'Low'; 6..9: Label1.Caption := 'High'; Blok statement 1 0, 10..99: Label1.Caption := 'Out of range'; else Label1.Caption := statement ''; Blok 2 end; ... Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
23
Teknik Informatika – FTI – UAD
Case...of statement ... case I of 1..5: Label1.Caption := 'Low'; 6..9: Label1.Caption := 'High'; 0, 10..99: Label1.Caption := 'Out of range'; else Label1.Caption := ''; end; ... Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
24
Teknik Informatika – FTI – UAD
Try...Exeption statement ... try X := Y/Z; Blok statement 1 except on EZeroDivide do HandleZeroDivide; Blok statement 2 end; ... Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
25
Teknik Informatika – FTI – UAD
Try...Exeption statement ... try X := Y/Z; except on EZeroDivide do HandleZeroDivide; end; ... Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
26
Teknik Informatika – FTI – UAD
Try...final statement ... Reset(F); try Blok statement 1 ....... // pemrosesan file F finally CloseFile(F); Blok statement 2 end; ... Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
27
Teknik Informatika – FTI – UAD
Try...final statement ... Reset(F); try ....... // pemrosesan file F finally CloseFile(F); end; ... Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
28
Teknik Informatika – FTI – UAD
Pernyataan Perulangan (loop) For Neste For (for bersarang) While ... Do ... Repeat .... Until ...
Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
29
Teknik Informatika – FTI – UAD
Perulangan: FOR Perulangan yg telah pasti cacah perulangan yg diinginkan Sintaks: FOR pencacah := nilai_awal [TO/DOWNTO] nilai_akhir DO BEGIN {pernyataan/proses diinginkan} END,
Contoh: ..... Jml:=0; FOR n := 1 TO 10 DO BEGIN jml:=jml+n; {penjumlahan bilangan dari 1 hingga 10} END, .....
Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
30
Teknik Informatika – FTI – UAD
Perulangan: FOR bersarang For di dalam terdapat for Sintaks:
FOR pencacah1 := nilai_awal1 [TO/DOWNTO] nilai_akhir1 DO BEGIN {pernyataan/proses diinginkan untuk FOR pertama} FOR pencacah2 := nilai_awal2 [TO/DOWNTO] nilai_akhir2 DO BEGIN
{pernyataan/proses diinginkan untuk FOR kedua (dalam)}
END; END,
Contoh:
..... Jml:=0; FOR n1 := 1 TO 5 DO BEGIN jml:=jml+n1; FOR n2 := 1 TO 3 DO BEGIN jml:=jml-n2; END, END, .....
PV-Lecture-03a, Gasal 2006
Ali Tarmuji, S.T.
31
Teknik Informatika – FTI – UAD
Perulangan: WHILE ... DO Cacah perulangan blm pasti, selama kondisi masih terpenuhi. Pengecekan konidisi di awal perulangan Sintaks: WHILE kondisi DO BEGIN {pernyataan/proses yg diinginkan} END;
Contoh: ... i:=1; jml:=0; WHILE i<=10 DO BEGIN jml:=jml+i; i:=i+1; END; ...
Ali Tarmuji, S.T.
{penjumlahan bilangan dari 1 hingga 10} {menaikkan nilai i satu demi satu}
PV-Lecture-03a, Gasal 2006
32
Teknik Informatika – FTI – UAD
Perulangan: REPEAT...UNTIL Cacah perulangan blm pasti Pengecekan kondisi di akhir perulangan Proses perulangan dilakukan minimal 1 kali apapun kondisinya Sintaks: REPEAT {pernyataan/proses yg diinginkan} UNTIL kondisi
Contoh: ... Jml:=0; N:=1; REPEAT jml:=jml+N; N:=N+1; UNTIL N=10; ...
Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
33
Teknik Informatika – FTI – UAD
Sub Program Berupa fungsi atau prosedur ³ memecah program dalam unit logika yang lebih kecil, sehingga dapat dengan mudah dilakukan proses debug dari pada jika menulis keseluruhan program tanpa menggunakan sub program ³ dapat digunakan ulang atau bersifat reusability ³
Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
34
Teknik Informatika – FTI – UAD
Fungsi & Prosedur ³
Perbedaan: function dapat dipanggil dengan mengikutkan nama function sisi kanan dari pernyataan atau ekspresi. (returnvalue = function()). † Function memiliki tipe data seperti suatu variabel. Ini menentukan tipe dari nilai yang dikembalikan † Nilai kembalian suatu function dimasukkan ke nama function itu sendiri, procedure tidak. † suatu function dapat menjadi bagian dari suatu ekspresi yang panjang, procedure tidak. †
Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
35
Teknik Informatika – FTI – UAD
Jenis Prosedur/Fungsi dlm Delphi ³
General Procedure/Function † † †
³
Diaktifkan oleh aplikasi Procedure/function built-in (mis. Method) Procedure/function buatan programmer
Event Procedure † †
Diaktifkan oleh sistem Delphi Sebagai respon terhadap event tertentu
Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
36
Teknik Informatika – FTI – UAD
Contoh Prosedure dlm Delphi Prosedur à Procedure
Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
37
Teknik Informatika – FTI – UAD
Contoh fungsi dlm Delphi
Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
38
Teknik Informatika – FTI – UAD
Komentar Berfungsi sebagai dokumentasi ³ Jenis komentar di Delphi: ³
†{
….. } { teks yang ada di dalam tanda kurung ini adalah komentar } †(* … *) (* teks yang ada di dalam tanda kurung ini juga adalah komentar *) † // …… // teks pada baris ini komentar Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
39
Teknik Informatika – FTI – UAD
Langkah umum membuat aplikasi Mendesain antarmuka, dengan mengatur komponen2 yang dibutuhkan pada media desain (form), ³ Tentukan properti-properti yang diinginkan, ³ Tulis kode penanganan event untuk merespon event yang diinginkan, ³ Tambahkan listing jika diperlukan, ³ Kompilasi dan jalankan aplikasi. ³
Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
40
Teknik Informatika – FTI – UAD
Aplikasi Tujuan pada Delphi(1) Application, membuat projek baru (aplikasi standar) ³ Batch file, membuat aplikasi file-batch (berekstensi *.bat). ³ Component, membuat komponen VCL baru ³ Console Application, membuat aplikasi yang outputnya layar DOS (console) ³ Control Panel Application, membuat aplikasi yang dapat dipanggil dari jendela Control Panel. ³ Control Panel Module, membuat modul untuk aplikasi pada Control Panel. ³ DLL, membuat file pustaka DLL (Dynamic LinkLibrary) ³
Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
41
Teknik Informatika – FTI – UAD
Aplikasi Tujuan pada Delphi (2) Service Application, membuat service baru pada Windows NT. ³ Thread Object, membuat objek thread baru. ³ Web Server Application, membuat aplikasi yang dapat dijalankan pada web server (EXE & DLL) ³ Active Server Object, membuat Active Server Page dari aplikasi yang telah ada. ³ Active Form, membuat form untuk activeX yang dapat dipanggil oleh web browser (HTML). ³
Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
42
Teknik Informatika – FTI – UAD
Aplikasi Tujuan pada Delphi (3) ActiveX Control, membuat kontrol untuk activeX ³ ActiveX Library, membuat file pustaka untuk activeX ³ Automation Object, membuat otomatisasi objek ³ COM Object, membuat objek untuk servise COM (Common Object Model) ³
Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
43
Teknik Informatika – FTI – UAD
Kesimpulan Hingga tahap ini, kemudahan PV semakin nyata. ³ Dukungan tipe data, operator, & statement lainnya semakin membuat Delphi handal. ³ Adanya variasi aplikasi tujuan (target) yg disediakan, menjadikan Delphi sebagai tools yg powerfull. ³ lagi-lagi: ...selanjutnya terserah Anda... ³
Ali Tarmuji, S.T.
PV-Lecture-03a, Gasal 2006
44