Denken Sie zunächst daran, dass der Autor der obigen Erklärung über die Entwicklung der Website spricht. Er macht sich also Sorgen um die Entwicklung von Präsentationen und ist der Meinung, dass Scala keine gute Wahl wäre ...
Trotzdem habe ich gute Erfahrungen mit der Webentwicklung gemacht. Ich habe mindestens 8 Jahre ausschließlich damit gearbeitet, 5 davon in digitalen Agenturen.
Und ja, nach meiner Erfahrung kann eine statisch typisierte, kompilierte Sprache auf der Präsentationsebene ein großes Hindernis sein. Der Inhalt muss ständig geändert werden, viel häufiger als die geschäftlichen Anforderungen. Und in der Regel muss dies von einem bestimmten Team (den "Front-End" -Entwicklern) durchgeführt werden. Sie wissen normalerweise viel über HTML, JavaScript, Webstandards und CSS, aber nicht viel über serverseitige Sprachen wie Java und C #. Sie gehen auch davon aus, dass jede Art von Änderung an einer Vorlage sofort verfügbar ist. Sie werden nicht zum Kompilieren und Eingeben von Fehlern verwendet. Und sie haben Recht: Statisch typisierte Sprachen eignen sich sehr gut für schwierige, komplexe Anforderungen wie Datenzugriff und Geschäftsregeln, aber nicht so gut für die Schnittstellenentwicklung.
Dies ist in der Tat einer der Hauptvorteile der Verwendung einer speziellen und interpretierten Vorlagensprache wie Velocity . Die einfache Bedienung, die Leistungsfähigkeit und die Flexibilität sind für Entwickler von Präsentationsebenen ausreichend. Und dann steht es den Servern frei, überall eine seriöse, statisch typisierte Sprache zu verwenden ...
Ich stimme jedoch auch zu, dass Scala etwas anders ist. Da zugleich viel weniger ausführlich und viel ausdrucksvoller als Java, ich glaube , es könnte für die Präsentation Entwicklung verwendet werden - so vielleicht könnte es erfolgreich als Template - Sprache verwendet werden. Und wenn es auch zu einem Framework wie Play (das die Website nach jeder Änderung automatisch kompiliert) kombiniert werden könnte, wäre es meiner Meinung nach ein Gewinner. Trotzdem hat sich auch Play für eine Groovy-ähnliche (dynamische) Vorlagensprache entschieden, was kein gutes Zeichen ist.
Fazit: Das Problem mit Scala hängt viel mehr damit zusammen, dass es kompiliert ist. Tatsächlich lässt der Typinferenzmechanismus fast vergessen, dass er auch statisch typisiert ist.
(Und entschuldigen Sie mein Englisch. Lassen Sie mich wissen, wenn etwas nicht klar ist, ich werde versuchen, es zu beheben.)
Button
ZeitpunktWebControl
ist, an dem alle benötigten Informationen enthalten sind und alle Steuerelemente davon abgeleitet sind.