Como práctica recomendada, ¿ejecuta análisis de código tanto en compilaciones de depuración como de versión, o solo una o la otra?Análisis de código estático: ¿se integra en versiones de depuración y liberación, o solo una o la otra?
Respuesta
Normalmente elije una y esa es la versión de lanzamiento. Supongo que en realidad no importa, pero tiendo a pensar que cuando reúna información sobre lo que se ejecutará en producción, es mejor probar exactamente lo que irá a producción (esto se aplica para análisis, creación de perfiles, evaluación comparativa, etc.).
Entonces, en la configuración de compilación de su proyecto, ¿define CODE_ANALYSIS en la versión de lanzamiento? ¿Eso cambia significativamente la producción de la versión de lanzamiento o afecta el rendimiento? – slolife
El Análisis de código estático mostrará los mismos resultados, independientemente de su tipo de compilación.
Depurar/liberar solo cambia el ensamblaje resultante y la inclusión o exclusión de la información de depuración en el tiempo de ejecución.
a la derecha. y supongo que no te interesaría el análisis del código de depuración solo. tiene sentido. –
Esto no es completamente cierto, el compilador no optimizará una compilación de depuración y puede emitir IL que no estará en una compilación de versión optimizada. –
@Andrew - Es cierto, supongo que dependiendo de cómo/dónde en el proceso la herramienta evalúa podría haber algunas optimizaciones en línea y otras que funcionan para lanzar solo compilaciones. –
No tengo compilaciones separadas de 'depuración' y 'liberación' (véase Separate ‘debug’ and ‘release’ builds?).
Si por alguna razón las dos versiones son diferentes (y realmente no deberían ser para análisis estáticos), debe asegurarse de que sus métricas se ejecuten en contra de lo que realmente está saliendo a producción.
Idealmente, usted debe tener un servidor de CI, y los comandos que se ejecutan los desarrolladores para iniciar dicho análisis no son diferentes de lo que hace el servidor CI.
Sí. La idea es integrar el análisis de código en el entorno de CI. –
La gente llvm recomiendan realmente el análisis de la configuraion DEBUG:
analizar SIEMPRE un proyecto en su configuración "depuración"
mayoría de los proyectos se pueden construir en un modo de "depuración" que permite a las afirmaciones . Las afirmaciones son recogidas por el analizador estático para podar las rutas no factibles , lo que en algunos casos puede reducir en gran medida el número de positivos falsos (informes de errores falsos) emitidos por la herramienta.
Además, las compilaciones de depuración tienden a ser más rápidas (sin necesidad de optimización), y en el mundo de IC más rápido siempre es mejor (todo lo demás es igual).
- 1. Configuraciones de depuración y liberación
- 2. Segregando el código de depuración y liberación en C#
- 3. Java de código estático análisis
- 4. Análisis de código estático en Python?
- 5. Evite mezclar bibliotecas de depuración y liberación
- 6. Herramientas de análisis de código estático
- 7. Análisis de código de ActionScript estático?
- 8. Reglas de análisis de código estático personalizadas en FxCop o StyleCop?
- 9. variable de CMake o propiedad para discernir Transcurrirá depuración y liberación construye
- 10. Análisis de código fuente estático con LLVM
- 11. ¿Cómo comprobar si se construyó un ensamblado utilizando la configuración de depuración o liberación?
- 12. Administrar una cadena de conexión de depuración y liberación
- 13. ¿Cómo construir una herramienta de análisis de código estático?
- 14. ¿Qué es el análisis de código estático?
- 15. Delegados: ¿retener o asignar liberación?
- 16. "público estático" o "público estático"?
- 17. Comparación de herramientas de análisis de código estático en Linux?
- 18. cómo separar la depuración y el modo de liberación de código
- 19. detectando la configuración de compilación (depuración o liberación) dentro del script ant
- 20. Herramienta de análisis de código estático para Common Lisp?
- 21. diferencias de rendimiento entre depuración y liberación construye
- 22. Análisis del código Objective-C para análisis estático
- 23. Herramientas de análisis de código estático de TeamCity para .NET
- 24. Archivo simple con versiones de lanzamiento y depuración - Mejores prácticas
- 25. Vinculación de diferentes bibliotecas para compilaciones de depuración y liberación en Cmake en Windows?
- 26. análisis de código estático para lenguaje de ensamblaje
- 27. ¿Cuáles son los buenos complementos de análisis de código estático?
- 28. Herramientas de análisis de código estático para VB6
- 29. Completamente automatizar el procedimiento de liberación con versiones + versiones plugins
- 30. Programas/bibliotecas de análisis financieros libres o de código abierto
¿Qué quiere decir con versiones de depuración y liberación? El código debe ser el mismo ... –
En .Net, si usa la salida Condicional extensamente, podría estar produciendo compilaciones ligeramente diferentes. –