Ana içeriğe atla

Scala'da Değişkenler

Scala'nın değişkenlerini, değişken tanımlama kurallarını, birden çok bildirim ve atama içeren farklı değişken türlerini ve bir değişkenin kapsamını öğrenin.
Güncel 3 Eki 2026  · 10 dk. oku

Yapay Zeka ile Keşfedin

ChatGPTClaudePerplexity

DataCamp'in yeni yayımlanan Scala kursuna göz atın: Introduction to Scala.

Scala, Büyük Veri alanında Apache Spark ile birlikte kullanılan büyük veri hacimleriyle çalışırken veri bilimciler tarafından yaygın olarak kullanılır. Hem nesne yönelimli hem de fonksiyonel bir programlama dilidir ve aşağıda listelenen birçok önemli özelliğe sahiptir:

  1. Scala, değişkenin veri türünün kullanılmadan önce tanımlandığı, statik olarak türlenen bir dildir. Tür denetimi çalışma zamanında değil, derleme zamanında yapılır.
  2. Ayrıca, değişkenler üzerinde işlem yapılmadan önce denetlendiği "Güçlü Türlü" bir dildir.
  3. Ayrıca Tür Çıkarımı'nı destekler; derleyici türü ifade veya sabitten çıkarır, bu nedenle değişken türünü belirtmek isteğe bağlıdır.

Bu eğitimde aşağıdaki konuları ele alacaksınız:

Değişkenler

Değişkenler bellekte adlandırılmış bir alandır ve derleyici, ilgili değişkenin veri türüne göre ayrılmış bir konum ayırır. Değişken, Scala'da aşağıdaki sözdizimiyle bildirilir:

val or val variable_name: variable_datatype = value;

Yukarıdaki sözdiziminde değişken, 'var' ya da 'val' anahtar sözcüğü kullanılarak iki yoldan biriyle tanımlanabilir. Noktalı virgülden önce yeni değişkeniniz olan 'variable_name' ve ardından iki nokta üst üste gelir. Değişkenin veri türü 'variable_datatype' olup herhangi bir geçerli veri türü olabilir. Sonrasında 'value' değeri 'variable_name' değişkenine atanır.

Örneğin:

val varValue: Byte = 8;

'val', değişken tanımlamak için kullanılan anahtar sözcüktür ve 'varValue' değişken adıdır. Veri türü 'Byte'tır ve 8 değerini içerir. 'Byte', 2−7 ile 27−1 arasında değişen, işaretli 8 bitlik bir değerdir.

Yukarıdaki 'variable_datatype', Scala'da var olan herhangi bir veri türü olabilir ve şunlardır:

  1. Int: 2−31 ile 231−1 aralığında, 32 bitlik işaretli (pozitif veya negatif) bir değerdir.
  2. Byte: 2−7 ile 27−1 aralığında, 8 bitlik işaretli bir değerdir.
  3. Short: 2−15 ile 215−1 aralığında, 16 bitlik işaretli bir değerdir.
  4. Float: 32 bit veya 64 bit olabilir.

Benzer şekilde Long, Char, Boolean, Char, String, Boolean, Null gibi diğer veri türlerinin de kendi aralıkları vardır ve ayrıntılı açıklama Scala'ya Yeni Başlayanlar Rehberi adlı eğitimde verilmiştir. Ayrıca 'variable_datatype' büyük harfle başlamalıdır; örneğin Int, 'I' harfini içerir; bu da yukarıdaki tüm veri türlerinin Scala'da birer nesne olduğunu gösterir.

Scala'da Değişken Tanımlama Kuralları

Scala'da değişken tanımlama kuralları ve gelenekleri şöyledir:

  1. Değişken adı lower camel case ile başlar. Örneğin 'nameOfGirl' değişken adında, ilk harf olan 'n' küçük harftir. Sonraki kelimelerin ilk harfleri ise 'O' ve 'G' gibi büyük yazılır.
  2. Değişken adı, Scala'da tanımlı ayrılmış sözcükleri veya anahtar sözcükleri içeremez.
  3. Değişken adı dolar işareti ('$') ve alt çizgi ('_') içerebilir. Ancak '#','&' gibi diğer özel karakterlere izin verilmez. Ayrıca alt çizgi kullanımı da önerilmez.
  4. Boşluk (sekme, boşluk) değişken adında kullanılamaz.
  5. Değişken adı bir harfle başlamalıdır; bir sayı veya başka karakterle başlayamaz.

Değiştirilebilir (Mutable) Değişkenler

Değiştirilebilir değişkenler, değişkenlerin değerlerinin bildirimin ardından bile değiştirilmesine izin verir.

Değiştirilebilir değişkenin sözdizimi aşağıda gösterilmiştir:

var variable_name : variable_datatype = value;

Değiştirilebilir değişkenin sözdizimi aşağıdaki gibi de tanımlanabilir:

var variable_name = value;

Değiştirilebilir değişken örneği aşağıda gösterilmiştir:

var nameOfThing: String = "Car";

Yukarıdaki örnekte var, Değiştirilebilir Değişkenleri tanımlamak için kullanılan anahtar sözcüktür. Değişkenin adı 'nameOfThing'tir. Bunu, veri türü 'String' olan iki nokta üst üste izler. Bellekte depolanan değeri 'Car' olacaktır.

Yukarıdaki Değiştirilebilir değişken örneği, farklı sözdizimiyle aşağıdaki gibi yapılabilir:

var nameOfThing = "Car";

Yukarıda yapıldığı gibi, değişkeninizi veri türünü belirtmeden tanımlayabilirsiniz. Scala derleyicisi bunun 'String' veri türü olduğunu otomatik olarak belirler; buna Tür Çıkarımı denir.

Değişkenin değerini aşağıda gösterildiği gibi kolayca değiştirebilirsiniz:

nameOfThing = "Bike";
print(nameOfThing)

Değişkenin değeri "Car"dan "Bike"a değişir. Çıktı "Bike" olacaktır; çünkü 'var' anahtar sözcüğü, değişkenin değerini değiştirmenize olanak tanır (Kaynak: Variables in Scala).

Değiştirilemez (Immutable) Değişkenler

Değiştirilemez değişkenler, oluşturulduktan sonra değeri değiştirilemeyen ve 'val' anahtar sözcüğü kullanılarak bildirilen değişkenlerdir.

Değiştirilemez değişkenin sözdizimi aşağıda gösterilmiştir:

val variable_name : variable_data type = value;

Değiştirilemez değişkenin sözdizimi aşağıdaki gibi de tanımlanabilir:

val variable_name = value;

Değiştirilemez değişken örneği aşağıda gösterilmiştir:

val numberOfThing: Int = 2;

Yukarıdaki örnekte val, Değiştirilemez değişkenleri tanımlamak için kullanılan anahtar sözcüktür ve değişkenin adı 'numberOfThing'tir. Bunu, veri türü 'Int' olan iki nokta üst üste izler ve bellekte depolanan değer 2'dir.

Yukarıdaki Değiştirilemez değişken örneği, farklı sözdizimiyle aşağıdaki gibi yapılabilir:

val numberOfThing = 2;

Yukarıda yapıldığı gibi, değişkeninizi veri türünü belirtmeden tanımlayabilirsiniz; Scala derleyicisi bunun 'Int' veri türü olduğunu otomatik olarak anlar. Bu işleme Tür Çıkarımı denir (Kaynak: Variables in Scala).

Aşağıda gösterildiği gibi değişkenin değerini değiştiremezsiniz:

numberOfThing = 7;

Yukarıdaki örnek, "error: not found: value numberOfThing" gibi bir hatayla sonuçlanacaktır; bu da aşağıda gösterildiği gibi değerin yeniden atanmasının mümkün olmadığını gösterir:

hata

Birden Çok Bildirim ve Atama

Scala'da, değişken adı virgüllerle ayrılarak ve değişkene ait değerle birlikte "=" işareti kullanılarak 'var' anahtar sözcüğüyle birden çok bildirim yapılabilir.

var (x, y, z) = (5, 4.5, "Sit")

Yukarıdaki örnekte x, y ve z değişkenlerinin sırasıyla 5, 4.5 ve "Sit" değerlerini aldığı görülebilir.

değişkenler

Scala'da, değişken adı virgüllerle ayrılarak ve değişkene ait değerle birlikte "=" işareti kullanılarak 'val' anahtar sözcüğüyle tek satırda birden çok atama da yapılabilir.

val a, b, c = 1;

Yukarıdaki örnekte, a, b ve c değişkenlerinin tamamının 1 değerini aldığı görülebilir.

değişkenler

Değişkenin Kapsamı

Kapsam, değişkenlerin görünürlüğüdür ve ömürleri kodun belirli blokları içinde geçerlidir. Değişken, Yerel (Local) veya Genel (Global) kapsamda tanımlanabilir. Örneğin:

var globalVar = 10
def sub(){
var difference = 9-4;
}
print(difference)//Error
print(globalVar)//Valid

Yukarıdaki kodda 'difference' değişkeni, 'sub' yöntemi içinde bildirildiği için Yerel Kapsamdadır ve çıkarma işlemi geçerli sonuç verir; ancak 'sub' yöntemi dışında değeri yazdırmak hata verir. Ayrıca, 'globalVar' değişkeninin programın herhangi bir yerinden erişilebildiği ve üzerinde her türlü işlemin yapılabildiği Genel Kapsam da vardır.

Scala'da değişkenler için üç tür kapsam vardır (Kaynak: Scala- Variables):

  1. Yerel değişkenler
  2. Alanlar (Fields)
  3. Yöntem Parametreleri

Yerel Değişkenler

Yerel değişkenler, bir yöntem içinde bildirilen ve yalnızca yöntemlerin içinde erişilebilen, dışında erişilemeyen değiştirilebilir veya değiştirilemez değişkenlerdir.

Yerel değişkenler hakkında bilgi edinmek için aşağıdaki basit örneğe bakabilirsiniz:

class Perimeter  
{
    def triangle()  
    {
        var side1 = 10;
        var side2 = 20;
        var side3 = 30;

        var total = side1+side2+side3;
        print("Perimeter of the  triangle is: " + total);
    }
}

object Test  
{

    def main(args:Array[String])  
    {
        val p1 = new Perimeter()
        p1.triangle()
    }
}
defined class Perimeter
defined object Test

Yukarıdaki kod şu sonucu verir:

Üçgenin çevresi: 60

Yukarıdaki programda 'Perimeter' adlı bir sınıf ve 'Test' adlı bir nesne bulunur; içinde side1, side2, side3 olmak üzere üç değiştirilebilir değişkenin yer aldığı triangle adlı bir yöntem vardır. Hesaplama ve sonucun yazdırılması yöntem içinde yapılır ve doğru çıktıyı verir.

Alanlar (Fields)

Sınıf içinde tanımlanan değişkenlere, değiştirilebilir veya değiştirilemez türde olabilen alan değişkenleri denir. Bir değişken sınıf içinde bildirildiyse ve herhangi bir yöntem içinde tanımlı değilse erişim belirleyici varsayılan olarak public olur ve değişkene programın her yerinden erişilebilir. Ancak private bir değişkene yalnızca tanımlandığı sınıf içinde erişilebilir; sınıfın kapsamı dışında veya nesneden bile erişilemez.

class FieldExample
{
  var value1 = 10;
  private var value2 = 30;
  def operation()
  {
    println("Value of value1:"+value1)
  }
  println("Value of value2: "+value2);
}

object Demo
{
  def Main(args:Array[String])
  {
    val obj = new FieldExample()
    obj.operation()
    print(obj.value1)//Valid
    print(obj.value2)


  }
}
defined class FieldExample
defined object Demo

Yukarıdaki kod şu sonucu verir:

Value of value2: 30
Value of value1:10
10

Yukarıdaki programda 'FieldExample' adlı bir sınıf, 'Demo' adlı bir nesne ve 'operation' adlı bir yöntem bulunur. Genel (public) değişken value1'e nokta gösterimiyle erişilebilir ve değeri 10 olarak yazdırılır. Özel (private) value2 değişkeni 30'dur; bu değişkene erişmeye ve yazdırmaya çalışmak ise hata oluşturur.

Yöntem Parametreleri

Yöntem parametreleri, yöntem çağrıldığında değeri kabul eden değişkenlerdir ve 'val' anahtar sözcüğü kullanılarak tanımlanan değişkenlerin değiştirilemez olması gerekir. Ayrıca, bir başvuru yapıldığında değişkene yöntem dışında da erişilebilir.

Yöntem Parametreleri hakkında bilgi edinmek için aşağıdaki basit örneğe bakabilirsiniz:

class Triangle
{
    def calculate(height: Int, width: Int)
    {
        var result = 0.5*(height+width);
        println("Area of triangle is: " + result);
    }
}

object Area  
{
     def main(args:Array[String])
    {
        val a = new Triangle()
        a.calculate(4,5);
    }
}
defined class Triangle
defined object Area

Yukarıdaki kod şu sonucu verir:

Area of triangle is: 4.5

Yukarıdaki programda 'Triangle' adlı bir sınıf bulunur. 'calculate' adlı bir yöntem ve height ile width olmak üzere iki yöntem parametresi içerir. 'calculate', a nesne örneği kullanılarak çağrıldığında 4 ve 5 tamsayı değerleri geçirilir.

Sonuç

Tebrikler, bu eğitimin sonuna geldiniz!

Bu eğitimde Scala'nın değişkenlerini, değişken tanımlama kurallarını, birden çok bildirim ve atama içeren farklı değişken türlerini ve bunlarda değişken kapsamını ele aldınız.

Scala hakkında daha fazla bilgi edinmek isterseniz DataCamp'in Introduction to Scala kursunu alın.

Konular
Scala

Python için Kurslar

Kurs

Introduction to Scala

3 sa
27.1K
Begin your journey with Scala, a popular language for scalable applications and data engineering infrastructure.
Ayrıntıları GörüntüleRight Arrow
Kursa Başla
Devamını GörRight Arrow
İlgili

blog

Hızlı Sevkiyat İçin Pratik Vibe Kodlama Teknoloji Yığını

Ön uç, arka uç, veritabanları, kimlik doğrulama, depolama, e-posta, test, dağıtım ve izleme için en iyi araçları keşfedin.
Abid Ali Awan's photo

Abid Ali Awan

14 dk.

blog

2026’da En Popüler 40 Yazılım Mühendisi Mülakat Sorusu

Algoritmalar, sistem tasarımı ve davranışsal senaryoları kapsayan bu temel sorularla teknik mülakat sürecine hakim olun. Uzman cevapları, kod örnekleri ve kanıtlanmış hazırlık stratejileri edinin.
Dario Radečić's photo

Dario Radečić

15 dk.

Eğitim

Python'da Listeyi String'e Nasıl Dönüştürürsünüz

Bu hızlı eğitimde, Python'da bir listeyi string'e nasıl dönüştüreceğinizi öğrenin.
Adel Nehme's photo

Adel Nehme

Eğitim

.gitignore Nasıl Kullanılır: Örneklerle Pratik Bir Giriş

Git deponuzu temiz tutmak için .gitignore’u nasıl kullanacağınızı öğrenin. Bu eğitim; temelleri, yaygın kullanım durumlarını ve başlamanıza yardımcı olacak pratik örnekleri kapsar!
Kurtis Pykes 's photo

Kurtis Pykes

8 dk.

Devamını GörDevamını Gör