Identifier Nedir? Tanımı, Türleri ve Programlamada Kullanım Alanları
Identifier, programlama dillerinde değişken, fonksiyon, sınıf, parametre gibi öğeleri adlandırmak için kullanılan benzersiz isimdir. Genellikle harfler, rakamlar ve alt çizgi karakterlerinden oluşur. Her dil için yazım kuralları değişiklik gösterse de, tanımlanan nesneyi anlaşılır şekilde belirtmesi gerekir.
Identifier, programlama ve bilgisayar biliminde değişken, fonksiyon, sınıf, yapı ve diğer öğeleri ayırt etmek için kullanılan benzersiz isim ve sembolleridir. Bir yazılım projesinde her identifier, program tarafından tanınan ve referans gösterilen belirli bir varlığı temsil eder. Identifier olmadan, derleyici veya yorumlayıcı hangi değişkene erişileceğini, hangi fonksiyonun çağrılacağını veya hangi sınıfın kullanılacağını bilemez.
Identifier Nasıl Çalışır
Identifier, kaynak kodda yazıldığı anda derleyici tarafından okunur ve anlamlandırılır. Derleyici bu isimleri bir sembol tablosunda (symbol table) depolar. Kod çalıştırılırken, identifier'a her başvuru yapıldığında, derleyici bu tablodan ilgili değişkenin bellek adresini, fonksiyonun kodunun yerini veya nesnenin referansını bulur.
Örneğin Python'da şu satırı yazarsanız:
kullanici_adi = "Ahmet"
Burada kullanici_adi identifier'dır. Python, bu ismi symbol tablosuna kaydeder ve "Ahmet" değerini ilişkilendirir. Daha sonra print(kullanici_adi) yazıldığında, Python tablodan kullanici_adi'yi arar ve "Ahmet" değerini yazdırır.
Identifier Yazım Kuralları ve Kısıtlamalar
Her programlama dilinin identifier yazım kuralları vardır. Genel kurallar şunlardır:
- İlk karakter: Harfle (a-z, A-Z) veya alt çizgiyle (_) başlamalıdır. Çoğu dilde rakamla başlayamaz.
- Sonraki karakterler: Harfler, rakamlar (0-9) ve alt çizgi (_) içerebilir.
- Uzunluk: Dile göre değişir; bazı diller 255 karaktere kadar uzun identifier destekler.
- Boşluk ve özel karakterler: Boşluk, tire (-), nokta (.) gibi karakterler genellikle yasaktır.
- Ayrılmış sözcükler:
if,else,while,forgibi ayrılmış sözcükler identifier olarak kullanılamaz. - Büyük-küçük harf duyarlılığı: C, C++, Java, Python'da
isimveIsimfarklı identifier'lardır.
Identifier Türleri
Identifier'lar, temsil ettikleri öğeye göre sınıflandırılabilir:
| Türü | Tanımı | Örnek |
|---|---|---|
| Değişken | Veri saklayan bellek konumunu temsil eder. | yaş, sıcaklık |
| Fonksiyon | Bir kod bloğunun adını belirtir. | hesapla, yazdir |
| Sınıf | Nesne yönelimli programlamada bir şablon adı. | Araba, Urun |
| Sabit | Değişmeyen değerleri temsil eder. | PI, MAX_DEGER |
| Parametre | Fonksiyona geçilen giriş değişkeni. | ad, tutar |
| Modül/Paket | Dosya veya kütüphane adı. | math, json |
Programlama Dillerine Göre Identifier Farklılıkları
Identifier kuralları dile göre değişiklik gösterir:
- Python: İlk karakter harf veya _ olmalı. Unicode karakterler desteklenebilir (bazı durumlarda Türkçe karakterler). Önerilen stil: snake_case (kucuk_harf_alt_cizgi).
- Java: İlk karakter harf, _ veya $ olabilir. CamelCase tercih edilir (kamelKelime). Sınıf isimleri büyük harfle başlamalı.
- C/C++: İlk karakter harf veya _ olmalı. Rakamlarla başlayamaz. snake_case veya camelCase kullanılabilir.
- JavaScript: Flexible kurallara sahiptir; $ ve _ de kullanılabilir. camelCase standart uygulamadır.
- SQL: Veritabanı sistemine göre değişir. Genel olarak harf veya _ ile başlamalı, bazı sistemler Türkçe karakterlere izin verir.
İyi Identifier Yazma Pratikleri
Kodun okunabilirliğini ve bakımlanabilirliğini artırmak için identifier'lar iyi seçilmelidir:
- Anlamlı olmak:
xyerinefiyat,tempyerinesicaklikyazın. - Tutarlı olma: Tüm projede aynı naming convention'ı kullanın (örneğin her yerde snake_case).
- Çok uzun olmamak: Anlamlı ama makul uzunlukta olmalı.
musteri_listesiiyi,m_l_v_dkötü. - Kısaltma dikkatli kullanmak:
fytyerinefiyatyazın; ancakid,url` gibi yaygın kısaltmalar kabul edilebilir. - Yazım hatası yapmamak: Typo içeren identifier'lar debug sürecini zorlaştırır.
"Code is read much more often than it is written." — Guido van Rossum (Python'un yaratıcısı). İyi seçilmiş identifier'lar kodun okunabilirliğini önemli ölçüde artırır.
Identifier Nerede Kullanılır
- Web Geliştirme: JavaScript'te değişkenler, fonksiyonlar ve HTML element kimlikleri (id) identifier kullanır.
- Veritabanı Tasarımı: Tablo, kolon, indeks ve view adları identifier'dır.
- Sistem Programlaması: C/C++'da bellek adresleri, pointer'lar ve yapılar identifier'larla referans gösterilir.
- Makine Öğrenmesi: Python kütüphanelerinde (TensorFlow, PyTorch) değişkenler, model adları identifier'dır.
- Embedded Systems: Mikrokontroller'lerde donanım pinleri ve sensörler identifier'larla kontrol edilir.
Yaygın Identifier Hataları
- Ayrılmış kelime kullanma:
class = 5(hata — class ayrılmış sözcük) - Rakamla başlatma:
2. ay = 2(hata — rakamla başlamaz) - Boşluk içerme:
benim degisken = 10(hata — boşluk yasak) - Özel karakter kullanma:
fiyat@ = 100(hata — @ yasak) - Büyük-küçük harf karışıklığı:
Sayivesayi'yi iki farklı değişken gibi davranmak (Python'da hata değildir ama kafa karışıklığı yaratır).
Identifier ile variable (değişken) arasındaki fark nedir?+
yaş = 25'te yaş identifier, değişken ise 25 değerini saklayan bellek alanıdır.