scala - why - instagram hashtags on comments or caption
Tu experiencia con Scala+Wicket (4)
¿Podría compartir su experiencia de usar Scala y Wicket juntos? ¿Se ajustan naturalmente entre sí? ¿Obtiene ventaja de usar Scala (y FP) con Wicket sobre el uso de Java? ¿Por qué (preferirías) Wicket over Lift?
He usado Scala + Wicket un poco, es un buen punto para presentar algo de Scala. Los cierres con pueden ayudar a reducir las líneas de código en un controlador Wicket, dadas algunas conversiones implícitas o métodos de utilidad. Incluso Dave Pollak una vez sugirió esta combinación, si prefieres Wicket a Lift o tienes una aplicación Wicket existente con la que deseas adaptar Scala.
Solo tenga cuidado con los tipos de datos que utiliza en cualquier componente de Wicket con estado, ya que deben ser serializables. A veces puede prescindir de esto y usar componentes de Wicket sin estado.
Para aquellos interesados en consultar el código, volví re-implemented la demostración de Seam "Hotel Booking" en Scala + Wicket aquí: Browse | SVN - la versión de Java + Wicket está aquí: Browse | SVN
Utilicé (aún no final) Scala 2.8 y el complemento NetBeans. Quería bloguear en detalle (incluso hay una implementación de Groovy + Wicket en su lugar) pero a continuación se muestran algunas impresiones de alto nivel; como ejemplo, aquí está el mismo código de interfaz de usuario en Java | Scala . Observaciones:
- sin duda mucho menos repetitivo y menos ''ruido''
- Scala se siente como un buen candidato para Wicket cuando se trata de componentes de anidación
- por ejemplo, menos trabajo / líneas de código para definir clases internas / constructores, por lo que puede hacerlo mayormente en línea y seguir anidando sin mucho desorden
- y, al mismo tiempo, anulan los métodos marco como soluciones únicas. bonito !
- Scala parecía funcionar bien con Wicket Generics, el compilador parecía ser mucho más estricto a veces, tal vez esto sea algo bueno. El plugin de NetBeans ayuda, pero a veces con errores y lento.
- No es una aplicación muy compleja, por lo que no tuvo la oportunidad de aplicar cierres y FP mucho
- Hay algunos errores que debe tener en cuenta de esta manera: Combate de Scala - Conversión de lista de Scala a Java - por el momento, me las arreglé utilizando colecciones de Java para las propiedades de objetos de dominio.
Aún no he realizado una prueba de rendimiento / comparación. Mantente informado :) Hazme saber si hay algo que quieras saber cuando me disponga a publicar una entrada de blog detallada sobre esto. Ah, y si tienes la oportunidad de revisar el código y hacerme saber qué se puede mejorar, ¡sería genial!
No he visto Lift todavía, pero aquí hay una publicación de blog que puede ayudar al OP: Levantar desde la perspectiva de un desarrollador de Wicket
Tengo que decir que elegiría Scala sobre Groovy por una milla si me mezclo con Wicket. La propia función IDE de "organizar importaciones" resuelve la pregunta. El nuevo soporte de la clase interna Groovy tiene algunos errores que se interponen seriamente cuando se usa Wicket. También experimentó algunos problemas como groovy.lang.Reference no Serializable, etc.
Solo me gustaría señalar nuevas formas, en Scala 2.8, para hacer conversiones de scala a java y viceversa, ya que fue señalado como un problema en la respuesta de Peter Thomas. Aquí se describe lo nuevo: Conversiones entre las colecciones de Java y Scala
Debería resolver el problema de las colecciones scala <=> java, supongo
Trabajan muy bien juntos. Sin mencionar todas las bonificaciones de usar Scala como tu idioma.
A lo largo de mi camino, saqué las partes que hice que me parecieron útiles y creé el proyecto de cosas de Scala Wicket Extensions: mail-archive.com/[email protected]/msg40899.html No lo he usado por un tiempo, pero aún así debería ser bueno. Me encantaría que más personas contribuyan al proyecto.
El repositorio está aquí: https://wicket-stuff.svn.sourceforge.net/svnroot/wicket-stuff/trunk/wicketstuff-core/scala-extensions-parent/
Es una vergüenza. El material (y el terreno) no está en Github: /