2010-10-21 8 views
6

Soy versado en Java y estoy empezando a experimentar con Groovy. Como los dos están integrados tan bien, me encuentro escribiendo en Java todo lo que puedo porque es muy fácil. ¿Qué consejos específicos puede ofrecer que aceleren mi trabajo con Groovy?Mejores prácticas para pasar de Java a Groovy

Significado - ¿En qué áreas Groovy sobresalen sobre Java, y dónde debería adherirme a Java?

+0

¡Muy fuera de tema, pero tan buena pregunta! –

+0

Escribir en Java no es realmente más fácil que escribir en Groovy. A excepción de los problemas de rendimiento, Groovy es significativamente más comunicativo y conduce a un código que se parece al problema. En Java todo parece Java. –

+2

Esta pregunta parece estar fuera de tema porque se trata de una lista de cosas. –

Respuesta

3

Algunas de las principales cosas que me gustan maravilloso para:

  • prueba es probablemente la mayor victoria. La capacidad de cambiar el comportamiento en el tiempo de ejecución y los métodos de simulación es una de las mejores cosas sobre groovy. ¡Convierta sus suites de prueba en maravillosas ahora!
  • utiliza los constructores. Los constructores de Groovy tienen mucha más expresividad que el java tradicional. En particular, el MarkupBuilder de fragmentos incrustados de XML o HTML es 1000 veces más agradable de usar que java vainilla
  • GPars si está haciendo cualquier tipo de programación concurrente o enhebrar

Véase también Hidden features of Groovy y Why would one use Groovy over Java(nota: se eliminó del desbordamiento de pila por razones de moderación).

Cuando me quedo con java:

  • cualquier lugar donde la velocidad que realmente importa, seguir con java. Todavía paga un alto costo en rendimiento por la naturaleza dinámica de Groovy.
+1

Añadiría colección a un beneficio también. Mucho mejor y más rápido para escribir en groovy. – Scott

-2

El problema con Groovy.

Groovy es una pesadilla de escritura, pero de mantenimiento. En mi opinión, no debería usarse en proyectos grandes. Heredar el código de otra persona (o el suyo) puede ser problemático, porque muy a menudo no tiene idea del tipo de variable, por lo que tiene su debida diligencia para averiguar o utilizar afirmaciones para garantizar el tipo entrante a un método.

Groovy es un lenguaje débilmente tipado. El tipo de variable se ignora con frecuencia o se "lanza convenientemente" automáticamente, lo que genera muchos errores y un rendimiento más lento.

Incluso faltan los mejores IDE, porque las variables prácticamente sin formato del lenguaje. En muchos casos, la compilación simplemente no puede saber cuál es el tipo de una variable. Incluso si declara el tipo de una variable (lo que ayuda al editor a hacer sugerencias), muchos programadores olvidan definir el tipo de variables.

Tiene ideas interesantes que me gustaría ver en Java, pero aléjate si tu código Groovy requerirá más de mil líneas.

* Las respuestas en pocas palabras * En resumen, aquí están las respuestas a las dos preguntas:

¿Qué consejos específica que puede ofrecer habría speedup mi trabajo con Groovy?

Úselo solo para cosas pequeñas. De lo contrario, incurrirá en deuda técnica (vea la Wikipedia). Hasta ahora estoy en una situación similar. Las pruebas unitarias, el uso de la consola para probar piezas de código, etc., son cosas que acelerarán su desarrollo, ya que es muy fácil de aprender y usar. Asegúrese de dominar los cierres, las colecciones y los bucles, y para comprender qué características de Java son no disponibles en Groovy.

No utilice Pure Groovy para aplicaciones complejas o grandes. A largo plazo, el mantenimiento lo retrasará.

Significado - ¿En qué áreas maravilloso Excel a través de java, y donde debo se adhieren a Java?

En un proyecto grande o crítico, debe mantenerse disciplinado y usar herramientas confiables. Es como construir una casa: construyo una casa de muñecas, Groovy está bien :-) ... si no es perfecto, no tiene importancia. Si construyes tu propia casa o algo más grande con poca tolerancia al error, necesitas utilizar herramientas de calidad y materiales de mejor calidad que no te permitan supervisar posibles problemas (Java, por ejemplo).

En cualquier caso, Groovy es como la cinta de pato: algunos aquí y allá pueden no hacer daño.

+0

Realmente no es una respuesta. – ripper234

+1

Suena como Groovy mal escrito y/o archivado en lugar de "GRROVY IS TEH BAD MKAY". –