1/26/14

Program dan unit




Bila kita membuat program menggunakan Delphi, tidak akan terlepas dari  code sumber yang disebut unit. Unit adalah sebuah file yang terpisah berisi kode  yang dapat dipanggil dari program yang sedang kita buat dan kode yang di panggil akan di satukan kedalam program ketika dikompilasi. Kode tersebut dapat berisi variable,constanta,procedur,function bahkan object dan class.
Penggunaan unit ini memberikan kita kemudahan diantaranya
·         Membagi program besar  yang dapat diterbitkan dalam modul modul terpisah, sehingga apabila terjadi perubahan ataupun kesalahan akan memudahkan kita dalam penelusuran.
·         Membuat pustaka yang dapat dipakai program lain.
·         Mendistribusikan pustaka tanpa menyertakan kode sumber
Topic kali ini akan berbicara tentang program aplikasi meliputi :
Program header
Deklarasi dan syntak sebuah  Unit
Dan kata “Uses”

Struktur dan sintak Program
Sebuah aplikasi lengkap dilingkungan Delphi terdiri dari beberapa unit . unit unit ini disatukan oleh kode sumber yang disebut  projectfile. Dalam pemrograman turbo pascal kode sumber disimpan pada file berextensi pas.

Catatan: Pada hakekatnya sebuah program tidak mesti menggunakan unit manapun ketika dibuat .tetapi setiap program yang dibuat Delphi, secara otomatis akan menyertakan unist System dan unit SysInit.
Sebuah file Kode sumber untuk program aplikasi Delphi itu berisi:
Program heading
Program heading dikhususkan untuk menempatkan dari nama sebuah program, diawali dengan reservedword yaitu program diikuti nama program dan ditutup oleh titik koma. Nama dari program harus sesuai dengan nama dari file kode sumber nya. Misalkan kita membuat program dengan nama “Editor” maka file ini harus bernama ” Editor.dpr”
program Editor;

  uses Forms, REAbout, REMain;        

  {$R *.res}

  begin
   Application.Title := 'Text Editor';
   Application.CreateForm(TMainForm, MainForm);
   Application.Run;
end.

Pada contoh di atas program header terletak di baris pertama, Kata Uses menunjukan program ini membutuhkan file  unit yaitu Forms, REAbout dan  REMain. Kata $R adalah kompiler directif yang mengaitkan file dengan kodesumber sedangkan blok terakhir antara Begin dan End berisi kode eksekutabel ketika program berjalan.
File delphi projectfile umumnya kecil, karena logika program biasanya terdapat pada file unitnya. Project file hanya berisi kode pemanggilan jendela utama dan perintah proses awal dari pengulangan. Secara otomatis IDE akan merubah project file dan jarang sekali kita merubah file ini dengan secara manual. Jadi kita hanya akan merubah kode pada file unit saja.
Dalam pemrograman Turbo Pascal programheading dapat berisi parameter setelah kita menuliskan nama program.
Program  calkulator(input,output);
Untuk delphi, parameter tersebut akan diabaikan.
Kalimat Uses
Kalimat yang di awali kata uses( saya singkat saja dengan “kalimatuses”) adalah daftar nama unit yang akan di pakai program,dan unit-unit  itu sendiri juga bisa terdapat “kalimat uses” di dalamnya.
Kalimat uses berisi kata uses yang di ikuti nama unit yang akan dipakai dan diakhiri dengan titik koma.
Blok perintah
Berisi kode logika yang dapat dieksekusi ketika program berjalan . Blok ini terletak antara kata begin dan end.
Untuk contoh di atas “blok” berisi kode pemanggilan object yang bernama application dan mempunyai method, antara lain title,createform,dan Run.


Stuktur dan sintak Unit

Unit berisi bebagai jenis termasuk class variabe,constanta procedure dan function.kode sumber unit mempunyai ekstensi pas.

Unit  Unit1;
Interface
Uses
Implementation
Uses
Initialization
Finalization
End.

Unit Heading
Pada contoh di atas Unit heading pada baris pertama harus beisi nama sebuah unit dan nama unit tersebut haruslah sama dengan nama file kode sumber ketika disimpan.
Nama sebuah unit haruslah berbeda dengan unit lainnya, sebuah unit dengan nama yang sama tidak dapat digunakan secara bersamaan oleh program, meskipun berada pada direktori yang berbeda.

Bagian Interface
Bagian interface dimulai dengan reservedword Iterface sampai awal dari bagian Implementation. Bagian interface mendeklarasikan constant,type,variabel,prosedur,dan fungsi yang di sediakan untuk klien. Yaitu program atau unit yang akan menggunakan elemen unit tersebut. Bagian ini disebut juga publik karena kode logik lain dapat mengakses hal yang di cantumkan di bagian ini.

Bagian interface hanya memuat routin signal yang akan dipanggil oleh klien.yaitu nama dari rutin(procedure dan function),parameter dan kode hasil (untuk  function) sementara untuk kode eksekusi di tempatkan di bagian implementation.
Untuk pendeklarasian sebuah class harus diikutsertakan juga member dari class tersebut seperti, fileds, propertys,procedure dan function.
Bagian interface juga dapat mengandung kalimat uses yang ditulis setelah kata interface.
Bagian implementation
Bagian implementation dimulai dari kata implementation hingga awal bagian initialization atau jika tidak ada bagian initialization, maka implementation berujung  hingga kata end dari unit tersebut. Bagian implementation mendefinisikan  procedure dan function yang dideklarasikan di bagian interface.di dalam bagian implementation, procedure dan function mungkin dideklarasikan juga dapat dipakai oleh prosedur dan fungsi yang lain didalam bagian implementation. Kita dapat menghilangkan daftar parameter dari procedure dan function heading,ketika kita menulis dibagian implementation . tetapi sebalikya jika kita menulis kan parameter, harus sesuai dengan yang dideklarasikan di bagian interface.
Sekedar tambahan, setiap pendefinisian prosedur dan fungsi, dibagian implementation ini dapat mendeklarasikan  konstanta,type( termasuk type class),variable, prosedur dan fungsi yang hanya dapat di gunakan di dalam unit itu sendiri. Tidak seperti dibagian interface bagian implementation tidak dapat digunakan diluar unit tersebut.
Bagian implementation dapat mengandung kalimat uses sendiri, yang dibubuhken setelah kata implementation.setiap identifier yang dideklarasikan di sini hanya dapat digunakan oleh bagian yang terdapat di bagian implementation atau tidak bisa di gunakan di bagian interface.

Bagian initialization
Bagian initialization bersifat opsional. Berawal dari kata initialization dan berujung pada awal bagian finalization atau sampai kata and dalam unit. Bagian initialization berisi kode yang dapat dieksekusi, kode tersebut menginisialisasi data yang akan dipakai ketika program di jalankan.

Finalization
Blok ini di isi kode untuk melepaskan memory yang telah di inisialisasi. Biasanya initialization dipakai bila kita menggunakan pointer sebagai variabel dalam program kita. Bila terjadi kesalahan kode eksekusi maka program akan berhenti dan blok memory yang dipakai terlebih dahulu tidak akan dilepaskan.maka jika kita memakai finalization ketika ada error program tetap akan mengeksekusi bagian ini.

Panduan penggunaan unit dan kalimat uses

Kalimat uses dipakai untuk mendaftarkan unit yang dipakai program,library, atau unit. Pemanggilan kalimat uses bisa terjadi didalam:
Project file untuk program atau library.
Bagian interface pada sebuah unit.
Bagian implementation pada sebuah unit.

Kebanyakan projectfile berisi kalimat uses, kebanyakan unit memakai kalimat uses dibagian intrface.begitupun bagian implementation mempinyai kalimat uses sendiri.
unit sytem dan syinit dipakai secara otomatis di setiap aplikasi tanpa harus didaftarkan dalam kalimat uses. Untuk unit librari lainnya seperti sysutils kita harus membubuhkan didalam kalimat uses. Dalam beberapa kasus beberapa unit dibubuhkan dalam kalimat uses oleh IDE.



No comments:

Iklan

Iklan

Iklan