¿Cómo se mantiene a sí mismo la codificación según los estándares? Hay stylecop y resharper para C#. ¿Hay herramientas/complementos de eclipse para análisis de código en Java? ¿Cuál de ellos usas?Estilo de codificación Java
Respuesta
Checkstyle es una herramienta de desarrollo para ayudar a los programadores escribir código Java que se adhiere a un estándar de codificación. Automatiza el proceso de comprobación del código Java para ahorrarle a los humanos esta tarea aburrida (pero importante). Esto lo hace ideal para proyectos que desean aplicar un estándar de codificación. Checkstyle es altamente configurable y se puede hacer para soportar casi cualquier estándar de codificación. Se proporciona un archivo de configuración de ejemplo que admite las Convenciones de Sun Code. Además, se suministran otros archivos de configuración de muestra para otras convenciones conocidas.
PMD está integrada con JDeveloper, Eclipse, JEdit, JBuilder, BlueJ, CodeGuide, NetBeans/Sun Java Studio Enterprise/Creador, IntelliJ IDEA, TextPad, Maven, Ant, Gel, JCreator y Emacs.
- Findbugs http://findbugs.sourceforge.net
FindBugs utiliza el análisis estático para inspeccionar el código de bytes de Java para las ocurrencias de los patrones de errores. El análisis estático significa que FindBugs puede encontrar errores simplemente inspeccionando el código de un programa: la ejecución del programa no es necesaria. Esto hace que FindBugs sea muy fácil de usar: en general, debería poder usarlo para buscar errores en su código en unos minutos después de descargarlo. FindBugs funciona analizando el bytecode de Java (archivos de clase compilados), por lo que ni siquiera necesita el código fuente del programa para usarlo. Debido a que su análisis es a veces impreciso, FindBugs puede informar advertencias falsas, que son advertencias que no indican errores reales. En la práctica, la tasa de advertencias falsas informadas por FindBugs es inferior al 50%.
Uso Checkstyle para asegurarme de que el código sigue ciertas reglas. Checkstyle también está disponible como plugin for Eclipse.
¿Qué pasa con un poco de autodisciplina? Si no puede hacerlo por algo tan trivial como el formateo, no tengo muchas esperanzas para otros aspectos de calidad del código.
¿Cómo puede estar seguro de que cada persona en su equipo conoce las convenciones del código? – folone
@folone, cuando @Tim Hawtin - tackline ejecuta el código de su equipo a través de Checkstyle, sin duda es 100% perfecto cada vez. Ojalá pudiera decir lo mismo de mi código. –
Hay una filosofía de desarrollo que un humano nunca debe hacer lo que una computadora puede hacer. Sí, al escribir el código, se adhiere a las convenciones el 95% del tiempo. ¿Ahora paso una hora buscando ese 5% final o simplemente uso una herramienta como 'jalopy' o el formateador de eclipses para hacerlo por mí? Te daré una suposición. – bgiles
Usamos Checkstyle en mi empresa, pero solo para cheques javadoc.
Es bueno en la forma en que puede configurar diferentes módulos para incluir cosas para verificar, y también en qué niveles (como en protegido, público, privado, etc.).
Un heads-up es que para javadoc-checking necesita indicar explícitamente si un método está permitido throw
varias excepciones. Esto es así porque los creadores piensan que es un mal diseño tener un método que arroje más de una excepción (en otras palabras, intentan controlar el diseño, no está relacionado en mi humilde opinión).
Checkstyle y FindBugs y PMD. Los dos últimos son mucho más que simples herramientas de estilo. Pero generalmente hay que esforzarse para lograr un acuerdo entre los miembros del equipo y la configuración de la herramienta.
Tener un documento de estándares de codificación que se distribuye a todos los desarrolladores en el equipo/departamento/organización es un buen comienzo.
No estoy seguro, cómo se asegura que todos lo lean y lo recuerden, incluso después de cada pequeño cambio. Si quiere asegurarse de que la gente pierda mucho esfuerzo y motivación. De lo contrario, será solo otro documento que nadie lea. – bertolami
Su uso tiene que ser obligatorio. Si desea tener un estándar de codificación, necesita alguna forma de describir ese estándar y una política para garantizar que todos se adhieran al estándar. Su estándar de codificación no debería tener muchos pequeños cambios realizados una vez publicados. He descubierto que la mejor manera es tener un acuerdo de alto nivel sobre estándares básicos de codificación (como legibilidad y claridad) y no preocuparse demasiado por las minucias de la ubicación del bracket, etc. YMMV. Obviamente, los desarrolladores junior necesitan más orientación que los más experimentados. – t0ne
Además de lo anterior, Jalopy es una buena herramienta para formatear el código.
Las advertencias del compilador de eclipse y el formateador de código hacen el trabajo por nosotros. Aunque soy consciente de que el estilo de comprobación hace un poco más de comprobación semántica para el diseño real del código, en lugar de simplemente exponerlo con sensatez.
Puede echar un vistazo a Sonar. Es un proyecto de código abierto que realmente facilita la ejecución de Checkstyle, PMD y Findbugs.
- 1. Método principal de Java, buen estilo de codificación
- 2. Codificación de Normas de estilo para Android
- 3. Comprobador de estilo de codificación para C
- 4. Aplicación de un estilo de codificación
- 5. F # estilo de codificación y estándar
- 6. ¿Cuál es el mejor estilo de codificación?
- 7. ¿Estilo de codificación común para Python?
- 8. Jinja2 estilo de codificación/mejores prácticas
- 9. Codificación de Java Unicode
- 10. ¿Existen herramientas para refactorizar el estilo de codificación de una base de código Java?
- 11. codificación Java UTF8
- 12. Entrevista Codificación Java Clasificación
- 13. Java Codificación estándares
- 14. Codificación MP3 en Java
- 15. Útiles herramientas de codificación Java
- 16. Problema de codificación en Java
- 17. Codificación java Valor de cookie
- 18. Conversión de codificación en java
- 19. Problema de codificación Java FileReader
- 20. Estilo de codificación Java, variables locales frente a llamadas al método repetido
- 21. Codificación de una matriz de estilo C de ints
- 22. Estilo de codificación ... ¿condición de error primero o el último?
- 23. StyleCop vs ReSharper y preguntas generales de estilo de codificación
- 24. ¿Qué es este tipo de estilo de codificación en c?
- 25. orden de ejecución y el estilo de codificación en Python
- 26. estilo de codificación impar de bloque IF en PL/SQL
- 27. ¿Hay alguna guía de estilo de codificación publicada para SQL?
- 28. Codificación de estilo: cómo mejorar los estilos de codificación y estándares en una empresa
- 29. Cómo reparar un viejo estilo de codificación script php
- 30. F # estilo de codificación - métodos estáticos vs instancia
PMD está integrado en jDeveloper, ¿necesita "activarlo"? Lo hace funcionar por defecto? NM- Acabo de mirar el http://pmd.sourceforge.net/integrations.html y parece que necesita ser instalado y luego activado. Pensé que estaba integrado. – ProfessionalAmateur