2016-01-11 24 views
9

Birisi, insanların neden kıvılcım için Java üzerinden scala kullandığını anlamama yardımcı olabilir mi? Araştırıyordum ama sağlam bir cevap bulamamıştım, her ikisinin de JVM'de çalıştıkça iyi çalıştığını biliyorum ve fonksiyonel ve OOP dilini ölçüyoruz.scala vs java?

+1

Neden daha iyi Scala gibi değil sırf:

İşte millet örtmek bağlantı Matei söylediklerini daha ilgilenmişlerdir düzenleyin? –

+4

Scala, derleyicinin daha fazla iş yapmasını sağlayarak daha az işlem yapmanız gerekir. Spark'i her ikisinden de tam olarak kullanabilirsiniz. Scala'nın çalışması için daha güzel bir dil, neden olmasın? (Özellikle de dili iyi bilmeyen dev bir grubun parçası olarak çalışmak için daha güzel bir dildir. Java'nın ayrıcalıklılığı ve göreceli olarak esnek olmaması, böyle bir durumda bir avantajdır çünkü Java'da idiosyncratic ve yanıltıcı kod yazmak daha zordur. .) Sık sık Scala'da biraz daha yüksek bir soyutlama seviyesinde düşünebilirsiniz, bu da daha zor problemleri çözmek ve/veya daha doğru kod yazmak için konsantrasyonunuzu serbest bırakır. –

+1

Scala: Yazmak ve uzaklaşmaktan sakınmak, sakınmak ve bakım yapmak güzel. – erickson

cevap

14

Spark

Teşekkür Scala yazılmış. Spark ayrıca, Java 8'in kullanıma sunulmasından önce çıktı ve bu da işlevsel programlamayı daha hantal hale getirdi. Ayrıca, Scala bir JVM'de çalışırken Python'a daha yakındır. Veri Bilimciler, Spark için orijinal hedef kullanıcılardı. Veri Bilim adamları geleneksel olarak Python bir arka plan daha olacak, dolayısı Scala onları düz Java

İşte

gidin sonra kullanmak daha mantıklı başlangıçta yaptılar bir reddit AMA gelen kıvılcım yazdı yazdı adamlardan birinden direkt bir alıntı . Soru şuydu:

S:

ne kadar önemlidir onu Scala Spark yaratmak oldu? Java’da yazmak ya da Spark’in Scala’nın temelini çıkarmak mümkün mü? Matei Zahara adlı

C: Bunu düşündüm çünkü Bafllad

, gerçekten, bir dil ile tümleşik bir arayüz (insanlar vb satır içi işlevleri yazma yerde) destekleyen bir PL istedi İnsanların, bu uygulamaları (özellikle Microsoft'un DryadLINQ) sahip olduğu araştırma sistemlerini gördükten sonra programlamak istedikleri yoldur. Bununla birlikte, bunun için Hadoop dosya sistemi ve veri formatlarıyla kolayca etkileşimde bulunmak için JVM'de de bulunmak istedim. Scala, bu tür işlevsel sözdizimini sunan ve aynı zamanda statik olarak yazılan (performans üzerinde biraz kontrol sahibi olmamıza izin veren) tek bir popüler JVM diliydi, bu yüzden onu seçtik. Bugün Java 8 ile Java API ilk sürümünü yapmak için bir argüman olabilir, ama biz de vb tür kesmesi, desen eşleştirme, aktör kütüphaneleri gibi, Spark Scala diğer yönlerine yararlanmıştır

https://www.reddit.com/r/IAmA/comments/31bkue/im_matei_zaharia_creator_of_spark_and_cto_at/