anlama için listeler.
örneğin java'da şunu yazıyorsunuz:
int myVar;
if (condition) {
myVar = //some value
}
else {
myVar = //some other value
}
Scala'da aynı kod, çok daha zarif bir şekilde yazılmıştır (Python gibi):
int myVar = (//some value) if (condition) else // other value;
ve bitti.
Scala'nın Java'nın sunmadığı çok şey var. Hiç bir karşılaştırma yok. Tek sorun, insanların Java'ya daha fazla aşina olmaları (CS derslerinde öğrettikleri b / c) ve henüz Scala paradigması konusunda yetenekli değil.
Scala kuyruk özyineleme vardır, tuples dönebilir (sanırım Java 8 geliyor olabilir bir şey).
Karşılaştırma yok. Scala, Java Generics'in çekirdek ekibinde çalışan Martin Ordersky tarafından geliştirildi.
Scala çok daha üstün bir dildir. Hepsi bu kadar. Aksini söyleyen insanlar Scala'yı daha iyi bilecek kadar araştırmamışlardır.
Yukarıda, kuyruk özyineleme optimizasyonu (JVM'nin Scala'nın derleyicisinin yapabileceği şekilde yapamayacağı) söylemek istedim.
Scala ayrıca JVM uygulamalarından daha hızlı derler ve çalışır (Evet, bu doğru). Çerçevelerden bahsetmiyorum bile. Örneğin Tomcat'i kullanıyoruz ve REST'i işlemek için bazı serveletler dağıtıyoruz.
Tomcat'in yapamayacağı şeylerden biri, engellemeyen G / Ç gerektiren asenkron işlemlerdir. Bunun için, JAVA geliştiricileri genellikle bir mesaj kuyruğu kullanarak bir geçici çözüm icat etmişlerdir (mesajı kuyruğa gönderin ve başka bir işlem veya iş parçacığı bunu alır ve arka planda ne istersen yapar).
Ne yazık ki, bu yöntem cr * p ve Tomcat'te Java sunucu uygulamalarını dağıtmanın sınırlamalarına yönelik bir hack'tir.
Git akka + spreyi kontrol et. Scala'nın Aktörlerini kullanır (Aktörler tıpkı Threads gibidir, ancak iletişim kurabilmelerinin tek yolu mesajlardır).
Ve bitti, asenkron REST çağrıları kolaylaştırıldı. Uzun süren arka plan görevi? Sorun değil. Sadece ateş edin ve unutun ve her seferinde ön uçtan durumunu kontrol etmek için biraz REST yoklaması yapın.
Hala Java kullanıyorsanız ve scala'dan daha iyi olduğunu düşünüyorsanız, bilgisayarınızı yazmak için kullanmayı bırakabilir ve tüy kalem günlerine ve mum ışığında yazmaya geri dönebilirsiniz. Java, Scala ile karşılaştırıldığında temel olarak antediluvian.