Sözcüksel analiz: Revizyonlar arasındaki fark

[kontrol edilmemiş revizyon][kontrol edilmiş revizyon]
İçerik silindi İçerik eklendi
Mertcandav (mesaj | katkılar)
Şablon bildirimi kaldırıldı ve içerik genişletildi.
YBot (mesaj | katkılar)
1. satır:
[[Bilgisayar bilimi]]<nowiki/>nde, Lexer sözcüksel analiz gerçekleştiren program parçasının adıdır. Türkçede direkt çevirisinin yapılabileceği doğru bir kelime olmayan terimlerden biri denebilir. Sözcüksel analiz kaynak kod üstünde gerçekleştirilen bir eylemdir. Sözcüksel analiz sonucunca kaynak kodun program tarafından incelenip ayrıştırılarak anahtar kelime, operatör ya da tanımlayıcılar gibi her bir ögesinin jeton olarak temsili elde edilir.
 
Sözcüksel analizin nasıl gerçekleştirileceği elbette [[yazılım geliştirici]]<nowiki/>nin [[algoritma]] tasarımına kalmıştır. Her bir jeton, sözcüksek analiz gerçekleştirilirken belirli bir anlam ifade etmesi için lexer tarafından oluşturulur. Bahsi geçen anlamı kazanabilmesi için her bir jetona belirli veriler atanmalıdır. En önemli veri jetonun temsil ettiği ögenin tipidir. Bu bir tür kimliktir, her bir tür için benzersiz bir tamsayı ideal bir seçimdir. Bu tamsayı değerine göre jetonun bir anahtar kelime, operatör, tanımlayıcı ya da farklı bir şey olduğu karakterize edilir. İkinci veri ise ögenin türüdür. Örneğin jeton bir operatör lakin hangi operatör, bunun için metin türünde bir tür verisi tutmak ideal bir seçimdir. Bunların yanı sıra yazılım geliştiricinin yazılım tasarımına göre satır ve sütün verileri, hangi [[Kaynak kodu|kaynak kod]] dosyasından ayrıştırıldığı gibi ek bilgiler de depolanabilir. Karakterizasyon yaklaşımı olarak operatör, anahtar kelime gibi belirli bir grubu temsil etmek yerine direkt olarak her bir anahtar kelime, operatör ve diğer dil ögelerine benzersiz bir kimlik tamsayısı ataması da gerçekleştirilebilir.
 
Lexer algoritması dilin tasarımına göre değişiklik göstermelidir. Örneğin [[Python]] gibi [[sözdizim]]<nowiki/>sel olarak girintiye (indention) dayalı ise, her bir girinti için jeton oluşturma ya da farklı bir yaklaşım benimsenebilir. Aksi halde bu tarz karakterler anlam ifade etmiyorsa, boşluk karakterlerinin atlanması gerekebilir. Mantıksal olarak tanımlanamayan bir jeton hata sebebi olmalıdır.
 
== Jeton ==