La configuración predeterminada de scalastyle que se proporciona tiene println
marcado como una advertencia en las reglas de token y regex:
<check class="org.scalastyle.file.RegexChecker" level="warning" enabled="true">
<parameters>
<parameter name="regex"><![CDATA[println]]></parameter>
</parameters>
</check>
¿Es este solo un ejemplo que no está diseñado para uso en producción, o println
se considera malo?
Es solo un ejemplo. No hay nada malo con println.
Sin embargo, para el código de producción, existen mejores soluciones, por ejemplo, slf4j o log4j. Por lo tanto, una serie de proyectos en los que he estado involucrado desalientan el uso de println. Consulte, por ejemplo, http://stackoverflow.com/questions/2750346/logger-vs-system-out-println
@matthewfarwell Gracias. Buen consejo.
Es solo un ejemplo. No hay nada malo con println.
Sin embargo, para el código de producción, existen mejores soluciones, por ejemplo, slf4j o log4j. Por lo tanto, una serie de proyectos en los que he estado involucrado desalientan el uso de println. Consulte, por ejemplo, http://stackoverflow.com/questions/2750346/logger-vs-system-out-println
Hay PrintStream
en la biblioteca estándar de Java, tiene println
en sus métodos y esta comprobación también se queja de ello. Actualicé la expresión regular para mi proyecto:
<check level="warning" class="org.scalastyle.file.RegexChecker" enabled="true">
<parameters>
<parameter name="regex"><![CDATA[(?<!\.)println]]></parameter>
</parameters>
</check>
Probablemente debería estar en la configuración predeterminada de scalastyle: la advertencia aparece solo para llamadas "desnudas" println
.
Comentario más útil
Es solo un ejemplo. No hay nada malo con println.
Sin embargo, para el código de producción, existen mejores soluciones, por ejemplo, slf4j o log4j. Por lo tanto, una serie de proyectos en los que he estado involucrado desalientan el uso de println. Consulte, por ejemplo, http://stackoverflow.com/questions/2750346/logger-vs-system-out-println