Tout d'abord, gardez à l'esprit que l'auteur de la déclaration ci-dessus parle de développement de sites Web. Il est donc inquiet présentation développement de la , et c'est là qu'il pense que Scala ne serait pas un bon choix ...
Cela dit, j'ai une bonne expérience du développement Web. Je travaille depuis au moins 8 ans exclusivement avec elle, dont 5 dans des agences digitales.
Et, oui, d'après mon expérience, un langage compilé de façon statique au niveau de la couche de présentation peut être un gros obstacle. Le contenu doit être modifié en permanence, beaucoup plus souvent que les exigences de l'entreprise. Et généralement, cela doit être fait par une équipe distincte (les développeurs "front-end"). Ils connaissent normalement beaucoup de choses sur HTML, JavaScript, les normes Web, CSS, mais pas beaucoup sur les langages côté serveur comme Java et C #. Ils supposent également que tout type de changement dans un modèle est immédiatement disponible; ils ne sont pas utilisés pour compiler et taper des erreurs. Et ils ont raison: les langages typés statiquement sont très bons pour les exigences dures et complexes, comme l'accès aux données et les règles métier, mais pas aussi bien pour le développement d'interfaces.
C'est, en fait, l'un des principaux avantages de l'utilisation d'un langage de modèle spécialisé et interprété comme Velocity . Sa facilité d'utilisation, sa puissance et sa flexibilité conviennent aux développeurs de couches de présentation. Et puis les gars côté serveur sont libres d'utiliser un langage sérieux et typé partout ailleurs ...
Cependant, je conviens également que Scala est quelque peu différent. Étant à la fois beaucoup moins verbeux et beaucoup plus expressif que Java, je pense qu'il pourrait être utilisé pour le développement de présentations - donc peut-être qu'il pourrait être utilisé avec succès comme langage de modèle. Et s'il pouvait également être combiné à un cadre comme Play (qui compile automatiquement le site Web après chaque changement), il pourrait être un gagnant à mon humble avis. Pourtant, même Play a opté pour un langage de modèle (dynamique) de type Groovy, ce qui n'est pas bon signe.
Pour résumer: le problème avec Scala est beaucoup plus lié au fait qu'il est compilé. En fait, son mécanisme d'inférence de type vous fait presque oublier qu'il est également typé statiquement.
(Et désolé pour mon anglais. Faites-moi savoir si quelque chose n'est pas clair, je vais essayer de le réparer.)
Button
moment oùWebControl
contient toutes les informations dont vous avez besoin et tous les contrôles en sont dérivés.