Scala Giriş - Scala Nedir? Scala İle Hello World
Merhabalar arkadaşlar.
Bir süredir Java’nın yanına başka bir programalama dili koymak için niyetli idim ve bu niyeti Scala dilininden yana kullandım. Scala programalama dilini öğrenmeye karar verdim ve öğrenirken de paylaşımlarda bulunacağım.
Scala Nedir?
Hepsinden önce Scala Java SE gibi bir programlama dilidir. Java sadece nesne yönelimli kod yazmaya imkan tanırken Scala C++ gibi hem nesne yönelimli hem de fonksiyonel programlama yapmaya imkan tanıyan bir dildir. Yani bu ifade Scala’nın Hybrit bir dil olduğu anlamına gelir. Scala Java SE gibi JVM (Java Virtual Machine) üzerinde çalışan bir programlama dilidir.
Java SE dilinde bir tarafta nesneler diğer tarafta ise primitive tipler yer almaktadır. Scala dili ise primitive tip kavramını bünyesinde barındırmayan bir dildir. Yani Scala’da primitive tip diye bir tanım yoktur. Bu da primitive tip- nesne tipi arasında casting, geçişler vs. gibi işlemler yapma gerekliliğini ortadan kaldırır.
Scala İle Hello World İçin Adımlar
Scala’nın ne olduğunu az çok anladıktan sonra şimdi Scala ile Hello World uygulaması yapalım. Ben bu yazıda Scala ile Hello World için iki yol anlatacağım. Birinci yol, Scala’nın binary dosyalarını indirip PATH’e atıp derleme yolu ile Hello World olacak. İkinci yol ise NetBeans IDE üzerinde Scala uygulaması açmak olacak.
Birinci Yol
Birinci yolu uygulamak için tabii ki önce Scala’yı indirmemiz gerekecek. 😊
http://scala-lang.org/download/ adresinden 1 numaralı kısımdan Scala’nın sisteminize uygun sürümünü indirin.
İndirmiş olduğunuz sıkıştırılmış dosyayı herhangi bir yere açın. Şimdi bilgisayarımızın PATH’ine Scala’yı eklememiz gerekiyor. MacOS çalıştıran bilgisayarlar için $HOME dizini altındaki .bash_profile dosyasını güncellemeniz gerekiyor. Şu iki satırı .bash_profile dosyanıza eklemeniz yeterli:
PATH ayarının düzgün yapılıp yapılmadığını anlamak için komut satırına gelip scalac -version komutunu çalıştırın. Şöyle bir çıktı almanız gerekiyor:
Eğer komut satırından doğru çıktıyı alabildi iseniz Scala kodu yazmaya hazırız demektir. Şimdi komut satırı üzerinde bir Hello World uyglaması yazalım.
İlk olarak komut satırında scala komutunu vererek Scala’yı çalıştırmış olalım.
Akabinde şu satırları komut satırında yazmak sureti ile ilk örnek uygulamamızı yapmış olalım:
Bu kodları komut satırında yazdıktan sonra Scala bize defined object HelloWorld şeklinde bir mesaj dönecek. Buradaki object keywordü Java SE’deki sınıf gibi düşünülebilir. Scala’da Java SE’deki gibi class keywordü de mevcuttur. Object ile Class arasındaki fark ise Class Java SE’de bildiğimiz gibi OOP mantığında çalışırken Object ise sanki dana önce oluşturulmuş bir sınıfdan nesne üretiyorumuş gibi ve Singleton mantığı üzerinde çalışır. Yani Object ile oluşturduklarımızın bellek üzerinde sadece bir örneği yaşar. Class ile oluşturulanların ise tıpkı Java’daki gibi new’lenerek birden fazla örneğinin yaşaması sağlanabilir. def keywordü ise definition’dan geliyor ve adı üzerinde bir tanımla yapmak için kullanılıyor. def’in akabinde tanımlama yapacağımız metodun ismi yazılıyor, biz de main metodu tanımladık. Java SE’de main metodu String[] args şeklinde bir parametre alıyordu. Scala’da da benzer şekilde args: Array[String] şeklinde. println komutu da yazdırma işlemi için kullanılıyor. C dilinde printf, C++’da cout, Java’da println yazdırma işlemleri için kullanılabilen metotlardan bazıları. Scala’da da println’i kullanabiliriz.
defined object … yazısını gördükten sonra metodumuzu koşturabiliriz. Bunun için tanımlanan object adı.metot adı şekinde çağırım yapabiliriz. Yani bizim için HelloWorld.main(Array()) şeklinde bir çağırım yeterli olacaktır. Bu çağırım akabinde konsolda Hello, world!‘ü göreceğiz.
Peki bir dosya üzerinde Scala kodu çalıştırmak istesek? Onun için de uzantısı .scala olan bir dosyaya kodumuzu yazdıktan sonra onu derlememiz ve çalıştırmamız gerekiyor.
Şimdi herhangi bir yerde yukarıdaki Hello World kodunun barındığı .scala uzantılı bir dosya oluşturun. Bendeki dosyanın adı HelloWorld.scala şeklinde.
Akabinde komut satırından bu dosyanın olduğu yere gelin ve
komutunu çalıştırın. scalac komutu bizim elimizdeki Scala dosyamızı derleyecek ve .class uzantılı bir dosya oluşturacak.
Şimdi de
şeklinde bir komut çalıştıralım. Az önce biz HelloWorld$.class isminde bir dosya edindik. Buraki HelloWorld’ü scala komutuna vererek HelloWorld.scala içindeki main metodunu çalıştırmış olacağız.
Aşağıdaki ekran görüntüsünden de görebileceğiniz gibi yine Hello World çıktısını aldık.
İkinci Yol
Sisteminizde kurulu değilse NetBeans IDE’yi kurunuz. Akabinde NetBeans IDE’yi açıp Tools -> Plugins penceresini açın ve öncelikle Check For Newest butonuna tıklayın. Güncel ve kurulmaya uygun eklentiler listesini güncelledikten sonra sağ üstteki arama kutucuğuna Scala yazın ve çıkan tün sonuçları işaretleyin, ardından Install butonuna tıklayın.
Karşınıza gelen pencereleri Next deyip geçebilirsiniz. Bir pencerede kullanım şartlarınızı kabul etmenizi isteyecek. Kabul tikine tıklayıp Install dediğinizde eklentiler kurulmaya başlanacak.
Eklentiler kurulduktan sonra NetBeans IDE’yi yeniden başlatın. IDE açıldıktan sonra File -> New Project deyip sol kısımdan Maven’ı sağ kısımdan da Project from Achetype seçeneğini seçin ve Next deyin.
Gelen ekranda arama kutusuna Scala yazın ve çıkan seçeneklerden maven-archetype-scala-executable’ı seçin, akabinde Next deyin.
Şimdi gelen ekranda projeye ait bilgileri girebilirsiniz. Ben proje adı olarak ScalaTutorials diyorum. Finish butonuna tıklayarak projeyi oluşturuyoruz.
Proje açıldıktan sonra hemen Project Files altındaki pom.xml dosyasına gidiyoruz ve
şeklinde olan bağımlılıkdaki version kısmını şu anki en güncel sürüm olan 2.12.1 ile değiştiriyoruz. Akabinde pom.xml’i kaydediyoruz ve projeye sağ tıklayıp Clean&Build diyoruz.
Proje için gerekli ve güncel kütüphaneler eklendikten sonra projedeki Scala Packages altındaki pakete sağ tıklayıp New seçip Scala Object‘i seçiyoruz.
Gelen ekranda Class Name alanına HelloWorld yazıp Finish diyoruz ve gelen kodu yukarıda konsolda kullandığımız kod ile değiştiriyoruz. Kodu değiştirdikten sonra projeye sağ tıklayıp Build diyoruz ve akabinde Build işlemi bitince HelloWorld.scala’ya sağ tıklayıp Run File diyoruz.
Gördüğünüz gibi Hello, world! çıktısını aldık.
Bu yazıda anlatacaklarım bu kadar arkadaşlar. Scala’ya bir giriş yaptık, binary dosyalar ile komut satırı üzerinden derleme yaptık, NetBeans IDE üzerinde Scala kodunun nasıl yazılabileceğini görmüş olduk. Gelecek derslerde ben NetBeans IDE üzerinden devam edeceğim ve bu ScalaTutorials projesi üzerinden dersleri anlatacağım.
Başka bir yazıda görüşenece kadar sağlıcakla kalın.
Selam ve Sevgilerimle