EDIT: Bu soru ilk başta Java'nın temelini atıyor gibi görünüyor ve sanırım bu noktada biraz. Ancak, yapmaya çalıştığım en büyük nokta, tek bir dilin tek bir son olarak seçilmesinin neden tüm sorunların hepsi için çözüm olduğudur. Java kullanılmış olanlardan biri olduğu için burada yenmek zorunda kaldığım kişi bu, ama Java'yı yeni bir ripleme amaçlı değilim
Java'yı çoğu akademik ortamda sevmiyorum. Dilin kendisinin kötü olduğunu söylemiyorum - pek çok platformda yeniden derlenmeden çalıştırma kabiliyetine sahip, en çok istenen özelliklere sahip. Next App ^ TM'niz için dili kullanmakta yanlış bir şey yoktur. (Kişisel olarak yapacağım bir şey değil, ama bu daha ziyade tasarımı kötü olmaktan ziyade daha az deneyime sahip olduğum için)
Java'nın bir dil olarak kullanılmasıyla yüksek seviyedeki CS derslerinin öğretilmesinin bir zarar olduğunu düşünüyorum. İş arkadaşlarımdan çoğu, hiçbir işe yaramaz bir program yapamaz, çünkü çöp toplanmamış bir dünyada nasıl çalışacaklarını bilmiyorlar. Programladıkları makineleri temelde anlamıyorlar. Birisi çöp toplanan dünyanın dışında çalışabilirse, birinin içinde çalışabilir, ancak bunun tersi mümkün değildir. GC bir alettir, koltuk değneği değildir. Ancak bilgisayar bilimi öğrencilerine öğretmek için kullanılan bir koltuk değneği gibi.
Bilgisayar bilimi, tek bir dilden uyarlanmış tüm dersleri öğretmemelidir. Öğrenciler tüm iyi tasarımların aptalca Java tasarımı olduğu ve Nesne Yönelimli Tasarım'ın SADECE YAPILACAK ŞEYLER OLABİLECEK DOĞRU BİR YOL olduğunu düşünerek ayrılırlar. Mezunların makineleri daha iyi anlamalarını sağlamak için, en az bir tanesi çöp toplanmış bir dil olmayan diğer diller öğretimde kullanılmalıdır.
CS’de saygın bir kurumdan doktora yapan birinin kağıt torbadan çıkmaması için utanç verici.
Daha da kötüsü, aslında işlerin nasıl yürüdüğünü anlayan CS profesörleri ile konuştuğumda, böyle duyguları paylaşıyorlar, öğrencilerimize Java'da her şeyi yaparak kötülük yapıyoruz. (Eğer başka bir dille değiştirirsem yukarıdakilerin aynı olacağını unutmayın, genellikle Java değil tek bir dil kullanmak sorun.)
Toplamda, artık hiçbir dereceye saygı duymayacağımı hissediyorum - etrafımdakilerin fizzbuzz problemlerinden çıkışlarını programlayabildiklerini göremediğimde.
Neden / nasıl bu hale geldi?