Eclipse (projeto)

Eclipse Descrição da imagem do Eclipse 4.12 screenshot.png. Em formação
O Criador Object Technology International ( em )
Desenvolvido por Eclipse Foundation
Primeira versão 7 de novembro de 2001
Última versão 4,19 (17 de março de 2021)
Depósito git.eclipse.org/c
Escrito em Java
Interface Kit de ferramentas de widget padrão
Sistema operacional GNU / Linux , macOS , Microsoft Windows e Solaris
Meio Ambiente Máquina Virtual JAVA
línguas Multilíngue
Modelo Ambiente de desenvolvimento integrado
Licença Licença Eclipse
Documentação www.eclipse.org/contribute
Local na rede Internet www.eclipse.org

Cronologia das versões

Eclipse é um projeto, declinado e organizado em um conjunto de subprojetos de desenvolvimento de software, da fundação Eclipse com o objetivo de desenvolver um ambiente de produção de software livre extensível, universal e versátil, principalmente baseado em Java .

Seu objetivo é produzir e fornecer ferramentas para a realização de software, abrangendo atividades de programação (em particular ambiente de desenvolvimento integrado e frameworks ), mas também AGL abrangendo modelagem , design , teste , gerenciamento de configuração , relatórios ... Seu EDI , parte integrante do projeto, visa, em particular, oferecer suporte a qualquer linguagem de programação como o Microsoft Visual Studio .

Embora o Eclipse tenha sido inicialmente projetado exclusivamente para produzir ambientes de desenvolvimento, usuários e colaboradores rapidamente começaram a reutilizar seus tijolos de software para aplicativos cliente clássicos. Isso levou a uma extensão do escopo inicial do Eclipse para toda a produção de software: é o surgimento da estrutura Eclipse RCP em 2004.

Uma das grandes histórias de sucesso do código aberto , o Eclipse se tornou um padrão no mercado de software de desenvolvimento, integrado pelos principais fornecedores de software e empresas de serviço . O software comercial Lotus Notes 8 , IBM Lotus Symphony ou WebSphere Studio Application Developer baseiam-se notavelmente no Eclipse.

Arquitetura Eclipse

O metaprojeto Eclipse é composto e organizado em uma galáxia de projetos de software. A sua especificidade reside na sua arquitetura totalmente desenvolvida em torno da noção de plugin de acordo com o padrão OSGi  : todas as funcionalidades do workshop de software devem ser desenvolvidas como plug-in construído em torno da Plataforma Eclipse .

O Eclipse oferece uma estrutura de desenvolvimento de software que fornece peças de software para desenvolver essas ferramentas. Na verdade, o Eclipse é considerado tanto um IDE , um framework ou uma plataforma , dependendo se consideramos o projeto, seus componentes, os IDEs resultantes de sua montagem:

Na verdade, o projeto Eclipse também oferece “  pacotes  ” para download: pode ser:

Eclipse RCP não é tratado como um subprojeto do Eclipse, nem como um pacote, mas é apresentado como uma plataforma.

Projetos de nível superior

Os principais projetos e subprojetos Eclipse organizados por família

O Eclipse está organizado em 2011 em onze projetos de nível superior , cada um desses projetos sendo capaz de conter vários subprojetos:

Projeto Eclipse projeto de fundação incluindo, em particular, a plataforma Eclipse e o JDT Business Intelligence and Reporting Tools (BIRT) dedicado a relatórios e inteligência de negócios Projeto de plataforma de ferramentas de dados (DTP) projeto de visualização e manipulação de banco de dados relacional Projeto de Modelagem Eclipse dedicado à modelagem ( UML , EMF ...) Tempo de execução (RT) anteriormente Device Software Development Platform (DSDP), ferramentas de desenvolvimento para sistemas embarcados Projeto de plataforma de ferramentas SOA (STP) dedicado a arquiteturas orientadas a serviços Projeto de Ferramentas reúne ferramentas mais especificamente dedicadas a certas linguagens de desenvolvimento Projeto de plataforma de ferramentas de teste e desempenho (TPTP) dedicado a teste e qualificação de software Projeto de plataforma de ferramentas da Web Eclipse (WTP) dedicado a ferramentas de desenvolvimento para tecnologias web Projeto de Tecnologia vários projetos ainda em estado de espera ou incubação Mylyn gerenciamento de tarefas, o último projeto apareceu no Eclipse, em 2006 (v3.2)

Núcleo do projeto Eclipse

O Projeto Eclipse é o projeto fundador em torno do qual os outros componentes do Eclipse são agrupados; em 2012 inclui os subprojetos:

Plataforma define os componentes básicos comuns de todo o modelo de desenvolvimento do Eclipse. Ambiente de Desenvolvimento de Plug-in (PDE) reúne os plug-ins do Eclipse para desenvolver e testar outros plug-ins do Eclipse, de acordo com o OSGi no qual a filosofia do Eclipse se baseia. O PDE, portanto, torna possível criar plug-ins Eclipse como pacotes configuráveis ​​OSGi e, em seguida, por montagem, aplicativos RCP completos. Ferramentas de desenvolvimento Java (JDT) agrupa os plug-ins cobrindo as funcionalidades usuais e específicas para ambientes de desenvolvimento, como execução de código com depuração . Plataforma Eclipse

O Eclipse Platform IDE é escrito principalmente em Java (usando a biblioteca gráfica SWT , da IBM ); esta linguagem, graças a bibliotecas específicas, também é usada para escrever extensões.

A base do ambiente de desenvolvimento integrado que constitui o IDE da plataforma Eclipse é composta por:

Platform Runtime iniciar a plataforma e gerenciar plug-ins SWT a biblioteca gráfica IDE básica JFace uma biblioteca gráfica de nível superior baseada em SWT Eclipse Workbench a camada final de gráficos para organizar e manipular componentes, como visualizações, editores e perspectivas.

Todos esses componentes básicos podem ser reutilizados para desenvolver clientes pesados ​​independentes do Eclipse, graças ao pacote Eclipse RCP ( Rich Client Platform ).

Eclipse RCP

Apresentado como uma plataforma dentro do Eclipse, o Eclipse RCP constitui uma base de desenvolvimento para clientes ricos .

Histórico

Embora originalmente as bibliotecas de software desenvolvidas no projeto Eclipse tivessem a intenção de criar um IDE, alguns desenvolvedores da comunidade começaram a reutilizá-las para todos os outros aplicativos. A ideia então nasceu de extrair essas bibliotecas de software do projeto Eclipse de uma forma suficientemente genérica para constituir uma estrutura genérica por si só.

Natureza do Eclipse RCP

Eclipse RCP é, portanto, um framework orientado ao desenvolvimento de aplicações 'rich client', mas sem as funcionalidades específicas de um IDE (em particular aquelas de execução e depuração de código). O Eclipse RCP é na verdade uma biblioteca de software a partir da qual qualquer aplicativo 'rich client', incluindo fora do escopo dos workshops de engenharia de software , pode ser desenvolvido. Em outras palavras, Eclipse RCP nada mais é do que um kit de desenvolvimento de software especializado (SDK) para o desenvolvimento de aplicativos 'rich client'.

Um aplicativo desenvolvido a partir da estrutura Eclipse RCP - seja de um Eclipse EDI ou não - é então qualificado como um aplicativo RCP Eclipse  :

Conteúdo do RCP

A estrutura Eclipse RCP consiste no seguinte subconjunto de bibliotecas:

Plataforma Eclipse componente principal. Ambiente de desenvolvimento de plug-in (PDE) para o desenvolvimento de plug-ins compatíveis com OSGi. Equinócio mecanismo de execução de plug-ins. WindowBuilder componente de criação de interface gráfica wysiwyg . Business Intelligence and Reporting Tools (BIRT) componente de relatórios e inteligência de negócios .

Projetos Eclipse

Recursos de EDI

Esta lista é apenas um subconjunto dos ambientes que o Eclipse oferece para download.
Projeto de nível superior Projeto Meta Acrônimo
Projeto de Ferramentas Projeto de ferramentas de desenvolvimento Java Ambiente de desenvolvimento completo para a linguagem Java JDT
Projeto de Ferramentas AJAX Toolkit Framework Ferramentas para o desenvolvimento de aplicações AJAX ATF
Projeto de Ferramentas AppearanceJ Projeto habilitando programação orientada a aspectos para Java no Eclipse
Projeto de Ferramentas Projeto de ferramentas de desenvolvimento C / C ++ Ambiente de desenvolvimento completo para linguagens C e C ++ para Eclipse CDT
Projeto de Ferramentas COBOL IDE para Subprojeto Eclipse Ambiente de desenvolvimento completo para a linguagem Cobol para Eclipse COBOL
Projeto de Ferramentas Plataforma de ferramentas paralelas Plataforma integrada para o desenvolvimento de aplicações paralelas PTP
Projeto de Ferramentas Framework de ferramentas de desenvolvimento de PHP Desenvolvimento de aplicação web baseada na linguagem PHP no lado servidor. PDT
Projeto de plataforma de ferramentas da Web Ferramentas de serviços da web Ferramentas para o desenvolvimento de aplicações web em Java WTP
? Projeto de Desenvolvimento de Software de Dispositivo Desenvolvimento de dispositivos de software para sistemas embarcados DSDP
? Plataforma de cliente rica incorporada Desenvolvimento de cliente rico para sistema embarcado eRCP
Projeto de Ferramentas Estrutura de edição gráfica Ambiente para o desenvolvimento de visuais gráficos via MVC (*) GEF
Projeto de Ferramentas WindowBuilder Ambiente para desenvolvimento de gráficos Java
Mylyn

(*) Essa infraestrutura também é utilizada para o funcionamento interno do GEF.

Orion

Outros projetos

Ferramentas de modelagem
  • ATLAS Model Weaver (AMW)
  • MoDisco (anteriormente ATLAS Megamodel Manager )
  • Eclipse Modeling Framework (EMF) a parte do modelo do padrão de design MVC (a estrutura oferece um visual para representar o modelo denominado ecorediag que usa o visual de um diagrama de classes UML). O modelo pode ser persistido de diferentes maneiras: XSL , arquivos Java com anotações XDoclet , XMI ... então a possibilidade de adicionar seu sistema de persistência. O EMF gerencia a persistência na forma de vários arquivos de recursos vinculados.
  • O Graphical Modeling Framework (GMF), que historicamente veio depois do GEF e do EMF, vincula esses dois frameworks. Ele substitui EclipseUML .
  • Tecnologia de Modelagem Generativa (GMT)
  • UML2 é um projeto para desenvolver modelos UML 2.0 em Eclipse (UML2)
Outro
  • Eclipse Communication Framework (ECF)
  • Java Workflow Tooling (JWT) é um conjunto de ferramentas destinadas a facilitar o desenvolvimento e o uso de fluxos de trabalho.

A lista de projetos está disponível no site do Eclipse. Um site do Eclipse Marketplace também foi configurado para facilitar a pesquisa, identificação e instalação de plug-ins para qualquer plataforma Eclipse.

Linguagens de programação suportadas

Muitos idiomas são suportados em 2008 (a maioria graças à adição de plug-ins), entre os quais:

Internacionalização e tradução

O Eclipse está disponível em vários idiomas por meio de pacotes:

  • NLpack1: alemão, francês, italiano, japonês, coreano, português (Brasil), chinês tradicional e simplificado;
  • NLpack2: tcheco, húngaro, polonês e russo;
  • NLpack2a: dinamarquês, holandês, finlandês, grego, norueguês, português, sueco e turco;
  • NLpackBidi: árabe e hebraico.

O projeto Babel permite obter uma tradução da interface utilizando o serviço de atualização do Eclipse. Ele vem na forma de um plugin que suporta traduções. Ele pode ser adicionado por meio da GUI. Duas informações devem ser fornecidas:

  1. O nome, por exemplo "tradução (projeto Babel)";
  2. A URL do plug-in, dependendo da versão do Eclipse em uso.

História do projeto

O projeto Eclipse foi iniciado pela IBM para substituir, em Java , o IDE Visual Age , então baseado em Smalltalk . Desde o início do projeto, a IBM queria oferecer uma solução de plataforma cruzada que pudesse ser executada nos vários sistemas operacionais de seus clientes. Da mesma forma, o projeto deveria ser extensível por meio de plug-ins.

Em novembro de 2001, a Eclipse Foundation foi iniciada , por iniciativa de pesos pesados ​​de TI como Borland , IBM ou Red Hat . A IBM então coloca sua plataforma Eclipse em código aberto e, no final de 2003, o consórcio cresceu para mais de 80 membros. Eclipse é, portanto, um ambiente de desenvolvimento livre.

Sobrenome

O nome Eclipse foi um dos motivos pelos quais a Sun Microsystems se recusou a participar do projeto. No entanto, de acordo com Lee Nackman, diretor de tecnologia da IBM Rational Software , era o Microsoft Visual Studio , o principal concorrente, que o projeto queria eclipsar .

Versões sucessivas

Desde junho de 2007, um plano de desenvolvimento do Eclipse prevê uma versão anual em junho e duas versões intermediárias posicionadas em setembro e fevereiro.

Assim, a versão 3.3 chamada Europa apareceu no final de junho de 2007. 310 desenvolvedores em 19 países escreveram as 17 milhões de linhas de código que a compõem. Esta versão traz oficialmente 21 projetos.

A versão 3.5 chamada Galileo, publicada em junho de 2009, cobriu 33 projetos internos que vão desde modelagem até análise de desempenho. Mais de 380 membros de 44 organizações diferentes contribuíram para o desenvolvimento desta versão composta por 24 milhões de linhas de código. Seis versões de teste e avaliação, chamadas de Milestone , já haviam sido publicadas, a primeira em agosto de 2008, a segunda em setembro de 2008, a seguir em novembro de 2008 e dezembro de 2008 e finalmente a última em fevereiro de 2009 e março de 2009.

A versão 3.6 , chamada Helios, lançada em junho de 2010, está disponível em 12 pacotes, de acordo com os usos de desenvolvimento ( C / C ++ , JavaScript , PHP …). Baseia-se em 77 projetos. As principais mudanças observadas incluem: um novo pacote adaptado para desenvolvimento em C / C ++ ) no ambiente do sistema operacional Linux , novo gerenciamento de plug-ins , suporte para Git , suporte para as últimas evoluções Java (incluindo Servlet 3.0, JPA 2.0, JSF 2.0, EJB 3.1), suporte a JavaScript melhorado (configurando uma estrutura para integrar depuradores como Rhino ou Firebug ), Eclipse Xtext 1.0, (ambiente para criar linguagens específicas - linguagens específicas de domínio , DSL -), uma nova versão do Acceleo 3.0 (OMG modelo para texto - MTL -).

A versão 3.7 , chamada "Indigo" foi lançada em meados de 2011, e as versões 3.8 / 4.2 chamadas Juno foram lançadas em 27 de junho de 2012. Esta será a última versão do branch 3.

A versão 4.3 chamada Kepler foi lançada em 26 de junho de 2013 e é composta por 72 projetos e 42 subprojetos.

Esta versão traz alguns dos principais novos recursos:

  • Suporte para Java EE 7 Eclipse Web Tools (WTP);
  • Implantação do Orion na versão 3.0 para ferramentas de desenvolvimento web;
  • Novo pacote para gerenciamento de processos de negócios Eclipse Stardust 1.0  ;
  • Novo suporte para BigData Eclipse Birt 4.3 integrando suporte para bancos de dados MongoDB e Cassandra;
  • Melhor integração do processo de revisão de código com Mylyn 3.9  ;
  • Melhor integração do Maven para desenvolvimento JavaEE.

O progresso do Eclipse pode ser visto em um vídeo relativamente sintético.


Apenas as principais revisões do Eclipse são mostradas aqui
Nome de código Datado Versão Comente
2020-12 16 de dezembro de 2020 4,18
2020-09 16 de setembro de 2020 4,17
2020-06 17 de junho de 2020 4,16
2020-03 18 de março de 2020 4,15
12/2019 18 de dezembro de 2019 4,14
09/2019 18 de setembro de 2019 4,13
06/2019 19 de junho de 2019 4,12
03/2019 20 de março de 2019 4,11
12/2018 19 de dezembro de 2018 4,10
09/2018 19 de setembro de 2018 4,9
Fóton 27 de junho de 2018 4,8 85 projetos
Oxigênio 28 de junho de 2017 4,7 83 projetos
Néon 22 de junho de 2016 4,6 84 projetos
Março 24 de junho de 2015 4,5 79 projetos
Luna 25 de junho de 2014 4,4 76 projetos
Kepler 27 de junho de 2013 4,3 72 projetos
Juno 27 de junho de 2012 4,2 71 projetos
23 de fevereiro de 2012 4.1.2
20 de junho de 2011 4,1
4,0
Índigo 22 de junho de 2011 3,7 62 projetos
Helios 23 de junho de 2010 3,6 77 projetos
Galileo 24 de junho de 2009 3,5 33 projetos
Ganimedes Fevereiro de 2009 3.4.2 23 projetos
Setembro de 2008 3.4.1
25 de junho de 2008 3,4
Europa 29 de junho de 2007 3,3 21 projetos
Calisto Setembro de 2006 3.2.1 10 projetos
30 de junho de 2006 3,2
Eclipse 3.1 Janeiro de 2006 3.1.2 10 projetos
Setembro de 2005 3.1.1
Junho de 2005 3,1
Eclipse 3.0 Março de 2005 3.0.2
Setembro de 2004 3.0.1
28 de junho de 2004 3,0
Eclipse v2 Março de 2004 2.1.3
Novembro de 2003 2.1.2
Julho de 2003 2.1.1
Abril de 2003 2,1
Novembro de 2002 2.0.2
Setembro de 2002 2.0.1
Julho de 2002 2.0
Eclipse v1 Novembro de 2001 1.0

Extensões

O Eclipse suporta muitas extensões disponíveis no Eclipse Marketplace, como PyDev  (in) para Python ou jQuery para JavaScript .

Plug-in do Google para Eclipse

O Google Plugin for Eclipse (chamado GPE , do inglês Google Plugin for Eclipse ) é uma extensão Java do Eclipse que permite aos desenvolvedores projetar, construir, otimizar e implantar aplicativos orientados para computação em nuvem .

Ferramentas de desenvolvimento Android

Esta é uma extensão para desenvolvimento em Android com o Android SDK.

Referências

  1. "  https://projects.eclipse.org/projects/eclipse/releases/4.19.0  "
  2. Eclipse Rich Client Platform , eclipse.org.
  3. (en) http://pydev.org/ .
  4. “  Pacotes de idiomas: 3.2.1  ” .
  5. “  Downloads do projeto Eclipse Babel  ” .
  6. (em) Darryl K. Taft, "  Eclipse: Behind the Name  " , eWeek.com , Ziff Davis Enterprise Holdings,20 de maio de 2005(acessado em 11 de agosto de 2008 ) .
  7. (em) Liberação Simultânea  " , wiki.eclipse.org.
  8. Bertrand Braux, “The Eclipse 3.5 Galileo galaxy está disponível para download,” 01net.com, 26 de junho de 2009.
  9. (em) Helios  " .
  10. Anúncio (in) .
  11. (in) Plano de Projeto para o Projeto Eclipse Versão Juno .
  12. (en) Eclipse Kepler .
  13. (in) Code_swarm - Eclipse no Vimeo .
  14. (em) Downloads arquivados  " , archive.eclipse.org.
  15. (en) Liberação Simultânea
  16. "  Eclipse Plugins, Bundles and Products - Eclipse Marketplace  " , em Eclipse Plugins, Bundles and Products - Eclipse Marketplace (acessado em 17 de agosto de 2020 ) .
  17. (em) "  Ferramentas do desenvolvedor Android  " .

Notas


Veja também

Artigos relacionados

links externos