Scala dilini araştırıyorum. Sık sık duyduğum bir iddia, Scala'nın Java'dan daha güçlü tip sisteme sahip olmasıdır.Scala'nın tip sisteminin avantajları
scalac
javac
, mutlu derlemek tek bir çalışma zamanı hatası neden belli arabası programları reddeder: Bununla ne insanlar demek olduğunu düşünüyorum.- Bazı değişmezler, bir Scala programında, derleyicinin programcının koşulu ihlal eden kod yazmasına izin vermeyecek şekilde kodlanabilir.
Ben de öyle düşünüyorum? Öyleyse, lütfen bu örnekleri gösteren makalelere/bloglara/makalelere bakın.
Java, "buggy programları" nı Scala'dan daha fazlasını derlemenize izin vermez; Ancak, Scala *, Java'dan çok daha fazla yapının [güvenli bir şekilde] ifade edilmesine - ve genellikle çok daha kolay bir yönteme - izin verir. Scala hala tip silmeden "acı çekiyor". –
@pst: Evet, olacak. 'String [] dizeleri = {" foo "}; Nesne [] nesneler = dizgiler; nesneler [0] = yeni Nesne(); 'java'da sadece iyi derlenecek ve daha sonra çalışma zamanında bir NPE atar. Eşdeğer scala kodu derlenmez. – sepp2k
@ sepp2k Ben bir NPE değil, atılan bir 'ArrayStoreException' olduğunu düşünüyorum. –