Herramienta de análisis de código estático de JavaScript
JSLint es una herramienta de análisis de código estático que se utiliza en el desarrollo de software para comprobar si el código fuente de JavaScript cumple con las reglas de codificación . Se ofrece principalmente como una aplicación web basada en navegador a la que se puede acceder a través del dominio jslint.com, pero también existen adaptaciones para la línea de comandos. [1] Fue creada en 2002 por Douglas Crockford . [2]
Licencia
Desde 2021, JSLint utiliza la licencia Unlicense aprobada por FSF / OSI .
Antes de eso, la licencia JSLint [3] era un derivado de la licencia MIT . [4] La única modificación fue la adición de la línea " El software se utilizará para el bien, no para el mal " .
Según la Free Software Foundation, esta cláusula anterior hizo que la licencia original no fuera libre . [5] También había impedido que el software relacionado con JSLint se alojara en Google Code [4] y se incluyera en los repositorios de paquetes de software libre de Debian . [6] Debido a esta restricción, según Crockford, IBM le pidió a Crockford en 2011 una licencia para hacer el mal, de modo que sus clientes pudieran usarla. [7] [8] [9]
Influencia
Algunos consideran que JSLint fue el primer corrector de sintaxis de JavaScript. [10] [11] Desde entonces ha inspirado varias otras herramientas.
En 2011, Anton Kovalyov creó una bifurcación, llamada JSHint . [12] [13] [14] La principal motivación detrás de la creación de JSHint fue proporcionar una forma "menos dogmática" y "más configurable" para que los desarrolladores analicen el código. [15] [16] [17]
En 2013, Nicholas C. Zakas creó ESLint . [11] Tanto JSLint como JSHint carecían de la capacidad de crear reglas adicionales para la calidad del código y el estilo de codificación . Después de contribuir a JSHint, Zakas decidió crear una nueva herramienta de linting, ESLint, donde todas las reglas son configurables y se pueden definir o cargar reglas adicionales en tiempo de ejecución . [18] ESLint también admite el linting de las últimas versiones de JavaScript, también conocidas como ECMAScript 2015 y posteriores.
En 2013, Palantir Technologies creó TSLint, [19] que era el equivalente TypeScript para ESLint. [20] En 2019, TSLint quedó obsoleto en favor de ESLint con una integración TypeScript. [21]
En 2014, Marat Dulin creó JSCS . [22] En 2016, el equipo de JSCS se unió al proyecto ESLint y desde entonces ha descontinuado el mantenimiento de la herramienta JSCS. [23] [24] [25]
En 2015, una comparación publicada por SitePoint recomendó a ESLint por encima de JSLint, JSHint y JSCS. [26] En 2016, CodeKit también elogió a ESLint por "encontrar más problemas", ser "mucho más configurable" y ser "el estándar de la industria" para los verificadores de sintaxis de JavaScript. [10]
Véase también
Referencias
- ^ "JSLint desde la línea de comandos". www.hacksparrow.com . Enero de 2013. Archivado desde el original el 27 de febrero de 2018 . Consultado el 26 de febrero de 2018 .
- ^ "primer commit". GitHub . 2010-11-12 . Consultado el 2018-02-25 .
Copyright 2002 Douglas Crockford. ¡Todos los derechos reservados en todo el mundo y más allá!
- ^ "Archivo fuente de JSLint, incluida la licencia". Archivado desde el original el 9 de junio de 2013. Consultado el 22 de noviembre de 2011 .
- ^ ab "JSMin no es bienvenido en Google Code". wonko.com . Ryan Grove. 2008-12-08 . Consultado el 2018-02-26 .
- ^ "Varias licencias y comentarios sobre ellas". Free Software Foundation.
- ^ "Re: El software debe usarse para el bien, no para el mal". www.mail-archive.com .
- ^ "IBM y sus secuaces..." Hasen Judy . 13 de febrero de 2011. Archivado desde el original el 3 de febrero de 2013. Consultado el 26 de febrero de 2018.
Doy permiso a IBM, sus clientes, socios y secuaces para usar JSLint con fines malvados.
- ^ "Douglas Crockford: La saga JSON". YouTube . 2011-08-11. Archivado desde el original el 2021-12-15 . Consultado el 2018-02-25 .
Doy permiso a IBM, sus clientes, socios y secuaces para usar JSLint con fines malvados.
- ^ La saga JSON de Douglas Crockford
- ^ ab "Ayuda: JSLint". codekitapp.com . 2016-12-10. Archivado desde el original el 2018-02-26 . Consultado el 2018-02-25 .
JSLint es el verificador de sintaxis original de JavaScript.
- ^ ab Zakas, Nicholas C. (16 de julio de 2013). "Introducing ESLint". nczonline.net . Archivado desde el original el 26 de febrero de 2018 . Consultado el 26 de febrero de 2018 .
JSLint era la tecnología de vanguardia en análisis de JavaScript
- ^ "Por qué bifurqué JSLint a JSHint". anton.kovalyov.net . Anton Kovalyov. 20 de febrero de 2011. Archivado desde el original el 24 de febrero de 2011. Consultado el 26 de febrero de 2018.
[JSLint] se ha vuelto incómodamente obstinado
- ^ "JSHint: una bifurcación de JSLint impulsada por la comunidad". badassjs.com . Devon Govett. 18 de febrero de 2011. Archivado desde el original el 21 de febrero de 2011 . Consultado el 21 de febrero de 2011 .
[..] JSLint se estaba volviendo un poco demasiado obstinado [..]
- ^ "Ayuda: JSHint". codekitapp.com . 2018-02-26 . Consultado el 2018-02-26 .
Diseñado para ser menos dogmático y más configurable
- ^ Elliot, Ian (21 de febrero de 2011). "JSHint - la herramienta de calidad de código JavaScript (más suave)". www.i-programmer.info . Archivado desde el original el 23 de febrero de 2011 . Consultado el 26 de febrero de 2018 .
- ^ Zakas, Nicholas C. (18 de diciembre de 2017). "Tweet de Nicholas C. Zakas (@slicknet), creador de ESLint". Twitter . Consultado el 26 de febrero de 2018 .
Queja sobre JSLint: no es lo suficientemente configurable. Queja sobre JSHint: todavía no es lo suficientemente configurable [..]
- ^ "JSLint vs JSHint". Scott Logic . Consultado el 26 de febrero de 2018 .
- ^ "Comprender las ventajas reales de usar ESLint". Blog de Rangle.io . 26 de marzo de 2015. Archivado desde el original el 9 de febrero de 2019. Consultado el 26 de febrero de 2018 .
- ^ "tslint v0.1.0". npm . 28 de julio de 2013.
- ^ "TSLint". palantir.github.io .
- ^ "TSLint en 2019". Medium . 5 de junio de 2019.
- ^ Dulin (@mdevils), Marat (21 de abril de 2014). «JSCS: estilo de código JavaScript — Frontend Babel». frontendbabel.info . Consultado el 26 de febrero de 2018 .
- ^ "Bienvenidos a JSCS en ESLint". ESLint - Linter de JavaScript conectable . 14 de abril de 2016. Consultado el 26 de febrero de 2018 .
- ^ "Fin de vida de JSCS". ESLint - Linter de JavaScript conectable . 15 de julio de 2016. Consultado el 26 de febrero de 2018 .
- ^ "El futuro del análisis de textos mecanografiados". ESLint . 18 de enero de 2019.
- ^ Hartikainen, Jani (5 de marzo de 2015). "Una comparación de herramientas de análisis de JavaScript". SitePoint . Consultado el 26 de febrero de 2018 .
Lectura adicional
- Dörnhoefer, Mark (2006). "JavaScript". Software SIGSOFT. Ing. Notas . 31 (4): 16-24. doi :10.1145/1142958.1142972. S2CID 221777701 . Consultado el 12 de marzo de 2010 .
- Apéndice C de Crockford, Douglas (mayo de 2008). JavaScript: The Good Parts (1.ª edición). O'Reilly Media. ISBN 978-0-596-51774-8.
- Sección 'Realizar comprobaciones de sintaxis de JavaScript con JSLint', páginas 143-145 de Asleson, Ryan; Nathaniel T. Schutta (14 de octubre de 2005). Fundamentos de Ajax (1.ª edición). Apress. ISBN 1-59059-582-3.
Enlaces externos