¿Qué es "Linting"?


660

PHPLint, JSLint, y recientemente me encontré con que "puedes teñir tu código JS sobre la marcha" mientras lees algo sobre un IDE.

Entonces, ¿qué es esto pelusa que todo el mundo conoce menos que yo?

688

Linting es el proceso de ejecutar un programa que analizará el código en busca de posibles errores.

Ver lint en la wikipedia:

pelusa fue el nombre dado originalmente a un programa en particular que se encuentra en posición algunas construcciones sospechosas y no portátiles (que podrían haber errores) en C código fuente del lenguaje. El término ahora se aplica genéricamente a herramientas que marcan el uso sospechoso en software escrito en cualquier lenguaje de computadora.

+49

Cite de [wikipedia] (https://en.wikipedia.org/wiki/Lint_ (software)) - _ "El término se derivó del nombre de los ** bits indeseables de fibra y pelusa ** encontrados en lana de oveja. "_ 21 jul. 162016-07-21 05:39:04

  0

¿Entonces un linter no es necesariamente un formateador automático? 15 jun. 172017-06-15 14:52:30

+3

@HasanBaidoon - solo informa violaciones de una política de estilo, no necesariamente actúa en nombre de ellos en nombre del usuario. 15 jun. 172017-06-15 14:53:08

  0

¿Stylecop se consideraría un linter? 15 ago. 172017-08-15 13:13:51

  0

@Adam: generalmente un linter también tiene la opción de solucionar automáticamente los problemas que encuentre. 15 ago. 172017-08-15 13:48:05


125

Lint era el nombre de un programa que pasaría por su código C e identificaría problemas antes de compilarlo, vincularlo y ejecutarlo. Era un comprobador estático, muy parecido a FindBugs en la actualidad para Java.

Al igual que Google, "lint" se convirtió en un verbo que significaba la comprobación estática de su código fuente.


24

pelusa es una herramienta que se utiliza para marcar el código fuente con algunos sospechosos y no estructurales (pueden causar errores). Al principio, es una herramienta de análisis de código estático en C. Ahora se convirtió en el término genérico utilizado para describir la herramienta de análisis de software que marca el código sospechoso.


78

Linting es el proceso de comprobar el código fuente para Programmatic así como los errores estilísticos. Esto es más útil para identificar algunos errores comunes y poco comunes que se cometen durante la codificación.

A Lint o Linter es un programa que admite pelusas (verificando la calidad del código). Están disponibles para la mayoría de los lenguajes como JavaScript, CSS, HTML, Python, etc ..

Algunos de los útiles se borra de JSLint, CSSLint, JSHint, Pylint


24

Aparte de lo que otros han mencionado, me gustaría añadir que, pelusa se ejecutará a través de su código fuente para encontrar

- formatting discrepancy 
- non-adherence to coding standards and conventions 
- pinpointing possible logical errors in your program 

ejecución de un programa de pelusa sobre su código fuente, ayuda a asegurar que el código fuente es legible y fácil de leer, menos contaminado y más fácil de mantener.


2

Los idiomas interpretados como Python y JavaScript se benefician enormemente de las salpicaduras, ya que estos lenguajes no tienen una fase de compilación para mostrar los errores antes de la ejecución.

Linters también son útiles para el formato del código y/o la adhesión a las mejores prácticas específicas del idioma.

Últimamente he usado ESLint para JS/React y ocasionalmente lo uso con un archivo airbnb-config.