Pregunta

Una cosa que realmente echo de menos acerca de Java es la herramienta de apoyo.FindBugs, Checkstyle y PMD hecho para una santísima trinidad de código de métricas de calidad y automático de errores de comprobación.

Hay algo que se echa de errores simples y / o estilo de violaciones de código Ruby?Los puntos de bonificación si puedo adaptarlo para marcos, tales como Rieles para que Rails modismos son respetados.

¿Fue útil?

Solución

Recientemente he comenzado buscando algo como esto para Ruby.Lo que he conocido hasta ahora:

Estos pueden ser lugares para empezar.Por desgracia no he utilizado ninguno de los tres lo suficiente para ofrecer una buena opinión.

Otros consejos

Saikuro y Azotar puede ser bueno para tener una idea básica de la complejidad del código.También puede utilizar una herramienta como rcov a mirar a su cobertura de las pruebas.
Hay un plugin para Rails proyectos que combinan todos los parámetros en una sola tarea de rake.Se llama metric_fu.

Los proyectos que he encontrado y probado recientemente:

Usted puede ser que desee probar RuboCop.Es un código Ruby corrector de estilo basado en la Ruby Guía De Estilo.Se mantiene muy activa y está basado en el estándar de Ruby herramientas (como el ripper la biblioteca).Funciona bien con Ruby 1.9 y 2.0 y tiene un gran Emacs integración.Espero que les sea útil!

Polvo parece que puede ayudarle a encontrar y sin usar código inservible, que parece que es una especie de ajuste a lo que buscas.

No estoy al tanto de cualquier otro de tales herramientas.
Este problema es mucho más difícil de abordar en ruby que es en java - tenga en cuenta que todas esas herramientas java marca a sí mismos como el uso de 'análisis estático" del código.
Análisis estático de código ruby, a menudo no es posible, porque no hay nada estático que se puede analizar (métodos a menudo se crean en tiempo de ejecución y así sucesivamente)

En cualquier caso, algunas de estas cosas son innecesarias en ruby, porque el lenguaje construye en.Por ejemplo, usted no necesita un estándar de codificación para exigir que sus clases son todos los NamedLikeThis debido a que el código no funcionará si no lo están.

P. S.Yo han para agregar el estándar de descargo de responsabilidad que este tipo de herramientas pueden a menudo ser un poco de un arenque rojo.Usted puede pasar todo el día haciendo que su código se adhieren a lo que la herramienta piensa que debería ser, y terminar con más bugs que el que comenzó.
En mi humilde opinión, la mejor solución es escribir el código con fluidez lo que se puede leer con más facilidad.Ninguna cantidad de análisis estático va a ser tan buena como la de un humano, un código de lectura que establece claramente lo que se pretende hacer.Para poder hacer esto es donde ruby está a años luz por delante de muchos otros idiomas.Yo personalmente recomiendo objetivo de sus esfuerzos en aprender a escribir de forma más fluida, y la educación de su equipo sobre tales cosas, que el gasto de tiempo en el análisis estático.

Otra buena herramienta, aunque en las primeras etapas de acuerdo con el autor es de los listones:

http://reek.rubyforge.org/

los listones en la actualidad incluye muy ingenuo busca el siguiente código de olores:

  • Larga Método
  • Gran Clase
  • Característica De La Envidia
  • Poco Comunicativa Nombre
  • Larga Lista De Parámetros
  • Función De Utilidad De
  • Anidado Iteradores
  • Control De Par
  • La duplicación
  • Elemento de la lista

Personalmente creo que todavía tiene demasiados falsos positivos, pero con sólo mirar a la producción en algunos de mi código me ayudó a repensar algunas decisiones sobre el estilo de código y la arquitectura.

Código Climático es un SaaS herramienta que se integra a través de git y automáticamente "grados" de su código.Se le notifica a través de varios canales de si hay una caída repentina de la calidad.Interfaz de usuario agradable también.

No vi esta pregunta cuando se le preguntó, pero un blog que hice podría ayudar también.En ella me tapa un montón de Ruby herramientas y específicamente de la cubierta 4 código de las herramientas de la calidad...

  1. Roodi
  2. Polvo
  3. Flog
  4. Saikuro

También podría ser digno de la comprobación hacia fuera Towelie y Flay

http://devver.wordpress.com/2008/10/03/ruby-tools-roundup/

Ahora hemos combinado con un montón de herramientas en un solo código Ruby calidad y métricas de seguimiento de la herramienta llamada Pinza.Esto podría encajar bien sus necesidades.Se realiza un seguimiento de distintos parámetros de calidad durante la vida útil de un proyecto.

Pinza - mejorar su código Ruby

También hay excelente.Yo no lo he probado aún, pero es muy prometedora.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top