navegador de classe - Class browser

Captura de tela de Gedit com Python, LaTeX e extensões de navegador de classe, exibindo extensão lorem ipsum do Inkscape.

Um navegador de classe é uma característica de um ambiente de desenvolvimento integrado (IDE) que permite que o programador para navegar, navegar, ou visualizar a estrutura de programação orientada a objetos de código.

História

A maioria dos navegadores modernos classe devem suas origens a Smalltalk , uma das primeiras linguagens orientadas a objetos e ambientes de desenvolvimento. O Smalltalk típico "de cinco painel" navegador é uma série de horizontalmente-de encosto painéis de selecção posicionado por cima de um painel de edição, os painéis de selecção permite ao utilizador especificar uma primeira categoria e, em seguida, uma classe , e ainda mais, para refinar a selecção para indicar um específico aula ou instância-método a aplicação do que é apresentado no painel de edição para o controlo ou modificação.

A maioria dos sucessivos linguagens orientadas a objeto diferia do Smalltalk em que eles foram compilados e executados em um discreto ambiente de execução , mas sim que ser integrado de forma dinâmica em um sistema monolítico como os ambientes Smalltalk início. No entanto, o conceito de um navegador-como tabela ou gráfico para navegar a hierarquia de classes pegou.

Com a popularidade do C ++ a partir do final da década de 1980, IDEs modernas acrescentou navegadores de classes, à primeira vista, basta navegar hierarquias de classe, e mais tarde para ajudar na criação de novas classes. Com a introdução do Java , em meados da década de 1990 navegadores de classes tornou-se uma parte esperada de qualquer ambiente de desenvolvimento gráfico.

Em IDEs modernas

Todos os principais ambientes de desenvolvimento fornecer alguma forma de navegador de classe, incluindo

Navegadores de classes modernos se dividem em três categorias gerais: as colunas navegadores, as esboço navegadores e os diagrama navegadores.

navegadores colunar

Continuando a tradição Smalltalk, navegadores colunas exibir a hierarquia de classes da esquerda para a direita em uma série de colunas. Muitas vezes, a coluna mais à direita é reservada para os métodos de instância ou variáveis ​​da classe folha.

navegadores esboço

Sistemas com raízes no Microsoft Windows tendem a usar um navegador forma de esboço, muitas vezes com coloridas (se críptica) ícones para denotar classes e seus atributos.

navegadores diagrama

Nos primeiros anos do século 21 navegadores de classes começou a se transformar em ferramentas de modelagem , onde os programadores não só poderia visualizar sua hierarquia de classes como um diagrama, mas também adicionar classes para o seu código, adicionando-os ao diagrama. A maioria destes sistemas de visualização foram baseadas em alguma forma da Unified Modeling Language (UML).

navegadores de classes refatoração

Como ambientes de desenvolvimento adicionar refatoração características, muitas destas características foram implementadas no navegador de classe, bem como em editores de texto. Um navegador refatoração pode permitir que um programador para mover uma variável de instância de uma classe para outra, simplesmente arrastando-o na interface gráfica de usuário, ou para combinar ou classes separadas usando gestos do mouse em vez de um grande número de comandos do editor de texto.

navegadores lógica

Um add-on cedo para Digitalk Smalltalk era um navegador lógica para Prolog regras encapsulados como cláusulas dentro de classes. Mais navegadores lógica recentes têm aparecido como BackTalk e SOUL (Smalltalk Abrir Unificação Idioma com LiCor, ou biblioteca para o raciocínio código) para Squeak e VisualWorks Smalltalk. Um navegador lógica fornece uma interface para Prolog implementado em Smalltalk ( Lisp motores têm sido muitas vezes implementado em Smalltalk). Um navegador comparável pode ser encontrada em regras ILOG e alguns sistemas de produção OPS. Visual Prolog e XPCE oferecer uma navegação na regra comparável. No caso da ALMA, VisualWorks é fornecido com um navegador consulta e um navegador cláusula; Backtalk fornece um navegador restrições. Os comentários de Alan Kay sobre o paralelo de Smalltalk e Prolog surgiu no mesmo período de tempo, mas com muito pouco a fertilização cruzada. O interesse em XSB prólogo para XUL e a migração de Anzi! prólogo para o Eclipse IDE são caminhos atuais na evolução navegador lógica. Regras encapsulados em classes podem ser encontrados em Logtalk e vários OOP variantes Prolog como LPA Prolog , Visual Prolog e Anzi! bem como dominante SICStus .

versões baseadas na web

Uma variante do Mar framework web em Smalltalk permite que um navegador de classe para ser aberto em tempo de execução no navegador web em execução: uma edição para um método, em seguida, tem efeito imediato na aplicação Web em execução. No caso de Vistascript (Vista Smalltalk) para Microsoft IE7 , um clique com o botão direito no fundo abre uma ClassHierarchyBrowser. Isto é um pouco como a edição de JavaScript protótipos em um navegador web ou o Ruby , Groovy ou Jython aulas em uma IDE em execução em uma JVM .

Veja também