stringtranslate.com

editor de código fuente

Captura de pantalla del uso de Notepad++ para editar código XML

Un editor de código fuente es un programa editor de texto diseñado específicamente para editar el código fuente de programas informáticos . Puede ser una aplicación independiente o puede estar integrada en un entorno de desarrollo integrado (IDE).

Características

Los editores de código fuente tienen funciones diseñadas específicamente para simplificar y acelerar la escritura del código fuente, como resaltado de sintaxis , sangría , autocompletar y funcionalidad de coincidencia de llaves . Estos editores también proporcionan una manera conveniente de ejecutar un compilador , intérprete , depurador u otro programa relevante para el proceso de desarrollo de software . Entonces, si bien muchos editores de texto como el Bloc de notas se pueden usar para editar el código fuente, si no mejoran, automatizan o facilitan la edición del código, no son editores de código fuente .

Los editores de estructura son una forma diferente de editor de código fuente, donde en lugar de editar texto sin formato, se manipula la estructura del código, generalmente el árbol de sintaxis abstracta . En este caso, funciones como el resaltado de sintaxis, la validación y el formato de código se implementan fácil y eficientemente desde el árbol de sintaxis concreta o el árbol de sintaxis abstracta, pero la edición suele ser más rígida que el texto de formato libre. Los editores de estructura también requieren un amplio soporte para cada idioma y, por lo tanto, son más difíciles de extender a nuevos idiomas que los editores de texto, donde el soporte básico solo requiere resaltado de sintaxis o sangría. Por esta razón, los editores de estructura estricta no son populares para la edición de código fuente, aunque algunos IDE proporcionan una funcionalidad similar.

Un editor de código fuente puede verificar la sintaxis mientras se ingresa el código y advertir inmediatamente sobre problemas de sintaxis. Algunos editores de código fuente comprimen el código fuente, normalmente convirtiendo palabras clave comunes en tokens de un solo byte , eliminando espacios en blanco innecesarios y convirtiendo números a un formato binario. Estos editores de tokenización luego descomprimen el código fuente al verlo, posiblemente imprimiéndolo con mayúsculas y espacios consistentes. Algunos editores de código fuente hacen ambas cosas. [ cita necesaria ]

El protocolo de servidor de idiomas , utilizado por primera vez en Visual Studio Code de Microsoft , permite a los editores de código fuente implementar un cliente LSP que puede leer información de sintaxis sobre cualquier idioma con un servidor LSP. Esto permite que los editores de código fuente admitan fácilmente más idiomas con resaltado de sintaxis, refactorización y búsqueda de referencias. [1] Muchos editores de código fuente como Neovim [2] y Brackets [3] han agregado un cliente LSP integrado, mientras que otros editores como Emacs, [4] vim, [5] y Sublime Text [6] tienen soporte para un cliente LSP a través de un complemento independiente.

Historia

En 1985, Mike Cowlishaw de IBM creó LEXX mientras trabajaba en Oxford University Press . LEXX utilizó análisis en vivo y utilizó colores y fuentes para resaltar la sintaxis. LPEX (Live Parsing Extensible Editor) de IBM [7] se basó en LEXX y se ejecutó en VM/CMS , OS/2 , OS/400 , Windows y Java [8]

Aunque el lanzamiento público inicial de vim fue en 1991, la función de resaltado de sintaxis no se introdujo hasta la versión 5.0 en 1998. [9] [ se necesita mejor fuente ]

En 2003, Don Ho lanzó Notepad++ , un editor de código fuente para Windows. La intención era crear una alternativa al editor de código fuente basado en Java, JEXT [10].

En 2015, Microsoft lanzó Visual Studio Code como una alternativa ligera y multiplataforma a su IDE de Visual Studio . [11] En 2016, Visual Studio Code se convirtió en el producto de Microsoft que utiliza el protocolo de servidor de idiomas. [1]

Comparación con IDE

Un editor de código fuente es un componente de un entorno de desarrollo integrado. A diferencia de un editor de código fuente independiente, un IDE normalmente también incluye herramientas de depuración y compilación.

Algunos desarrolladores prefieren los editores de código fuente independientes a los IDE cuando creen que los IDE están repletos de funciones que no necesitan. [12]

Ejemplos notables

Controversia

Muchos editores de código fuente e IDE se han visto involucrados en continuas discusiones entre usuarios, a veces denominadas jovialmente "guerras santas" por la comunidad de programación. [14] [ se necesita una mejor fuente ] Los ejemplos notables incluyen vi frente a Emacs y Eclipse frente a NetBeans . Estos argumentos han formado una parte importante de la cultura de Internet y, a menudo, comienzan cada vez que se menciona a cualquiera de los editores en cualquier lugar.

Ver también

Referencias

  1. ^ ab Krill, Paul (27 de junio de 2016). "El Language Server Protocol respaldado por Microsoft se esfuerza por lograr la interoperabilidad del lenguaje y las herramientas". InfoMundo . Consultado el 19 de junio de 2022 .
  2. ^ "Documentación LSP - Neovim". neovim.io . Consultado el 19 de junio de 2022 .
  3. ^ Shubham, Yadav. "Soporte de protocolo de servidor de idiomas entre paréntesis · Wiki de adobe/brackets". GitHub . Consultado el 19 de junio de 2022 .
  4. ^ "Modo LSP - Compatibilidad con el protocolo de servidor de idiomas para Emacs - Modo LSP - Compatibilidad con LSP para Emacs". emacs-lsp.github.io . Consultado el 19 de junio de 2022 .
  5. ^ Devlieghere, Jonas (22 de abril de 2018). "Usando LSP y clangd en Vim". Jonás Devlieghere . Consultado el 19 de junio de 2022 .
  6. ^ "Inicio: documentación del protocolo del servidor de lenguaje de texto sublime". lsp.readthedocs.io . Archivado desde el original el 12 de junio de 2022 . Consultado el 19 de junio de 2022 .
  7. ^ "Guía del usuario del editor LPEX - Versión 4" (PDF) . IBM . Consultado el 19 de junio de 2022 .
  8. ^ Mike Cowlishaw FREng BSc CEng FIET FBCS CITP, IBM, archivado desde el original el 18 de octubre de 2006 , consultado el 20 de junio de 2022
  9. ^ "La historia de Vim". Jovica Ilic . 5 de junio de 2014.
  10. ^ Orin, Andy (18 de junio de 2015). "Detrás de la aplicación: la historia de Notepad++". Hacker salvavidas Australia . Consultado el 17 de junio de 2022 .
  11. ^ Somasegar, S (4 de julio de 2015). "Presentación de Visual Studio Code, Visual Studio 2015 RC, Application Insights Public Preview y .NET Core Preview para Linux y Mac - Blog de Somasegar - Inicio del sitio - Blogs de MSDN". blogs.msdn.com/ . Microsoft. Archivado desde el original el 4 de julio de 2015 . Consultado el 17 de junio de 2022 .
  12. ^ Petreley, Nicholas (11 de febrero de 2003). "Software de edición de texto Java para Linux". Mundo de la informática . Consultado el 17 de junio de 2022 .
  13. ^ abcdef "Mercado global de editores de texto por tipo de producto (basado en la nube, basado en web) y por usuarios finales/aplicaciones (grandes empresas, pymes) Cuota de mercado global, datos de pronóstico, análisis en profundidad y descripción general detallada y pronóstico, 2013 –2026". Los principales actores que operan en el mercado de editores de texto incluyen: Visual Studio Code, Notepad++, Sublime, Brackets, UltraEdit, Atom.
  14. ^ "Guerra Santa (jerga hacker)". Archivado desde el original el 2 de abril de 2012 . Consultado el 30 de noviembre de 2016 .