C# Fonksiyon ve Metot Kullanımı

C# Fonksiyonlar ve Metotlar

Bu makalede C#‘ta fonksiyon ve metotların nasıl hazırlandığı konusunda bilgiler bulunmaktadır.

C# projelerinin temel bileşeni olan formlara her biri değişik bir amaca yönelik kontroller Toolbox’tan seçilip yerleştirilebilinmektedir. Üzerinde çalıştığınız forma bir Button yerleştirip tasarım anında düğmeyi çift tıklarsanız düğme için kod yazılabilinen pencere açılır ve çalışma anında düğme tıklandığı zaman işitilmek üzere bir metot kalıbı hazırlanır. Bu şekilde hazırlanan metot geriye bir değer göndermediği için metot veya fonksiyon adının önüne void deyimi yazıldı.

private void button1_Click(object sender, System.EventArgs e)

C# projeleri dahilinde kullanılan nesnelere uygulanma olasılığı olan olaylar için metot veya fonksiyon kalıpları otomatik olarak hazırlanmaktadır. Hangi olay için metot veya fonksiyon kalıbı hazırlamak istiyorsanız Properties penceresinde söz konusu nesneye ait olayların listelenmesini sağlamalısınız.

Bildiğiniz gibi Properties penceresinde ilgili nesneye ait tanımlı olayların listelenmesini sağlamak için Events düğmesini tıklamak gerekmektedir.Aşağıda verdiğim ekran görüntüsünü aldığım sırada Properties penceresinde ”Button” nesnesine ait olaylar listeleniyordu.

properties

Örneğin çalışma anında formdaki düğmeye tıklandığı zaman yapılması istenen işlemleri yapacak kodlar click yordamına yazılır. Properties penceresinde ”Button1” düğmesine ait olaylar listelenirken KeyPress olayının üzerinde cift tıklama yapılınca aşağıdaki gibi bir yordam veya geriye değer döndürmeyen metot kalıbı hazırlandı.

private void button1_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)

{

}

private void button1_Click(object sender, System.EventArgs e)

Form veya diğer nesnelerle ilgili olarak projelere dahil edilen yordamların dışında yapmak istediğiniz işlemler için kendiniz yordam veya fonksiyonlar hazırlayabilirsiniz. C# da Visual Basic ve Delphi, Pascal gibi dillerden farklı olarak procedure veya yordamlar yoktur. Gerçekte yordam ile fonksiyon arasındaki tek fark fonksiyonların geriye değer döndürmeleridir. Buna göre geriye değer döndürmeyen fonksiyonlara yordam denilebilir.

Visual Studio .NET ile geliştirilen uygulamalarda fonksiyonlardan metot diye söz edilmektedir. Aslında direk nesneler üzerinde işlem yapmayan metotları fonksiyon diye adlandırma taraftarıyım. Farkında olmadan bazen metotlardan fonksiyon diye söz ettiğim oluyor. Bu yazımda geriye değer göndermeyen metot ve fonksiyonlardan söz ederken yer yer yordam kavramını kullandım.

Yukarıda verilen metodun başına konulan private deyimi sayesinde bu metoda başka bir sınıftan erişim sağlamak veya kullanmak mümkün olmaz. Daha önce konsol uygulamaları hakkında bilgi verilen bölümden hatırlayacağınız gibi C# uygulamaları sınıflardan meydana gelmektedir. Yeni bir proje hazırlandığında projeye dahil edilen form ile aynı ada sahip bir class veya sınıf hazırlanmaktadır.Bir forma sahip yeni bir proje hazırlandığında Visual Studio .NET tarafından otomatik olarak hazırlanan sınıfı aşağıda görebilirsiniz.

kutuphaneler

 

 

 

 

 

C#

Projeye 2. bir form dahil edilmesi halinde 2. bir sınıf hazırlanır. Dolayısıyla önüne private deyimi yazılan yordamı başka sınıflarda kullanmak mümkün değildir. Hazırlayacağınız yordam veya metodu başka sınıflarda kullanmak istiyorsanız yordamın başına private yerine public yazmalısınız.

Hazırlamış olduğunuz fonksiyon geriye bir değer döndürmüyorsa veya başına void deyimi eklenmiş ise bu fonksiyona yordam (procedure) diyebilirsiniz. Şimdi ”Mesaj_yaz” adında geriye değer döndürmeyen basit bir fonksiyon hazırlayacağım. Geriye değer döndürmeyen fonksiyonların başına void deyimi eklenmektedir.

Bu amaçla forma ait kod penceresinde aşağıdaki gibi bir yordam kalıbı hazırladım. Bu yordamın başına erişim belirteci olarak public veya private yazmadığım için yordamın private yani sınıfa özel olduğuna karar verilir.

 

void Mesaj_yaz()

{

}

Hazırlamak istediğim fonksiyon sayesinde MessageBox sınıfından Show() metodu ile ekrana mesaj vereceğim. Aslında böyle bir işlem için form ve diğer nesnelerle ilgili olarak önceden tanımlı mevcut yordamlardan(olaylar) yararlanılabilir ama burdaki amacım deneysel. Bu nedenle yukarıda verdiğim Mesaj_yaz() yordamına bir satırlık kod ekledim.

static void Main()

{

Application.Run(new Form1());

}

void Mesaj_yaz()

{

MessageBox.Show(”Visual C#”);

}

Hazırladığım bu metot veya fonksiyonun formun üzerinde tıklama yapıldığı zaman işletilmesini istiyorum. Bu nedenle Form_Click() yordamına Mesaj_yaz() fonksiyonunu işletecek bir satırın yazılması gerekir. Bir fonksiyonu işletmek veya çağırmak için fonksiyonun adını yazmak yeterlidir.

void Mesaj_yaz()

{

MessageBox.Show(”Visual C#”);

}

private void Form1_Click(object sender, System.Windows.Forms.KeyPressEventArgs e)

{

Mesaj_yaz();

}

Bu şekilde fonksiyon hazırlanıp çalışma anında formun üzerine tıklama yapılırsa Form_Click() yordamı işletilir. Bu yordamda Mesaj_yaz() fonksiyonunu çağıran bir satır olduğundan Mesaj_yaz() yordamı sayesinde bir diyalog kutusu içinde ekrana mesaj verilir.

 

 

Submit a Comment

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir