Scala'yı denemeden önce Java'yı bilmeniz gerekiyor mu


15

Scala öğrenmekle ilgileniyorum. Bununla ilgili çok şey okudum, ancak birçok insan buna değer veriyor çünkü eşzamanlılık için daha iyi bir aktör modeline sahip, xml'yi çok daha iyi bir şekilde ele alıyor, birinci sınıf fonksiyonlar sorununu çözüyor.

Sorum şu: Scala'da işlerin nasıl çalıştığını anlamak / takdir etmek için Java'yı bilmeniz gerekiyor mu? Önce Java'da bir bıçak almak ve sonra Scala'yı denemek daha iyi mi yoksa Scala'yı kesinlikle java artalanları olmadan başlatabilir misiniz?


5
Testerelerin nasıl çalıştığını anlamak için iki yüzlüğe ihtiyacınız var mı? : D
back2dos

lol, bu cevabı iptal ediyorum.
gizgok

Yanıtlar:


17

Scala kendi dilidir ve kendi başına mevcut diller hakkında bilgi gerektirmez. Eğer isterseniz, Scala'yı ilk diliniz olarak öğrenebilirsiniz. On web sitesinin Öğrenme Scala sayfasında , ilk kez programcılar fonksiyonel programlama uzmanlara dil araştırmacıları programlama değişen deneyim farklı düzeyi için öğretici giriş noktaları vardır.

Belgelerin çoğu maalesef nasıl programlanacağını bilen insanlara odaklanıyor, ancak aslında bazı Scala dersleri üzerinde çalıştım. O kadar da kötü değil. Yine de bazı temel kavramları anlamanız beklenmektedir.


4
Thomas tamamen doğru. Sadece Scala'nın çekiciliğinin bir kısmını eklemek isterim ki, tüm büyük honking standart Java kütüphanesini tekrar kullanabilirsiniz. Bu sizin durumunuz için önemli olabilir veya olmayabilir, ancak eğer öyleyse, Java ile önceki deneyim çok yardımcı olacaktır, çünkü standart kütüphane hakkında çok şey öğrenmenize yardımcı olamazsınız.
Kilian Foth

@Kilian bunu düşündüm. Hala Scala öğreniyorum ve aslında onunla anlamlı bir şey yapmadım, ancak Scala'da bir Java kütüphanesini kullanabilmek için Java'yı bilmenin ne kadar önemli olduğundan emin değilim. Scala'dan önceden derlenmiş bir JAR'ı çağırmak için Java sözdizimi / stiline düşmek gibi değil.
Thomas Owens

1
Hemen hemen her modern platform için, standart kütüphaneyi öğrenmek, dil sözdizimini öğrenmek yerine çok daha uzun sürer. Scala öğrenmeye çalışıyorsanız Java kütüphanelerini bilmenin bir yararı vardır.
Jeremy

16

Java iki farklı anlama gelir:

  1. Java dili - sözdizimi, kuralları, özellikleri ve genel anlamıyla dili içerir
  2. Java platformu - bu, çalışma zamanını (JVM), tüm standart kütüphaneyi ve bir dizi popüler çerçeveyi / kütüphaneyi içerir. GWT ile çapraz derlemeden sonra JavaScript olarak veya farklı bir çalışma zamanında da çalışan Android'de Java gibi başka Java "çalışma zamanlarının" da bulunduğunu unutmayın.

Java dili ve Scala aynı platformda çalışır. AFAIK Scala var eğer öyleyse, oldukça kolay bir Java kodu aşağı çağırabilirsiniz herhangi / Java anlamak için kaldıraç Scala öğrenme reel faiz, o zaman nasıl bu eserler ve nasıl bir Scala uygulamanın içinden en iyi kullanım Java kodunu can anlamaktır. Bir dil olarak, Java'nın size C # tarafından şimdiye kadar öğretmeyeceği bir şey öğretmesi pek olası değildir (Profilinizden bazı C # deneyiminiz olduğunu varsaydım).

Bu sorunun .NET benzetmesi şöyle olacaktır:

F # 'ı denemeden önce C # / VB.NET bilmeniz gerekir mi?

Her iki durumda da, cevap oldukça sağlam bir "Hayır".

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.