Delphi’de Procedure ve Function Yazma | Selçuk Kütük'ün Günlüğü
Kas
16
2008

Delphi’de Procedure ve Function Yazma

Procedure ile Function gerçek anlamda bir programın vazgeçilmezidir. En genel anlamda procedure ler geriye değer döndürmeyen, function ise geriye değer gönderen yapılardır.

Procedure için bir örnek

//Procedure e dışarıdan gönderilecek değişkenleri tanımlıyoruz.

Procedure Topla(sayi1,sayi2:integer);
var
sonuc :integer;
begin
//çalıştırılacak işlemleri yapıyoruz
sonuc := sayi1 + sayi2;
showmessage(inttostr(sonuc));
end;

Procedure Örnek Kullanımı

procedure TForm1.ornekProcedureClick(Sender: TObject);
begin
Topla(1,4);
end;

Procedure ümüzü Private yada Public bölümlerinde tanımlayabiliriz. Private de tanımlamasını yaparsak diğer Unitlerimizden buna erişemeyeceğiz yani sadece ona özel bir procedure olacaktır. Public kısmında tanımlarsak diğer Unitlerimizden erişebiliriz. Yazdığımız procedure e bakacak olursak verdiğimiz işi yaptı.
Ama ben bunu yaptım şu oldu demedi.İşte function ı procedure den ayıran en önemli özellik budur.

Function için bir örnek

//functiona dışarıdan gönderilecek değişkenleri tanımlıyoruz
// tanımlamanın en sonundaki "Toplama(sayi1,sayi2:integer):integer" integer tanım-
//laması functionun dönüş değer tipidir.
Function Toplama(sayi1,sayi2:integer):integer;
begin
//result ile function işlemini bitirdikten sonra değeri kullanıcıya geri döndürüyoruz
Result := sayi1 + sayi2;
end;

Function Örnek Kullanımı

procedure TForm1.ornekFunctionClick(Sender: TObject);
var
donenDeger:integer;
begin
donenDeger := Toplama(5,6);
ShowMessage(IntToStr(donenDeger));
end;

Functionlar da Procedure ler gibi Public yada Private Olabilirler.
Burada procedurelerden farklı olarak iki bölüm bözümüze çarpıyor.
1- Function adını ve parametrelerini belirledikten sonra function sonucunda bir integer değer dönmesi gerektiğini söyledik. Bu sayede function verilen görevlerini tamamladıktan sonra bizim isteğimize göre bize bir bilgi verecektir.
2- Result ise işte bu döndürülecek değerdir. Tipini yukarıda yapılan tanımlamadan alır. Bu tipide yaptıracağımız işleme göre belirlememiz gerekmektedir.
Örn. Bir kayıt işlemi yaptırtıyorsak, dönüş değerini boolean tanımlayıp true yada false değer gönderebiliriz. Bu sayede kayıt sonucunu bildiğimiz için false dönmüşse kayıt yapılamadı, true dönmüş ise kayıt başarılı şeklinde uyarı verebiliriz.

Aslında Function ve Procedure ler bir programın vazgeçilmezleridir. Bu nedenle algoritmanızda benzerlik gösteren işlemleri function yada procedure haline getirmeniz daha iyi olacaktır.

EkleBunu Sosyal Paylaşım Butonu

Yorum yok »

RSS feed for comments on this post. TrackBack URL


Yorum yaz