• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Presentasi delphi
 

Presentasi delphi

on

  • 1,334 views

 

Statistics

Views

Total Views
1,334
Views on SlideShare
1,334
Embed Views
0

Actions

Likes
1
Downloads
47
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Presentasi delphi Presentasi delphi Presentation Transcript

    • Bahan Kuliah Teori :Pemrograman Delphi Herianto CopyRight@2003
    • Pemrograman Visual dengan Delphi
    • Pengantar Apa itu pemrograman visual ?  Kenapa mesti Delphi ? • Tool-nya lengkap dan terintegrasi …………………………………………. • Interface-nya user friendly (more friendly Alternatif tool pemrograman then VB ?)  visual : • Aplikasi hasil compilasi-nya teruji cepat • Visual Basic (VB < Delphi < C Builder/Visual) • Visual Foxpro • Kode pemrogramannya lebih ringan • Visual C dibanding peng-kode-an pada C, sebab • Visual Dbase Delphi menggunakan kode object pascal • Power Builder (Pascal < C) • … • Tersedia Online Help yang cerdas • … • Fasilitas untuk aplikasi database-nya • Delphi lengkap dan mudah digunakan • Dapat terhubung ke beragam jenis database • Mendukung pengembangan aplikasi modern (Jaringan/Distributed , Internet/WEB,…) • Tersedia juga untuk sistem yang berbeda (non Microsoft oriented), seperti di Linux,… • …
    • Langkah Bekerja 1. Siapkan Form kosong 2. Ambil beberapa komponen dan atur tata letak-nya 3. Beri kode (event-handler) ke komponen yang membutuhkan 4. Compile dan eksekusi (MAKE atau RUN) program Filosofis Object Oriented Programming (OOP)Oleh karena pemrograman Visual (Delphi) merupakan implikasi dari teknikpemrograman berorientasi object, maka beberapa ide dari OOPmempengaruhi pembuatan programnya seperti : - Komponen secara visual, adalah object secara kode pemrograman - Property pada komponen, adalah data member (elemen) dari object - Method merupakan member dari object dalam bentuk prosedur - Event-handler merupakan prosedur milik komponen/object yang hanya akan bekerja saat kejadian khusus terjadi atau diberikan ke komponen tersebut - Untuk mengkases member dari object digunakan notasi : <Nama_object.member>, contoh : label.caption, form.close
    • Memahami komponen-komponen Delphi• Delphi memiliki banyak sekali komponen yang digunakan untuk membangun interface aplikasi yang dibuat.• Dari sekian banyak komponen tersebut maka FORM adalah komponen utama/induk, dari aplikasi sebab semua komponen lain umumnya diletakkan di atas Form• Delphi meletakkan komponen-komponen-nya pada satu tempat yang disebut : Componen Palette :• Delphi mengelompokkan komponen-komponen tersebut dalam tab-tab sesuai dengan fungsi dan penggunaannya• Jika anda terbiasa dengan pemrograman DOS yang mengenal perintah-perintah input dan output, maka komponen Delphi juga ada yang berperan sebagai input (untuk menerima data) dan ada juga yang berperan sebagai output (untuk menampung dan menampilkan data
    • Pengelompokan Komponen Untuk memudahkan pemahaman, kita dapat mengelompokkan komponen Delphi seperti berikut :  Komponen Input, yatu : ……  Komponen output, yatu : ……  Komponen tombol, yatu : ……  Komponen Peng-group, yatu : ……  Komponen penghubung data, yatu : ……  Komponen menu, yatu : ……  Komponen image, yatu : …… - …… Contoh pengelompokan komponen Delphi dan perbandingannya dengan VB :  Komponen input : Edit (TextBox), CheckBox, RadioButton(OptionButton), ComboBox, ScrollBar, …  Komponen output : Label, Memo, DBGrid…  Komponen tombol : Button (Command),Bitbtn, …  Komponen Peng-group : GroupBox(Frame) , Panel,TabControl(SSTab,TabStrip), Frame, …  Komponen penghubung data : Table (Data,Adodc), Query,DataSource …  Komponen menu : MainMenu, PopupMenu,  Komponen image : Image, …
    • Menyimpan Aplikasi• Menyimpan kode aplikasi delphi berbeda dengan menyimpan kode program lain seperti kode program DOS misalnya• Satu program DOS umumnya memiliki satu file saja, walaupun bisa juga lebih (misalnya overlay di pascal atau membuat library header di C), tetapi file tersebut sengaja dibuat oleh programmer-nya• Sedangkan pada Delphi, satu program Delphi menghasilkan banyak file, dan sebagian besar file itu ada tanpa disengaja oleh programmernya• Oleh karena itu menyimpan aplikasi Delphi perlu diatur dalam folder khusus untuk mengumpulkan file-file yang dihasilkan oleh satu aplikasi• Satu aplikasi Delphi setidak-nya akan menghasilkan file-file : *.dpr , yaitu : … *.pas , yaitu : … *.dfm , yaitu : … *.cfg , yaitu : … *.dof , yaitu : … *.res , yaitu : …• Setelah di-compile akan bertambah 2 jenis file lagi yaitu : *.dcu , yaitu : … *.exe , yaitu : …• Jika aplikasi di-Edit (ada yang diubah) kemudian disimpan lagi, akan bertambah file dengan ekstension : *.~pas , yaitu : … *.~.dfm , yaitu : …
    • File-file aplikasi Delphi 1 FormFile :Projet1.resFile :Projet1.cfg File :Projet1.exe File :Projet1.dprFile :Projet1.dof File : Unit1.dfm File : Unit1.dcu Form1 COMPILE + File :Unit1.pas LINK Kode program Re-EDIT File : Unit1.~pas + File : Unit1.~dfm Save
    • File-file aplikasi Delphi MultiFormFile :Projet1.res File :Projet1.dprFile :Projet1.cfgFile :Projet1.dof File :Projet1.exe File : Unit1.dfm File : Unit1.dcu File : Unit2.dfm File : Unit3.dfm File : Unit2.dcu Form1 Form2 Form3 File : Unit3.dcu COMPILE + LINK File : Unit1.pas File : Unit2.pas File : Unit3.pas Kode program Kode Program Kode Program File : Unit1.~pas File : Unit2.~pas Re-EDIT File : Unit3.~pas + File : Unit1.~dfm SAVE File : Unit2.~dfm File : Unit3.~dfm
    • Memahami pembuatan kode program• Kode program yang di diketikkan umumnya Kode program yang melibatkan berguna untuk memberikan reaksi atas komponen event tertentu dari suatu komponen. Bentuk umum : Contoh : <Nama_komponen.nama_property> Kode program di Event OnClick pada komponen Button1 akan dilaksanakan hanya saat tombol Contoh : Button1 di-click. Label.caption• Untuk memilih event apa yang akan diberi Bentuk lain : kode program pada sebuah komponen dapat <Nama_komponen.nama_method> dipilih dari Object Inspector Contoh :• Untuk itu perlu dipahami bagaimana cara Form.show menentukan kode program tersebut. Memberikan nilai ke property komponen : Perintah yang sering digunakan : Contoh : Application terminate; Label1.caption := ‘Penjumlahan’; Form1.show; Form1.showmodal; Label1.font.color := clblack; Form1.close; Inttostr() Strtoint() • Struktur dan syntax dasar pemrograman floattostr() Delphi sama dengan di pascal seperti : Strtofloaty() Floattostr() Deklarasi var, type, Operator, kontrol if-then, Showmessage(pesan); if-then-else, case of, pengulangan for-do, Messagedlg(pesan,typepesan,typebutton,integer) while-do, repeat-until, procedure, function, … … begin-end, … dan seterusnya
    • Bagaimana kode program Delphi dijalankan Unit1.pas Unit unit1; Unit1.dfm … Interface …Project1.dpr Implementation {$R *.DFM} Program project1 … … End. Begin … … Unit2.pas Unit2.dfm End. Unit unit2; … Interface … Implementation {$R *.DFM} … End.
    • Contoh kode program lengkapunit Unit1; procedure TForm1.Button1Click(Sender: TObject); begininterface application.terminate; end;uses Windows, Messages, SysUtils, Classes, procedure TForm1.Button2Click(Sender: TObject);Graphics, Controls, Forms, Dialogs, var A,B :integer; StdCtrls, ExtCtrls; C : real; begintype A:=strtoint(Edit1.text); TForm1 = class(TForm) B:=strtoint(Edit2.text); Button1: TButton; Case RadioGroup1.ItemIndex of Label1: TLabel; 0: C:=jumlah(A,B); Label2: TLabel; 1: C:=A-B; Label3: TLabel; 2: C:=A*B; Label4: TLabel; 3: C:=A/B; Edit1: TEdit; end; Edit2: TEdit; Label6.Caption:=floattostr(C); Button2: TButton; end; Label5: TLabel; Label6: TLabel; end. RadioGroup1: TRadioGroup; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); private { Private declarations } public { Public declarations } end;var Form1: TForm1;ImplementationUses unit2;{$R *.DFM}function jumlah(A,B:integer):integer;var c:integer;beginc:=A+B;jumlah :=c;end;
    • Aplikasi database pada Delphi• Apa itu aplikasi database ? • Delphi memiliki sistem khusus untuk meng-akses…………………………………………… database, yaitu : BDE {akan dibahas di depan} • Tetapi Delphi juga dapat memanfaatkan kelebihan• Apa itu database ? Kelebihannya ? ODBC yang ada pada OS window.……………………………………………………… • Manfaat ODBC dalam membangun aplikasi database?• Operasi-operasi database : ………………………………………………………………………… o Membuat file database o Memberi index Aplikasi window o Meng-entri data o Meng-edit data o Meng-delete data ODBC o Men-sortir data o Men-cari data o Mem-filter data o Me-relasi-kan tabel Drivers Drivers Drivers o Membuat report• Jenis aplikasi database : • Stand Alone, Database • Client/server API function • Distributed• Jenis file database : Dbf, Paradox(db), Access (mdb), Interbase, MySQL, SQL Server,Sybase, Oracle,… File database dengan jenis yang berbeda
    • Arsitektur Aplikasi Database pada Delphi1 – tier :
    • 2 - Tier
    • Multi – tier :
    • Komponen Aplikasi database DELPHI• Delphi memiliki sistem (Engine) sendiri untuk mengelola sistem Database yaitu : BDE (Borland DataBase Engine), sehingga setiap komputer yang menjalankan aplikasi database Delphi umumnya membutuhkan keberadaan BDE pada sistemnya. Tetapi Delphi tetap memberi kesempatan jika kita ingin membuat aplikasi database tanpa melibatkan BDE.• Selain BDE, Delphi juga memiliki beberapa komponen khusus yang harus digunakan untuk membuat aplikasi database Delphi. Komponen database tersebut ada yang berfungsi sebagai pengait file database ke aplikasi (Data bound) dan ada yang berfungsi untuk meng-akses dan menyajikan data tersebut• Yang termasuk sebagai pengait data (Data bound) yaitu : Table, Query, DataSource,…• Yang termasuk sebagai pengakses dan penyaji data yaitu : DBGrid, DBEdit, DBLabel, DBComboBox,DBRadioGroup,DBImage, DBNavigator, …• Komponen-komponen database Delphi umumnya terletak di tab DataAccess dan Data Controls pada Componen Palette• Hubungan antara : file database, BDE, komponen dan Form dapat diamati melalui bagan berikut : Interface Aplikasi Form/ DataSource DataSet BDE DataControl Kontrol dan penyajian data DataBound DataBase
    • Pengaturan komponen databaseContoh : aplikasi akan meng-akses data di file database C:99001234TabelMahasiswa.db sehingga datanya tampil di Form melalui DBGrid dan DBEdit :Maka langkah membuatnya adalah :Ambil : Tabel, DataSource, DBGrid dan DBEdit, atur propertynya seperti berikut : BDE DataSource Tabel DBGrid Mahasiswa.db Tabel, property yang diatur : DataSource, property yang diatur :DBGrid, property yang diatur : DatabaseName : {NamaAlias} DataSet : TblMahasiswa TableNama : Mahasiswa.DBDataSource : DSMahasiswa Name : DSMahasiswa Name : TblMahasiswa Boleh juga : C:99001234TabelDBEdit, property yang diatur :DataSource : DSMahasiswaDataField : {namafield} Tabel boleh digantri dengan Query Query, property yang diatur : DatabaseName : {NamaAlias} SQL : Select * from mahasiswa Alias atau DatabaseName pada delphi yaitu sebuah nama yang mewakili direktor lengkap dimana file database berada, dengan demikian Alias dapat digantikan dengan nama direktori lengkap tempat database berada
    • Menggunakan DataModul• Data Modul yaitu Form khusus yang dapat digunakan untuk meletakkan komponen-komponen non visual Delphi, termasuk untuk meletakkan komponen DataAccess Delphi.• Data modul akan terasa gunanya pada aplikasi database yang melibatkan banyak Form, yang dengan adanya DataModul semua Form hanya perlu berhubungan dengan DataModul Contoh sebuah DataModul :
    • Mengakses field melalui kode program• Secara kode pemrograman data di file database diakses melalui komponen dataset (table, query,…)• Kemampuan mengakses data melalui kode program ini, menjadikan program lebih fleksibel dan dinamis.• Beberapa Cara mengakses data di field : Format : Table[‘nama_field’] Table.fieldbyname(‘nama_field’).value Table.fieldvalue[‘nama_field’] Table.fields[i].AsType Contoh : TblMhs1[‘nim’] TblMhs1.fieldbyname(‘nim’).value TblMhs1.fieldvalue[‘nim’] TblMhs1.fields[0].AsString• Selain cara di atas field juga bisa diakses dengan beberapa cara berikut : TblmhsNim.value TblmhsNim.AsString TblmhsNim.AsVariant• Method yang sering digunakan pada dataset (table,query,…) : Table1.open, Table1.close, Table1.append, Table1.delete, Table1.edit, Table1.post, Table1.post, Table1.refresh,table1.first,table1.next,table1.prior,table1.last, table1.setRange([nilai1], [nilai2]),table1.findkey([nilai]),…
    • SQL pada Delphi• Query merupakan DataSet lain disamping Table• Fungsi Query mirip dengan fungsi Table. Perbedaannya adalah : data yang ada pada Query merupakan hasil dari pernyataan SQL.• Menggunakan Query sebagai sumber data (dibandingkan Table) sangat ampuh karena :  Dapat mengakses data dari beberapa tabel sekaligus  Dapat membatasi data yang diakses baik secara horizontal (yakni membatasi pengaksesan pada field-field tertentu saja) maupun secara vertikal (yakni membatasi pengaksesan sejumlah record saja dengan kriteria tertentu)  Dapat digunakan untuk mengakses data dari berbagai macam sumber seperti : - Local tables (Paradox, InterBase, dBASE, Access, dan FoxPro) - ODBC-compliant databases. - Remote database servers (Sybase, SQL Server, Oracle, Informix, DB2, dan InterBase)• Pemberian pernyataan SQL pada Query dapat dilakukan secara statis dan dapat secara dinamis• Secara statis yaitu pernyataan SQL langsung ditulis pada property SQL melalui object inspector• Secara dinamis yaitu pernyataan SQL dituliskan di kode program, dengan format : <query.sql.add(‘string pernyataan sql’)> Contoh : query.sql.add(‘select * from mahasiswa’);
    • SQL dinamis• SQL dinamis sangat ampuh dalam membuat aplikasi database yang berkualitas dengan Delphi• Pernyataan SQL ditulis dalam kode program, dan operasi query dapat berbeda selama program berjalan berdasarkan logika program yang dibuat• Contoh program sql dinamis lengkap : QueryBarang.Close; QueryBarang.sql.clear; QueryBarang.sql.add(select * from FakBeli); QueryBarang.open;• Contoh lain dengan parameter : QueryFakBeli.Close; QueryFakBeli.sql.clear; QueryFakBeli.sql.add(select * from FakBeli); QueryFakBeli.sql.add(where NoFakBeli= :VFakBeli); QueryFakBeli.parambyname(‘Vfakbeli’).AsString :=edit1.text + ‘%’; QueryFakBeli.open;• Pengembangan :  Query untuk membangun Master-Detail  Query untuk Incremental-search  Query untuk Report …
    • Report• Report merupakan output dari aplikasi • Data pada report mungkin berasal dari database satu table tetapi mungkin juga berasal• Oleh karena database adalah data, dari dua atau lebih tabel maka report –lah yang merupakan informasi • Lebih baik mengkases data menggunakan Query ketimbang tabel untuk Report Aplikasi • Report yang relasi antar dua tabelnya database membentuk relasi 1 to many atau many database report to many disebut report Master-Detail• Bagian-bagian dari report : • Memulai membuat Report : Page Header Band Report dapat dimulai dari : Title Band  File – New – Report , atau Column Header Band  Ambil komponen : QuickRep pada Detail Band tab QReport dan letakkan di Form Footer Band untuk Report Summary Band• Komponen untuk membuat Report terletak pada tab Qreport :
    • Delphi tingkat lanjut Lebih jauh pemrograman Delphi dapat dilakukan untuk membuat aplikasi-aplikasi seperti berikut :  Pemrograman database Client/Server dan Terdistribusi dengan database : Interbase, Sybase, MySQL, Oracle, …  Pemrograman Internet  WebServer  …… Perkembangan Delphi :  Delphi 6  Delphi 7