Al escribir bastante C # en el trabajo, el lenguaje se parece mucho a lo que estoy acostumbrado
Ese es un punto sobre Dart. Javascript se considera un lenguaje incómodo con pocos modismos generales. En un lenguaje como Java, a menudo hay una forma natural de abordar un problema. Por ejemplo, si mantiene un inventario de tabla, en Java o C # creará una tabla de clase.
Javascript no tiene clases, es posible que desee utilizar prototipos, pero se sienten incómodos y no proporcionan una estructura tan fuerte y herramientas de encapsulación. (Al menos no sin hacer acrobacias). La herencia, la composición, etc. es incómoda con los prototipos de Javascript. Es por eso que la mayoría de las personas usan mapas hash simples para almacenar datos. O usan bibliotecas de terceros como prototipo que le brinda una experiencia de clase.
Entonces la conveniencia es una cosa, estructura la otra. Javascript simplemente no escala bien porque no hay una forma estándar de estructurar aplicaciones a gran escala. Sin embargo, actualmente estas bibliotecas de terceros se están volviendo muy populares. (Como backbone.js)
Dart es algo para resolver eso. Está ahí para brindarle la conveniencia estructural de Java y, además, no tiene todas estas características incómodas de JS. (La mayoría de ellos relacionados con mecanografía débil).
Entonces la respuesta es sí: clases, herencia, ...: "OOP tradicional". (La mayoría de las aplicaciones web JS del mundo real utilizan el método de devolución de llamada basado en jQuery como estructura principal). Y tiene una forma flexible de tipeo estático, sin embargo, ese no es el punto clave de venta.
Por cierto: es posible que desee leer este correo "interno" de Google con fecha 2010: Futuro de Javascript
Javascript tiene fallas fundamentales que no se pueden solucionar simplemente evolucionando el lenguaje. Adoptaremos una estrategia de dos frentes para el futuro de Javascript ... Desarrolle un nuevo lenguaje (llamado Dash) que tenga como objetivo mantener la naturaleza dinámica de Javascript pero tenga un mejor perfil de rendimiento y sea capaz de herramientas para grandes proyectos. .