language - Scala-JS para proyecto web real
r for linux download (7)
Acabo de darme cuenta de esta pregunta, y probablemente debería Querki , como se mencionó anteriormente, el producto de mi compañía, Querki , ahora tiene su interfaz de usuario completamente construida en Scala.js. Eso es aproximadamente 8k SLOC de Scala, la última vez que lo comprobé: no es el programa más grande del mundo, pero es mucho más complejo que la mayoría de los sitios. Supongo que está reemplazando lo que habría sido 20-30k SLOC de JavaScript, y es realmente la única forma en que la empresa es plausible.
Es una versión beta para una pequeña empresa, pero en gran medida en producción, y ha sido una bendición: el código SJS es mucho más fácil de escribir y mantener que el JavaScript que reemplazó, y mucho más estable en la práctica. Además, conectar el extremo frontal SJS a mi Akka / Play back end acelera enormemente el desarrollo, y reduce los errores, ya que el API está fuertemente tipificado y sin errores, en Scala de extremo a extremo.
Como la gente ha preguntado: el código JS optimizado es actualmente de aproximadamente 1 Meg, y está creciendo muy lentamente ahora que toda mi infraestructura está escrita. (Además, casi lo mismo para las bibliotecas JS que uso.) Eso no es trivial, pero es una carga de una sola vez por versión; una vez que se almacena en caché en el navegador, la interfaz de usuario es extremadamente rápida, mucho más rápida que las páginas dinámicas que habían estado allí.
Ah, y ya que estás buscando un ejemplo completo: el código fuente se puede encontrar en GitHub . Eso es abierto pero restringido, ya que es un producto comercial, pero siéntase libre de investigar y usarlo como inspiración. (Y siéntase libre de solicitar bits útiles de esto: gradualmente estoy subiendo bits y piezas de gran utilidad a bibliotecas con licencia del MIT).
¿Alguien ha utilizado Scala-JS
en un proyecto web real, pero no solo para el reemplazo simple de JavaScript
en env aislados?
Me gustaría usar Scala tanto como sea posible (desearía poder hacerlo). Y parece que Scala-JS
afirma ser la biblioteca que podría usar (ahora) o en el futuro.
Es por eso que estoy interesado en una solución pequeña para trabajar, en bootstrap (como la aplicación PlayFramework
donde está Scala-JS
).
La solución / ejemplo que podría demostrar que Scala-JS
se puede utilizar en trabajos de desarrollo web real.
Lo pregunto porque lo que encontré sobre Scala-JS
hasta ahora no es un uso real de él.
P: ¿Algunos ejemplos / prueban que está listo para usar en un proyecto real?
ACTUALIZACIÓN (después de 1 año):
Hay toneladas de ejemplos para TypeScript
por ejemplo ... A eso me refiero cuando digo "ejemplos" y "proyectos web reales". Y hay muchos entrenamientos en línea. Y si pregunto en Google: "mecanografiado github angular", devuelve 172 000 páginas . ScalaJS
carece de todo definitivamente y desafortunadamente.
Pero tiene algunos: ''"scala-js" github angular'' - 4 980 coincidencias . Pero hasta ahora la mayor parte es "etapa temprana de desarrollo" sin "soporte comercial"
Ese parece prometedor: https://github.com/greencatsoft/scalajs-angular
Entonces
W3C lo usa en banana-rf: github.com/w3c/banana-rdf
@jducoeur construye Querki: github.com/jducoeur/Querki
TypeSafe comparte una plantilla muy importante: typesafe.com/activator/template/play-scalajs-showcase
Todo lo anterior demuestra características y técnicas bastante avanzadas.
El lector cuidadoso puede aprender mucho y determinar por sí mismo si ScalaJS está listo para el horario de máxima audiencia .
Por último, este https://github.com/SemanticBeeng/play-scalajs-showcase es un derivado del original que muestra cómo aplicar la fuente de eventos y los modelos de dominio funcionales para pasar de una API orientada a CRUD a una API funcional. Este es un experimento y trabajo en progreso.
Estoy creando activamente una aplicación web de panel de control para mi inicio usando scala.js. Es incompleto, pero evoluciona rápidamente.
Mi prototipo inicial se basó en angular.js, utilizando los enlaces angulares. Más tarde reemplacé angular con una malla de estilo reactivo de scala.rx , scalatags y scalacss , que se aprovecha del sistema de tipo scala. Toda la lógica / representación es de tipo seguro y en un solo idioma (scala), en lugar de estar distribuida en HTML, CSS y JavaScript "de tipo estricto"
Aunque esta aplicación web se está desarrollando como una herramienta interna, debería poder demostrar scala.js en una aplicación del mundo real una vez que esté terminada.
La aplicación TodoMVC de ThoughtWorks con la ayuda de Binding.scala y Scala.js :
No sé si es un proyecto web real porque parece irrealmente conciso. La DEMO contiene solo un archivo fuente, 147 líneas de código , mientras que la implementación de ReactJS de la misma característica de TodoMVC tomó 488 líneas de código.
La página oficial de Scala.js enumera los proyectos construidos con Scala.js: http://www.scala-js.org/community/
Más recientemente (2016), tienes sri (interfaz Scala React) .
Es una biblioteca de Scalajs para crear aplicaciones verdaderamente multiplataforma nativas (móviles (iOS y Android) y web).
Se basa en reactjs y react-native .
Utilice este módulo para crear aplicaciones basadas en navegador:
libraryDependencies += "com.github.chandu0101" %%% "sri-web" % "0.6.0"
Todavía no he visto la validación de formularios del lado del cliente específicamente. Sin embargo, hay varios proyectos que usan Scala.js de manera efectiva, entre los cuales:
- Una configuración básica con PlayFramework , donde JS del lado del cliente está escrito en Scala.js
- Un ejemplo más significativo con PlayFramework que demuestra esencialmente la prueba de concepto de los actores de Scala.js
- Otros proyectos escritos en Scala.js pero sin nada que ver con Play, pero que demuestran el poder de Scala.js en diversos grados.
- Roll , probablemente el proyecto Scala.js más significativo hasta el momento.