
Un explorador de clases [ 1 ] [ 2 ] es una característica de un entorno de desarrollo integrado (IDE) que permite al programador explorar, navegar o visualizar la estructura del código de programación orientado a objetos .
Historia
La mayoría de los exploradores de clases modernos tienen su origen en Smalltalk , uno de los primeros lenguajes y entornos de desarrollo orientados a objetos. El típico explorador de "cinco paneles" de Smalltalk consiste en una serie de paneles de selección contiguos horizontalmente, situados encima de un panel de edición. Estos paneles permiten al usuario especificar primero una categoría y luego una clase , y posteriormente refinar la selección para indicar un método de clase o instancia específico, cuya implementación se presenta en el panel de edición para su inspección o modificación.
La mayoría de los lenguajes orientados a objetos posteriores se diferenciaron de Smalltalk en que se compilaban y ejecutaban en un entorno de ejecución independiente , en lugar de integrarse dinámicamente en un sistema monolítico como los primeros entornos de Smalltalk. Sin embargo, el concepto de un navegador gráfico o tipo tabla para navegar por la jerarquía de clases se popularizó.
Con la popularidad de C++ a partir de finales de la década de 1980, los IDE modernos incorporaron exploradores de clases, inicialmente para simplemente navegar por las jerarquías de clases y, posteriormente, para facilitar la creación de nuevas clases. Con la introducción de Java a mediados de la década de 1990, los exploradores de clases se convirtieron en una parte indispensable de cualquier entorno de desarrollo gráfico.
En los IDE modernos
Todos los principales entornos de desarrollo proporcionan algún tipo de navegador de clases, incluyendo
- Apple Xcode para macOS
- Charla informal de Cincom
- CodeWarrior para Microsoft Windows , Mac OS clásico y sistemas embebidos.
- Charla informal sobre delfines
- Eclipse
- Embarcadero Delphi
- Embarcadero JBuilder
- IBM WebSphere
- IntelliJ IDEA
- KDevelop
- Microsoft Visual Studio
- NetBeans
- Charla informal de Pharo
- RStudio
- Reflector .NET de Red Gate
- Smalltalk MT
- Chirrido Charla trivial
- Jabalina de avance
- Strongtalk
- Prólogo visual
- Visual Smalltalk Enterprise
- Entorno de desarrollo integrado (IDE) Zeus para Windows
Los navegadores de clases modernos se dividen en tres categorías generales: los navegadores columnares , los navegadores de esquema y los navegadores de diagramas .
Navegadores columnares
Siguiendo la tradición de Smalltalk, los navegadores columnares muestran la jerarquía de clases de izquierda a derecha en una serie de columnas. A menudo, la columna de la derecha está reservada para los métodos de instancia o las variables de la clase hoja.
Navegadores de esquema
Los sistemas con origen en Microsoft Windows suelen utilizar un navegador con formato de esquema, a menudo con iconos coloridos (aunque crípticos) para indicar las clases y sus atributos.
Navegadores de diagramas
A principios del siglo XXI, los exploradores de clases comenzaron a transformarse en herramientas de modelado , donde los programadores no solo podían visualizar su jerarquía de clases como un diagrama, sino también agregar clases a su código incorporándolas al diagrama. La mayoría de estos sistemas de visualización se han basado en alguna variante del Lenguaje Unificado de Modelado (UML).
Refactorización de navegadores de clases
A medida que los entornos de desarrollo incorporan funciones de refactorización , muchas de estas funciones se han implementado tanto en el explorador de clases como en los editores de texto. Un explorador de refactorización permite al programador mover una variable de instancia de una clase a otra simplemente arrastrándola en la interfaz gráfica de usuario, o combinar o separar clases mediante gestos del ratón en lugar de utilizar una gran cantidad de comandos del editor de texto.
Navegadores lógicos
Un complemento inicial para Digitalk Smalltalk fue un explorador lógico para reglas Prolog encapsuladas como cláusulas dentro de clases. Exploradores lógicos más recientes han aparecido como BackTalk y SOUL (Smalltalk Open Unification Language con LiCor, o biblioteca para razonamiento de código) para Squeak y VisualWorks Smalltalk. Un explorador lógico proporciona una interfaz para Prolog implementado en Smalltalk ( los motores Lisp a menudo se han implementado en Smalltalk). Un explorador comparable se puede encontrar en las reglas ILog y en algunos sistemas de producción OPS. Visual Prolog y XPCE proporcionan una exploración de reglas comparable. En el caso de SOUL, VisualWorks proporciona tanto un explorador de consultas como un explorador de cláusulas; Backtalk proporciona un explorador de restricciones. Los comentarios de Alan Kay sobre el paralelismo entre Smalltalk y Prolog surgieron en el mismo período, pero con muy poca interacción entre ellos. El interés en XSB Prolog para XUL y la migración de AMZI! Prolog al IDE Eclipse son caminos actuales en la evolución de los exploradores lógicos. Las reglas encapsuladas en clases se pueden encontrar en Logtalk y en varias variantes de Prolog orientadas a objetos, como LPA Prolog , Visual Prolog y AMZI!, así como en el SICStus convencional .
Versiones basadas en la web
Una variante del framework web Seaside en Smalltalk permite abrir un explorador de clases en tiempo de ejecución en el navegador web en ejecución: cualquier modificación realizada a un método surte efecto inmediatamente en la aplicación web en ejecución. En el caso de Vistascript (Vista Smalltalk) para Microsoft IE7 , al hacer clic con el botón derecho en el fondo se abre un ClassHierarchyBrowser. Esto es similar a editar prototipos de JavaScript en un navegador web o clases de Ruby , Groovy o Jython en un IDE que se ejecuta en una JVM .
Véase también
Referencias
- ^ Granor, Tamar E.; Hennig, Doug; Roche, Ted; Martín, Della (28 de enero de 2002). Guía del hacker para Visual FoxPro 7.0 . Hentzenwerke. pag. 277.ISBN 978-1-930919-22-8El Explorador de clases [...] es útil para diversos fines de desarrollo. Estos incluyen, entre otros: · Administrar clases y bibliotecas de clases, incluyendo agregar, eliminar, renombrar y redefinir clases. · Generar código equivalente para clases visuales. ·
Crear instancias en ejecución en tiempo de diseño. · Explorar todas las clases y bibliotecas utilizadas por un proyecto. · Explorar las interfaces de los componentes ActiveX y COM.
- ↑ Bucanek, James (3 de abril de 2006). Introducción a Xcode . John Wiley & Sons. pág. 13. ISBN 978-0-471-75479-4El
Explorador de Clases [...] compila las clases y estructuras de datos de su aplicación en una tabla estructurada. El capítulo 8 le muestra cómo hacerlo.
Enlaces externos
- El navegador de código fuente Source Navigator y sourcenav NG .
- Herramientas de navegación de código
- Clase (programación informática)