Hier stößt Graham "Grundlefleck" Allan eine Diskussion an: http://grundlefleck.github.io/2013/06/23/using-scala-will-make-you-less-productive.html. Was meint ihr?
Hier stößt Graham "Grundlefleck" Allan eine Diskussion an: http://grundlefleck.github.io/2013/06/23/using-scala-will-make-you-less-productive.html. Was meint ihr?
Hallo,
eines vorab: Ich habe mit Scala bis jetzt eigentlich nichts gemacht. Ich habe die Sprache aber für mich evaluiert. Ich habe schon viele Programmiersprachen gelernt und da genügt mir auch ein kurzer Einblick, um ein Gefühl dafür zu entwickeln, wo und wie brauchbar eine Sprache ist.
Unzureichende IDE-Unterstützung war für mich auch ein wesentlicher Punkt, warum ich dann wieder davon abgelassen habe (weil das in dem Artikel angesprochen wird).
Um es kurz zu machen, mein Gesamteindruck der Sprache ist: Ich glaube, das Lesen von fremden Code (oder eigenem, der schon ein paar Monate oder sogar Jahre zurückliegt) ist in Scala potentiell schwerer, schon alleine aus dem Grund, daß es für die einfachsten Dinge schon syntaktisch mehrere Möglichkeiten gibt, das zu schreiben. Ich habe zwar grundsätzlich nichts gegen viele Features (in dem Fall der Sprachreichtum), aber gerade in Zeiten wie diesen, wo alles komplexer wird, müssen wir auf Einfachheit achten. Ich denke auch, daß meine Kinder leichter Java als Scala lernen und wir müssen ja auch darauf achten, daß es Neueinsteigern leicht gemacht wird. Die Komplexität der Programmiersprache erhöht auch die Fehleranfälligkeit (Durchschnittliche Anzahl Bugs pro Code-Zeile). Und gerade die Software-Qualität im allgemeinen geht derzeit nach unten, sobald eine Software auch nur etwas umfangreicher wird, so scheint mir.
Und bei dieser immerfortwährenden Diskussionen um neue Programmiersprachen stört mich außerdem: Ob ich jetzt für etwas eine oder drei Zeilen Code schreiben muß, ist bei modernen Entwicklungsumgebungen (IDEs) doch ohnehin nebensächlich (Stichworte Autovervollständigung, Code-Templates etc – NetBeans zB funktioniert ja traumhaft in der Beziehung). Beim Entwickeln ist das nicht der Punkt, wo die meiste Zeit verloren geht. Die Suche nach semantischen Fehlern, das Lesen und Verstehen von Code-Beispielen zur Einbindung von externen Modulen und das Testen sowie das Dokumentieren verbrauchen viel mehr Zeit. Schon alleine deswegen verstehe ich nicht, warum immer so viel Augenmerk darauf gelegt wird, daß eine Sache, die man früher auf 3 Zeilen schreiben mußte, endlich in einer erledigt werden kann. Und für alles, was mehr als ca 5 Zeilen frisst, das kapselt man sich doch ohnehin in eine eigene Methode (grob gesprochen jetzt).
Gruß, Martin.