Bildirim (bilgisayar programlama)
Görünüm
Bildirim (İngilizce: declaration), bilgisayar programlamada bir tanımlayıcının (değişken, fonksiyon, sınıf vb.) özelliklerini belirten dil yapısıdır. Derleyici veya yorumlayıcıya tanımlayıcının türü, adı ve diğer nitelikleri hakkında bilgi verir. Bildirimler, programın geçerli kapsamı içinde bir varlığın kullanılabilmesi için gereklidir ve genellikle şu unsurları içerir:[1]
- Tanımlayıcı adı (identifier)
- Veri türü (ing. data type) veya yapısal bilgi (ing. construction)
- Depolama sınıf belirteci (static, extern gibi)
- Erişim belirleyici (public, private gibi)
Tarihçe
[değiştir | kaynağı değiştir]Bildirim kavramının evrimi:
| Dönem | Dil | Gelişme |
|---|---|---|
| 1950'ler | Fortran, COBOL | Basit değişken bildirimleri |
| 1970'ler | C, Pascal | Fonksiyon prototipleri, yapı bildirimleri |
| 1980'ler | C++, Objective-C | Sınıf ve nesne bildirimleri |
| 1990'lar | Java, C# | Arayüz ve jenerik tür bildirimleri |
| 2000'ler | TypeScript, Rust | Gelişmiş tür çıkarımı ve mülkiyet bildirimleri |
Temel Özellikler
[değiştir | kaynağı değiştir]Tür Belirtme
[değiştir | kaynağı değiştir]Programlama dillerinde tür bildirimi üç temel şekilde yapılır:
1. Açık bildirim: Değişken türünün programcı tarafından belirtilmesi
int sayi; // C'de tamsayı bildirimi
2. Tür çıkarımı: Derleyicinin değere göre türü otomatik belirlemesi
let x = 5; // Rust'ta tür çıkarımı
3. Yapısal tipleme: İsimden ziyade yapıya dayalı tür belirleme
let kullanici = {ad: "Ali", yas: 30}; // TypeScript
Kapsam Yönetimi
[değiştir | kaynağı değiştir]Değişken kapsam türleri:
- Global kapsam
var globalVar = 10; // JavaScript'te fonksiyon kapsamlı
- Blok kapsamı
{
let blockVar = 20; // ES6 blok kapsamlı değişken
}
Depolama Nitelikleri
[değiştir | kaynağı değiştir]| Belirteç | Dil | Açıklama |
|---|---|---|
| static | C/C++ | Program ömrü boyunca varlığını sürdürür |
| auto | C | Otomatik ömürlü (öntanımlı) |
| final | Java | Değerin değiştirilemezliği |
| mut | Rust | Değiştirilebilir değişken |
Bildirim Türleri
[değiştir | kaynağı değiştir]Değişken Bildirimi
[değiştir | kaynağı değiştir]Dillere göre değişken bildirim örnekleri:
- Python 3.6+ tür ipuçları
isim: str = "Vikipedi" sayi: int = 42
Fonksiyon Bildirimi
[değiştir | kaynağı değiştir]- Kotlin'de fonksiyon bildirimi
fun kareAl(x: Int): Int {
return x * x
}
Sınıf Bildirimi
[değiştir | kaynağı değiştir]- C#'da sınıf bildirimi
public class Nokta {
public int X { get; set; }
public int Y { get; set; }
}
Kavramsal Ayrım
[değiştir | kaynağı değiştir]- Bildirim ile Tanım ayrımı tablosu
| Özellik | Bildirim | Tanım |
|---|---|---|
| Amaç | Varlığın özelliklerini duyurmak | Uygulama/bellek ayırma sağlamak |
| Derleme aşaması | Sözdizimsel analiz | Kod üretimi |
| Örnek (C++) | class Araba;
|
class Araba { int tekerlek=4; };
|
| Tekrar sayısı | Çoklu (header dosyalar) | Tek (linker hatası önlemek için) |
Önem ve Tartışmalar
[değiştir | kaynağı değiştir]- Performans Etkisi: Açık tür bildirimleri derleyici optimizasyonlarını kolaylaştırır[3]
- Okunabilirlik: TypeScript gibi dillerde tür bildirimleri kod dokümantasyonu görevi görür
- Tartışmalar: Python topluluğunda tür ipuçlarının zorunlu olup olmaması[4]
Ayrıca Bakınız
[değiştir | kaynağı değiştir]Kaynakça
[değiştir | kaynağı değiştir]- ^ Kernighan, Brian W.; Ritchie, Dennis M. (1988). The C Programming Language (2. bas.). Prentice Hall. ISBN 978-0131103627.
- ^ Wexelblat, Richard L. (1981). "History of Programming Languages". ACM Monograph Series.
- ^ Aho, Alfred V. (2006). Compilers: Principles, Techniques, and Tools. Pearson.
- ^ "PEP 484". Python Software Foundation. 6 Nisan 2015 tarihinde kaynağından arşivlendi.