Scala Programlama Dili Nedir Kullanım avantaları Nedir

0
30
Scala Programlama Dili Nedir Kullanım avantaları Nedir
Scala Programlama Dili Nedir Kullanım avantaları Nedir

Scala Programlama Dili Nedir Kullanım avantaları Nedir

Scala, hem nesne yönelimli hem de fonksiyonel programlama metodolojilerini içeren bir programlama dilidir.Scala’nın kendi derleyecisi olmasına rağmen Java Byte-Code üretebiliyor yani JVM üzerinde koşturabiliyorsunuz.Bu sayede java kütüphanelerini,framework’lerini,tool’larını rahatlıkla scala ile kullanabilirsiniz.

Scala ile kod yazarken java’nın boiler plate dediğimiz can sıkıcı işlerini yapmak zorunda kalmıyoruz.Bazı kısımlarda inanılmaz bir productivity sağlıyor.Geliştirme işini zevkli hale getirebiliyor.Tabi ilk başlarda eğer siz de benim gibi java gibi geleneksel dilleri kullanmışsanız zorlanıyor olacaksınız.Zamanla scala syntax’ına alıştıkça geliştirmenin java’ya göre daha hızlı ve zevkli olduğunu görürsünüz.Java da 10 satırda yapabildiğiniz işi scala ile bir satırda yapabiliyorsunuz.

Scalada kodunuzu hem compile hem de interpret edebiliyorsunuz.Scala’nın REPL (Read-Evaluate-Print Loop) dediğimiz bir yorumlayıcısı vardır.Teknik olarak REPL arka tarafta hızlı bir şekilde byte-code compile edip,byte-code’nin jvm tarafından execute edilmesidir.Bu geliştirciye, kodunu hızlıca çalıştırıp, hızlıca feedback almasına olanak sağlıyor.

Scala Yükleme

Scalayı bilgisayara yüklemek çok basit.

Windows için Install Scala For Windows kullanabilirsiniz.

Mac için

 

  • Mac için istediğiniz scala versiyonunu indirin.
  • İndirdiğiniz dosyayı bir dizine extract edin.
  • Aşağıdaki tanımlamları bash_profile dosyanıza ekleyin.
    export SCALA_HOME=/Users/kullanici/Documents/scala-2.11.6
    export PATH=$PATH:$SCALA_HOME/bin
  • Komut satırından scala yazıp enter’a bastığınızda Welcome Scala yazısını gördüyseniz yükleme tamamdır 

    Yaygın Kullanılan Tipler

    Scala’da 8 adet numeric data tipi vardır.Byte,Char,Short,Int,Long,Float,Double ve Boolean.
    Dikkat ettiyseniz scalada javadaki gibi primitive type yok.Yani tüm tipler birer class.Böylelikle sayılar üzerinden method çağırımları yapabilirsiz.

    Aritmetik ve Operator Aşırı Yükleme (Overloading)

    Scaladaki aritmetik operatorlar aynen javadaki gibi çalışır.Fakat burada farklı olan şey bu operatorların aslında birer method olmaları.Örneğin, a+b aslında a.+(b)‘nin kısaltılmışıdır. + bir method adı.Benim için pek üzücü olmasa da scalada ++ operatoru mevcut değil.

    Fonksiyon ve Method Çağrımları

    Scala,methodlara ek olarak fonksiyonlara da sahiptir.Scalada matematiksel fonksiyonları kullanmak çok basittir.Javadaki gibi static call’lar yapmanıza gerek yok.

    pow(2,4) // 16.0
    min(3,Pi) // 3.0

    Bu fonksiyonlar scala.math paketinde tanımlıdır.import scala.math._ diyip kullabilirsiniz. “_”karakteri Javadaki “*” karakterine denk geliyor.

    Scalada parametre almayan methodları parantez kullanmadan kullanabilirsiz.Genelolarak,değişkenin değerini değiştirmeyen methodlar parametre almaz.

    “Scala”.distinct

    apply Methodu

    “Scala”(4) // ‘a’

    Yukarıdaki işlem için javada .charAt(4) şeklinde bir method çağrımı yapmamız gerekirdi.Amascala sadece parantez kullanarak yapabiliyoruz.İlk gördüğümde vay arkadaş demiştim,nasıl yapıyor bunu 🙂 Peki scala bunu nasıl gerçekliyor ? () operatoru overloaded edildiğinden dolayı mı ?Hayır.Basitçe aslında String üzerinden apply methodunu call ediyoruz.Scalada StringOpsclass’ina baktığınızda aşağıdaki method tanımının olduğunu görürsünüz.

    def apply(n: Int):Char // Scalada geri dönüş değerinin tipini parantezlerin bitiminde “:”karakterinden sonra tanımlandığını görüyoruz.

    apply için başka bir örneği BigInt üzerinden verelim.

    BigInt(“555”) aslında BigInt.apply(“555”) işleminin kısaltılmışıdır.

    Şimdilik burada bitirelim.Artık Scala’nın ne olduğunu ve scala ilgili bazı temel bilgileri edinmiş olduk.Benim için faydalı oldu.Umarım sizler için de faydalı olur.

    Referans

 

CEVAP VER

Time limit is exhausted. Please reload CAPTCHA.