- Ders’te, yaygın türlerden bazılarını ve bunlarla ilişkili işlemler ile değerleri gördün. Şimdiyse bu türleri ve değerleri kodunda nasıl kullanacağını öğrenmeye başlamanın zamanı geldi.
İfadelerin kullandığı değerler bazen bilgi veya veri olarak anılır. Programların ne yapacaklarını anlamak için veriye ihtiyacı vardır ve verileri veya değerleri depolamanın da farklı yolları vardır.
Ayrıca, farklı veri türleri de vardır.
Değiştirilebilir ve Sabit
Değiştirilebilir, değişebilen anlamına gelir. DNA kodu değişmiş veya mutasyona uğramış bir mutant düşün.
Kıyıdaki dalgalar değiştirilebilirdir ve sürekli değişirler.
Bir şey sabit olduğunda ise değiştirilemez. Depremleri, gelgit dalgalarını, patlamaları veya erozyonu dikkate almazsan sahile bakan uçurum sabittir.
Peki bunun kodla ne ilgisi var?
Bir değer, program çalışırken değiştirilemiyorsa bu değer sabittir. Değer, program çalışırken başka bir yerden gelen girdiye göre değişirse bu değer değiştirilebilirdir.
Verse’te, çoğu programın çalışabilmek için ihtiyaç duyduğu temel işlemleri destekleyen yerleşik türler vardır. Bu yerleşik türler, Verse’te değişkenler ve sabitler kullanmanın temelini oluşturur.
Değişkenler ve Sabitler
Programlamada, programının kullandığı değerleri depolamak için değişkenler ve sabitler kullanılır.
Program daha sonra ne olacağını belirlemek için verilere ihtiyaç duyduğunda, bilgisayarın hesaplamaları ve kararları koddaki değişken ve sabitlerde depolanan değerlere dayalıdır.
Değişken terimi bazen genel olarak hem değişkenleri hem de sabitleri içerecek şekilde kullanılsa da bunlar arasında önemli bir fark vardır: değişkenler, bir program çalışırken değerlerini değiştirebilir ancak sabit değerler program çalışırken değiştirilemez. Başka bir deyişle, bir değişkenin değeri değiştirilebilirken (mutable) bir sabitin değeri sabittir (immutable).
Değişkenler ve Sabitler İçin Sözdizimi
Bir değişken için sözdizimi şöyledir:
Satırın başındaki var bunun bir değişken olduğunu gösterir.
Bir sabit için temel sözdizimi şöyledir:
Bir değişken ve bir sabit için sözdizimlerindeki tek farkın, var ifadesinin bir sabit söz konusu olduğunda sözdiziminden çıkarılması, bir değişken söz konusu olduğunda ise sözdiziminde yer alması olduğuna dikkat et.
Şimdi bu sözdiziminin ne söylediğini şöyle açıklığa kavuşturabiliriz:
name |
|
type |
Tür, bu değişkendeki değerle neler yapılabileceğini açıklar. Ad ve türün iki noktayla (:) ayrıldığını unutma. |
value |
Bir sabit söz konusu olduğunda, bu değer sabit kalacaktır. Bir değişken açısından bu değer, değişkenin başladığı değerdir, ancak programın yürütülmesi sırasında değişebilir. Bu değer, başlangıç değeridir. Tür ile değeri Bir değişken için başlangıç değeri ayarlamak isteğe bağlıdır, ancak bunu yapmak iyi bir uygulamadır. Değer ayarlanması, sabit için gereklidir. |
Tanımlayıcı
Tanımlayıcı, bir programcının bir ifadeye verdiği benzersiz addır.
Tanımlayıcı ve ad sözcükleri eşanlamlıdır.
Adlandırma Kuralları
Verse’te bir şeylerin adlandırılmasına yönelik kurallar vardır. Değişken ve sabitler oluştururken şu adlandırma kurallarını aklında bulundur:
- Değişkenlerine (ve diğer ifadelerine), mümkün olduğunca bunların ne yaptıklarını gösteren adlar ver.
- Değişkenlerini, kodunun başkaları tarafından daha kolay okunmasını (ve senin de daha kolay hatırlamanı!) sağlayacak şekilde tutarlı bir biçimde adlandırmak iyi bir uygulamadır.
- Tanımlayıcıdaki ilk karakter bir harf veya alt çizgi (_) karakteri olmalıdır.
- İlk karakterden sonraki karakterler harf, sayı veya alt çizgi karakteri olmalıdır. Adda birden fazla alt çizgi, hatta iki veya daha fazla alt çizgi de olabilir.
- Değişken tanımlayıcıların yanı sıra sabit tanımlayıcılar da boşluk içeremez.
- Verse büyük/küçük harfe duyarlıdır, bu yüzden büyük harf kullanımında tutarlı olman önemlidir. Bunun aksi yönünde bir davranış, kodunda hatalara sebep olacaktır.
Verse’te adlandırma kurallarına yönelik tam bir kılavuz için Verse Kodu Stil Kılavuzu bölümüne bak.
Bir Değişkeni Bildirmek
Her değişken veya sabitin, bir tanımlayıcı (ad), bunun depolayabileceği değerin türü ve değerin kendisi olmak üzere üç temel bölümü vardır.
var name : type = value
Verse’te bir değişkeni, onu bildirerek oluşturursun. Değişkenin bildirebilmesi için tanımlayıcı, tür ve değer olmak üzere üç bölümün tamamına sahip olması gerekir.
Başlatma
Bir sabit (veya diğer herhangi bir ifade) için bir başlangıç değeri belirlemek başlatma olarak adlandırılır. Bir değişken veya sabit bildirdiğin zaman başlatma gerekir.
: = işleci ile bir sabit veya değişkendeki değerleri başlatabilirsin.
Bu işleçle, adın : işaretinden önce geldiğini, türün : ile = arasında olduğunu, değerin ise = işaretinden sonra geldiğini unutma.
var Coins : int = 500
Sabitleri Etkin Bir Şekilde Kullanma
Kodunda birden fazla yerde görünen ve kesinlikle değişmeyen bir değerin olduğunda bir sabit kullanmak akıllıcadır.
2. Ders’teki değişmez değerleri hatırlıyor musun? Bir değişmez değer, hiçbir zaman değişime uğramayan bir değerdir. İdeal olarak, değişmez değerleri idareli kullanmalısın.
Örneğin, oyunun, oyuncunun yüz parayla bir fare kapanı satın almasına izin veriyorsa oyuncu bir fare kapanı satın aldığında kodun Coinsden çıkarma yaptığı her durumda programa 100 değişmez değerini yazabilirsin veya CoinsPerMousetrap gibi 100 değerini tutan bir sabit bildirebilir ve kullanabilirsin (bu seçenek çok daha iyidir!).
CoinsPerMousetrap : int = 100
Sabitleri bu şekilde kullanmak, kodunun hem senin hem de ekip arkadaşların için daha kolay okunabilir olmasını sağlar. Böylece, herhangi biri sonradan uzun süredir dokunulmamış bazı kodları değiştirmek istediğinde işi çok daha kolay olur.
Açıklanmamış değişmez değerler yerine iyi adlandırılmış sabitler kullandığında, kodunu diğer programcıların anlaması da daha kolay olacaktır.
Sabitleri bu şekilde kullanmanın bir başka avantajı da, bir fare kapanının maliyeti gibi bir değeri değiştirmeye karar vermen halinde, bu değerin kullanıldığı her durumu değil, yalnızca sabiti güncellemenin gerekecek olmasıdır.
Sabitlerin için mümkün olduğunca açık adlar kullan. Yukarıdaki örnekte CoinsPerMousetrap, oyuncunun bir fare kapanı satın almak için harcayacağı para sayısına ilişkin bir sabiti açık bir şekilde temsil ediyor.
Değişmeyecek bir değerin olduğunda, o değeri bir sabitle depola.
Bir Değişkene Değer Atama
Değişken değerleri, sabitlerin değerlerinden farklı olarak, program çalıştığı sırada değiştirilebilir.
Sabitler seni aynı değeri tekrar tekrar girmekten kurtarır. Peki, değişken kullanmanın avantajı nedir?
Bazen bir değeri başka bir girdiye dayalı olarak değiştirebilmeye ihtiyaç duyarsın.
Örneğin, oyuncu bir fare kapanı satın aldığında, oyuncunun bir fare kapanı için harcadığı para sayısını oyuncunun sahip olduğu toplam para sayısından çıkarmak için şu kod satırını kullanabilirsin:
set Coins = Coins - CoinsPerMousetrap
Şimdi bu kod satırını parçalarına ayıralım:
İlk parça olan set, Verse’te yerleşik bir anahtar sözcüktür. set anahtar sözcüğü, bir değişkenin değerini değiştirmek için kullanılabilir. Burada bu kod satırı, Coins değerinin, Coins değerinden CoinsPerMousetrap çıkarıldığında elde edilecek değere eşit olacak şekilde değiştirilebileceğini söylüyor.
set kullanılarak yapılan bu değer değişikliği yalnızca bir değişkenle yapılabilir. seti bir sabitle kullanamazsın.
Bu durumda hem Coins hem de CoinsPerMousetrap, programda zaten var olan ifadeler için tanımlayıcılar olacaktır.
Özet
- Hem değişkenler hem de sabitler, değerleri depolamak için kullanılır.
- Bu ikisi arasındaki temel fark, program çalışırken bir sabitin değerinin değiştirilememesi, ancak değişken değerinin değiştirilebilmesidir.
- Değişken ve sabitler, değerlendirildikleri zaman sonuç üreten ifadelerdir.
- Değişken ve sabitler Verse’te bildirilir. Bildirme işlemi, ifadeye benzersiz bir ad veya tanımlayıcı, bir tür ve bir değer verilerek yapılır.
- Bir ifadeye bir başlangıç değeri atadığında buna başlatma denir.