Fonksiyonlar ve Prosedürler Nedir?
Bilgisayar programlamada, tekrar eden kod bloklarını düzenlemek ve yeniden kullanılabilir hale getirmek için fonksiyonlar ve prosedürler kullanılır. Bu yapılar, kodun okunabilirliğini ve yönetilebilirliğini artırır.
Fonksiyonlar, belirli bir görevi yerine getiren ve bir değer döndüren kod bloklarıdır. Prosedürler ise bir görevi yerine getirir ancak genellikle bir değer döndürmezler.
Adım adım çözümlü örnekler
Bir sayının karesini hesaplayan bir fonksiyon örneği verin.
1. Fonksiyon tanımı: `def kare_hesapla(sayi):` 2. İşlem: `sonuc = sayi * sayi` 3. Değer döndürme: `return sonuc` 4. Kullanım: `print(kare_hesapla(5))`
Ekrana 'Merhaba Dünya!' yazdıran bir prosedür örneği verin.
1. Prosedür tanımı: `def selamla():`
2. İşlem: `print('Merhaba Dünya!')`
3. Kullanım: `selamla()`Bilgi kartları
Mini test
S1.Aşağıdakilerden hangisi bir fonksiyonun temel özelliğidir?
S2.Bir prosedür genellikle ne yapar?
S3.Aşağıdaki kod parçacığında 'topla' nedir?
Sık yapılan hatalar
Fonksiyonlar ve prosedürler tamamen aynıdır. — Doğrusu: Fonksiyonlar değer döndürürken, prosedürler genellikle döndürmez. Bu, aralarındaki temel farktır.
Prosedürler programda hiçbir işe yaramaz çünkü değer döndürmezler. — Doğrusu: Prosedürler, belirli görevleri yerine getirerek kodun düzenlenmesine ve okunabilirliğinin artırılmasına yardımcı olur, değer döndürmemeleri işlevsiz oldukları anlamına gelmez.
Sıkça sorulan sorular
Her programlama dilinde fonksiyon ve prosedür kavramı aynı mıdır?
Temel mantık aynı olsa da, bazı dillerde (örneğin Pascal) 'prosedür' ve 'fonksiyon' açıkça ayrılırken, bazı dillerde (örneğin C, Python) 'fonksiyon' terimi her ikisi için de kullanılır ve geri dönüş değeri opsiyonel olabilir.
Fonksiyonlar neden önemlidir?
Kodun modülerliğini sağlarlar, aynı kod parçasının tekrar tekrar yazılmasını önlerler (DRY prensibi - Don't Repeat Yourself), hata ayıklamayı kolaylaştırırlar ve programların daha anlaşılır olmasını sağlarlar.
Prosedürler hangi durumlarda tercih edilir?
Bir işlem gerçekleştirilmesi gerektiğinde ancak bu işlemin sonucunun doğrudan bir değere ihtiyaç duyulmadığı durumlarda tercih edilebilir. Örneğin, bir dosyaya veri yazmak veya ekrana bir mesaj yazdırmak gibi.