cscope es una herramienta de programación que funciona en modo consola, interfaz basada en texto, que permite a los programadores de computadoras o desarrolladores de software buscar el código fuente del lenguaje de programación C , con cierto soporte para C ++ y Java . A menudo se usa en proyectos muy grandes para ayudar a la comprensión del código para encontrar código fuente, funciones, declaraciones, definiciones y expresiones regulares dada una cadena de texto . cscope es gratuito y se publica bajo una licencia BSD . El desarrollador original de cscope es Joe Steffen.
Lanzamiento estable | 15.9 / 24 de julio de 2018 [1] |
---|---|
Sistema operativo | Unix , Linux |
Tipo | Herramienta de programación , para C , C ++ , Java |
Licencia | BSD |
Sitio web | cscope |
Historia
La historia de la herramienta se remonta a los días del PDP-11 , [2] pero todavía es utilizada por desarrolladores que están acostumbrados a usar el editor vi o Vim u otros editores basados en texto, en lugar de editores basados en usuarios gráficos. interfaces (GUI) s. Las funciones de cscope están disponibles en diversos grados en los editores de fuentes gráficos modernos.
Modo de uso
cscope se utiliza en dos fases. Primero, un desarrollador crea la base de datos cscope. El desarrollador a menudo puede usar find
u otras herramientas de Unix para obtener la lista de nombres de archivo necesarios para indexar en un archivo llamado cscope.files
. Luego, el desarrollador crea una base de datos usando el comando cscope -b -q -k
. La k
bandera está destinada a crear una base de datos para un sistema operativo o código fuente de biblioteca C. No mirará hacia adentro /usr/include
. En segundo lugar, el desarrollador ahora puede buscar esos archivos usando el comando cscope -d
. A menudo, un índice debe reconstruirse cada vez que se realizan cambios en los archivos.
En el desarrollo de software, a menudo es muy útil poder encontrar las personas que llaman a una función porque esta es la forma de entender cómo funciona el código y qué otras partes del programa esperan de una función. cscope puede encontrar los llamadores y los destinatarios de funciones, pero no es un compilador y lo hace buscando palabras clave en el texto. Esto tiene las desventajas de que las macros y los nombres de símbolos duplicados pueden generar un gráfico poco claro. Hay otros programas que pueden extraer esta información analizando el código fuente [3] o mirando los archivos objeto generados. [4]
cscope fue creado para buscar contenido dentro de archivos C , pero también se puede usar (con algunos límites) para archivos C ++ y Java . [5]
Interfaces GUI
Hay tres interfaces gráficas de usuario (GUI) disponibles para cscope que facilitan su uso.
- Kscope se ejecuta en KDE e integra el editor de texto Kate . El proyecto KScope ya no se mantiene. [6]
- Seascope se ejecuta en PyQt 4 e integra el editor de texto Scintilla . [7]
- Gscope se basa en GTK2 y GTK3 y se integra con varios editores de texto. [8]
CCTree es un complemento nativo de Vim que se integra con el editor de Vim y ofrece funciones similares a Kscope y Seascope. [9]
Ver también
- ctags
- Referencia cruzada (X-Ref)
- Referencia cruzada LXR , navegación de código fuente basada en web con hipervínculos
- OpenGrok
Referencias
- ^ Horman, Neil (24 de julio de 2018). "actualizar el script configure.in para la versión 15.9" . Consultado el 4 de octubre de 2018 , a través de SourceForge .
- ^ La historia de Cscope
- ^ ncc: el compilador C de nueva generación
- ^ "CodeViz: un visualizador de CallGraph" . Archivado desde el original el 26 de enero de 2007 . Consultado el 7 de diciembre de 2006 .
- ^ Página de inicio de CScope : "El analizador difuso admite C, pero es lo suficientemente flexible como para ser útil para C ++ y Java [...]"
- ^ Página de inicio de Kscope
- ^ Página de inicio de Seascope
- ^ Página de inicio de Gscope
- ^ http://www.vim.org/scripts/script.php?script_id=2368
enlaces externos
- Página web oficial
- Herramientas de navegación de código fuente