O que é o Eclipse?

O Eclipse é uma plataforma que foi projetada por inteiro para construir ferramentas de desenvolvimento da Web e de aplicativos integrados. Pelo design, a plataforma propriamente dita não fornece muita funcionalidade para usuários finais. O valor da plataforma é o que ela favorece: desenvolvimento rápido de recursos integrados com base em um gabarito de plug-in.

O Eclipse fornece um gabarito de interface de usuário comum (UI) para trabalhar com ferramentas.  É projetada para execução em vários sistemas operacionais enquanto fornece uma integração robusta com cada sistema operacional subjacente.  Os plug-ins podem programar em APIs remotas do Eclipse e executar de forma inalterada em qualquer um dos sistemas operacionais compatíveis. 

No núcleo do Eclipse existe uma arquitetura de identificação dinâmica de plug-ins. A plataforma identifica a logística do ambiente de base e fornece um gabarito padrão de navegação de usuário.  Cada plug-in pode então dedicar-se a a executar satisfatoriamente um pequeno número de tarefas. Quais são os tipos de tarefas? Definição, teste, animação, publicação, compilação, depuração, diagramação... o único limite é a sua imaginação.

Arquitetura aberta

A plataforma Eclipse define uma arquitetura aberta para que cada equipe de desenvolvimento de plug-in possa dedicar-se a sua área de conhecimento. Os especialistas em depósitos devem construir os back ends e os especialistas em capacidade de uso, as ferramentas do usuário final. Se a plataforma for bem projetada, novos recursos significantes e níveis de integração podem ser incluídos sem impactos sobre outras ferramentas.

A plataforma Eclipse utiliza o gabarito de um workbench comum para integrar as ferramentas do ponto de vista do usuário final. As ferramentas que você desenvolve podem ser conectadas ao workbench utilizando ganchos bem definidos chamados de pontos de extensão.

O tempo de execução da plataforma subjacente utiliza o mesmo gabarito de extensão para permitir que os desenvolvedores de plug-in incluam suporte para tipos de arquivo adicional e instalações personalizadas, como servidores da Web, servidores e depósitos para grupos de trabalho.  Os artifacts de cada ferramenta, tais como arquivos e outros dados, são coordenados por um gabarito comum de recurso de plataforma.   

A plataforma fornece aos usuários uma maneira comum de trabalhar com ferramentas e fornece gerenciamento integrado dos recursos que eles criam com os plug-ins.  

Os desenvolvedores de plug-in também ganham com essa arquitetura.  A plataforma gerencia a complexidade dos diferentes ambientes de tempo de execução, como sistemas operacionais diferentes ou ambientes de servidor de grupos de trabalho.  Os desenvolvedores de plug-in podem se dedicar às suas tarefas específicas em vez de se preocuparem com esses problemas de integração.

Estrutura da plataforma

A plataforma Eclipse por si só é estruturada como subsistemas que são implementados em um ou mais plug-ins.  Os subsistemas são construídos com mecanismos de pequeno tempo de execução. 

Os subsistemas definem os pontos de extensão para incluir comportamentos à plataforma.  A tabela a seguir descreve os componentes principais de tempo de execução da plataforma que são implementados como um ou mais plug-ins.

Tempo de execução da plataforma

Define o ponto de extensão e gabarito de plug-in. Identifica plug-ins dinamicamente e mantém as informações em um registro de plataforma.  Os plug-ins são inicializados quando necessário de acordo com a operação do usuário da plataforma.

Gerenciamento de recursos (área de trabalho)

Define a API para criar e gerenciar recursos (projetos, arquivos e pastas) produzidos pelas ferramentas e mantidos no sistema de arquivos.

Ui do workbench

Implementa o posto do usuário para navegação nos recursos e utilização dos plug-ins de ferramentas. Define pontos de extensão para incluir componentes de UI tais como exibições ou ações do menu.  Inclui kits de ferramentas adicionais (JFace e SWT) para construir interfaces do usuário.

Sistema de ajuda

Define pontos de extensão para plug-ins fornecer ajuda ou outra documentação como manuais navegáveis.

Gerenciamento de configuração e versão (VCM)

Define um gabarito de programação de equipe para gerenciar e fazer a versão dos recursos. 

Out of the box

Out of the box (Fora da caixa) - ou fora da Web - a plataforma básica é um ambiente de desenvolvimento integrado (IDE) para todas as coisas em geral (e para nada de maneira particular).

São os plug-ins que determinam a funcionalidade final da plataforma.  É por isso que o Eclipse SDK é fornecido com plug-ins adicionais para aumentar a funcionalidade do SDK.

Seus plug-ins podem fornecer suporte para a edição e manipulação de tipos adicionais de recursos como arquivos em Java, programas em C, documentos do Word, páginas em HTML e arquivos JSP.