Ana içeriğe atla

Scala’ya Yeni Başlayanlar için Rehber

Sözdizimi, bir ortamın nasıl kurulacağı ve çeşitli yaygın veri türleri de dahil olmak üzere Scala’nın temellerini öğrenin.
Güncel 3 Eki 2026  · 6 dk. oku

Yapay Zeka ile Keşfedin

ChatGPTClaudePerplexity

Giriş

scala logosu

Scala, İsviçre’deki École Polytechnique Fédérale de Lausanne (EPFL) kurumunda profesör olan ve Alman bir bilgisayar bilimci olan Martin Odersky tarafından tasarlanmıştır. Martin, 2001’de Scala’yı oluşturmaya başladı ve ilk sürüm 2004’te yayınlandı.

Scala, Scalable Language (Ölçeklenebilir Dil) anlamına gelir. Java programlama diliyle birkaç ortak noktası olan genel amaçlı, nesne yönelimli bir dildir. Fonksiyonel programlamayı da destekler. Scala’nın tasarım kararlarının birçoğu, Java programlama dilinin eksikliklerini gidermeye yöneliktir.

Scala’nın sunduğu birkaç özellik şunlardır:

  • Scala’nın kaynak kodu Java bytecode’a derlenebilir ve dolayısıyla Java Sanal Makinesi (JVM) üzerinde çalıştırılabilir.

  • Java ile dil birlikte çalışabilirliği sağlar; böylece her iki dilde yazılmış kütüphaneler Scala veya Java kod tabanında referans alınabilir.

  • Java gibi, Scala da süslü parantezli bir sözdizimi kullanır.

  • Currying, tür çıkarımı, değişmezlik, tembel değerlendirme ve desen eşleme gibi Scheme, Standard ML ve Haskell gibi fonksiyonel programlama dillerinin birçok özelliğine sahiptir.

  • JavaScript kullanarak Web uygulamaları için destek.

  • Java’dan farklı olarak, Scala operatör aşırı yükleme, isteğe bağlı parametreler, adlandırılmış parametreler ve ham dizeleri destekler.

Scala hakkında ilginç bir bilgi de, ölçeklenebilirliği ve arka uç işlemlerde kullanılabilme yeteneği sayesinde Apple, Twitter, Walmart ve Google gibi şirketler tarafından yaygın olarak kullanılmasıdır.

Jupyter Notebook’ta Scala Kurulumu

Jupyter Notebook, özellikle veri bilimi alanında, bilgisayar bilimlerinde en yaygın kullanılan araçtır. spylon-kernel yardımıyla Scala geliştirmeyi de destekler.

Not: Jupyter Notebook’a yeniyseniz, lütfen şu kapsamlı eğitici içeriğe göz atın.

Jupyter Notebook’ta Scala ortamını kurmak gözünüzü korkutmasın. Şimdi birkaç adımda hızlıca kuralım.

  • Önce, spylon-kernel’i kuracaksınız.

    pip install spylon-kernel (Python 2)
    pip3 install spylon-kernel (Python 3)

  • Ardından, Jupyter Notebook’ta scala-kernel seçebilmenizi sağlayacak bir çekirdek tanımı oluşturacaksınız.

    python -m spylon_kernel install (Python 2)
    python3 -m spylon_kernel install (Python 3)

  • Sonrasında, önemli bir adım olarak, spylon-kernel bazı spark bileşenlerini de kurduğundan pyspark ve findspark paketlerini kuracaksınız.

    pip install pyspark findspark (Python 2)
    pip3 install pyspark findspark (Python 3)

  • Son olarak, Jupyter Notebook’u başlatın ve çekirdek olarak spylon-kernel’i seçin; hepsi bu kadar!

jupyter notebook örneği

  • Scala çekirdeğinin doğru yapılandırılıp yapılandırılmadığını test etmek için küçük bir kod parçası çalıştıralım.
val x = 2
val y = 3
x*y
x: Int = 2
y: Int = 3
res1: Int = 6

Harika! Yukarıdaki çıktıda gördüğünüz gibi, Jupyter Notebook’ta Scala ortamını başarıyla yapılandırdınız.

Temel Sözdizimi

Scala’da Hello, World! yazdırarak başlayalım.

print("Hello, World!")
Hello, World!

Gördüğünüz gibi, son derece basit; argüman olarak verilen girdiyle birlikte bir print komutu yeterli.

Şimdi, Scala’daki bazı sözdizimi ayrıntılarına bakalım:

  • Scala büyük/küçük harfe duyarlıdır; bu, DataCamp ve dataCamp tanımlayıcılarının Scala’da farklı anlamlara geleceği anlamına gelir.

  • Scala’da tüm sınıf adlarının ilk harfi Büyük Harf olmalıdır. Eğer bir sınıf adı birkaç kelimeden oluşuyorsa, her bir kelimenin ilk harfi büyük olmalıdır. Örneğin, class MyScalaDataCampTutorial.

  • Scala’daki metot adları, esas olarak sınıf adlarından ayırt edilebilmesi için biraz farklı çalışır. Metot adları küçük harfle başlamalıdır (Kaynak). Birden fazla kelime metot adını oluşturuyorsa, içteki her kelimenin ilk harfi büyük olmalıdır. Örneğin, def firstDatacampScalaTutorial()

  • Scala’da, program dosyasının adı nesne adıyla birebir aynı olmalıdır. Dosyayı kaydederken, nesne adını kullanmalı ve sonuna .scala uzantısını eklemelisiniz. Örneğin, nesne adının ScalaTutorial olduğunu varsayalım. O halde dosya ScalaTutorial.scala olarak kaydedilmelidir.

    Not: Eğer dosya adı ile nesne adı eşleşmezse, programınız derlenmeyecektir.

  • Son olarak, çoğu programlama dilinde olduğu gibi, Scala programının çalışması da her Scala programının kritik bir parçası olan main() metodundan başlar.

Aşağıdaki görsel, Scala’da sabitler, değişkenler veya başka herhangi bir tanımlayıcı olarak kullanılamayan ayrılmış sözcükleri göstermektedir.

scala’da ayrılmış kelimeler
(Kaynak)

Veri Türleri

Scala’daki veri türleri, bellek ayak izi ve kesinlik bakımından C, C++, Java, Python vb. birçok diğer programlama diliyle neredeyse aynıdır.

Son olarak, Scala’da bulunan bazı veri türlerine bakalım:

  • Int: 32 bit işaretli (hem pozitif hem negatif değer alabilir) bir değer; aralığı $2^{-31}$ ile $2^{31} - 1$ arasındadır

  • Byte: 8 bit işaretli bir değer; aralığı $2^{-7}$ ile $2^{7} - 1$ arasındadır

  • Short: 16 bit işaretli bir değer; aralığı $2^{-15}$ ile $2^{15} - 1$ arasındadır

  • Long: 64 bit işaretli bir değer; aralığı $2^{-63}$ ile $2^{63} - 1$ arasındadır

  • Float: Hem 32 bit (tek duyarlıklı kayan nokta) hem de 64 bit (çift duyarlıklı kayan nokta)

  • Char: 16 bit işaretsiz (yalnızca pozitif değer alabilir) bir Unicode karakteri.

Diğer bazı veri türleri arasında String, Boolean, Null bulunur.

Sonuç

Bu eğitimi tamamladığınız için tebrikler.

Scala öğrenmekle ilgilenen yeni başlayanlar için iyi bir başlangıç noktasıdır.

Daha fazlasını öğrenmek için DataCamp’in Scala eğitimlerine göz atın:

Scala’da Fonksiyonlar ve Metotların Temelleri

Scala’da IF ELSE

Scala’da Operatörler

Scala’da Listeler

Scala ile ilgili, if/else, for döngüleri, çeşitli operatörler vb. gibi hâlâ ele alınmamış pek çok bilgi var; bunlar gelecekteki eğitimlerde yer alacak, bizi takipte kalın!

Kaynakça:

Lütfen bu eğitimle ilgili tüm sorularınızı aşağıdaki yorumlar bölümünde sormaktan çekinmeyin.

Konular
Scala
Veri Bilimi

Veri Bilimi ve Scala hakkında daha fazla bilgi edinin

Kurs

Introduction to Scala

3 sa
27.2K
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

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.

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.

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