Scala, bayt koduna göre derlenmiştir ve statik olarak yazılmıştır, Java gibi statik olarak yazılan diller için (Groovy gibi dinamik olarak yazılan dillerden farklı olarak) yapılabilecek pek çok optimizasyon yapılabilir. Böylece Groovy ile Scala'yı karşılaştırmak elmaları portakallarla karşılaştırıyor.
Şimdi, Java Scala karşılaştırması:
Sen Scala çoğu durumlarda Java ile eşit olmasını bekleyebilirsiniz. Aptalca programlamak için Scala yavaş olabilir, ör., Traits aracılığıyla mix-ins sesleri, sade Java'nın sahip olamayacağı bazı ek yükleri sağlayabilir.
Ama ...
Özellikleri aslında iyi tadı karmaşık problem çözme, o zaman düz Java bir çözüm aynı karmaşıklığı mücadele etmesi gerekir. Kendi kalıplarınızı kullanarak Java'da yazdığınız çözümün Scala'da ücretsiz olarak aldığınızdan daha verimli olacağını kim söyleyebilir (hatırlayın, Scala derleyicisi muhtemelen sizden daha iyi bir programcı olan insanlar tarafından yazılmıştır).
Diğer yandan, iyi bir neden olmadan dil özellikleri kullanıyorsanız (örn., Düz int ilkellerin yapacağı Tamsayı nesneler), kullandığınız dilden bağımsız olarak kodunuz şişirilir, yavaş olur. Ayrıca, bir veritabanı veya diğer bir G/Ç yoğun kaynağıyla etkileşime giren özel istek-yanıt tabanlı uygulama sınıfını düşünün. Şişe boynu 'yeni' operatör veya sanal yöntem çağırma yükü olmayacak - neredeyse kesinlikle I/O olacaktır. Özetle, Scala ve Java arasındaki performans yaklaşık olarak aynıdır ve vakaların% 99'unda bir diğerini tercih etmenin en büyük nedeni olmamalıdır. Yetenekli insan emeği, bilgisayar donanımından daha pahalı olduğu için, (takım arkadaşlarınız dahil) en verimli şekilde programlayabileceğiniz (veya öğrenebileceğinizi) dili seçmekten daha iyidir. Scala kodu Java'nın onda birine yazabilmenizi sağlarsa, bunu kullanarak 10X kazanabilirsiniz.Scala sizi 10 kez yavaşlatırsa (okumak çok zor olduğu için) Java ile sopa!
Scala derleyicisinin, Java derleyicisinden çok daha fazla işi olduğunu unutmayın. Sadece daha basit dillerde alışmış olduğunuz kadar hızlı olmayacağı beklenir. –