Creatore | Object Technology International ( in ) |
---|---|
Sviluppato da | Fondazione Eclipse |
Prima versione | 7 novembre 2001 |
Ultima versione | 4.19 (17 marzo 2021) |
Depositare | git.eclipse.org/c |
Scritto in | Giava |
Interfaccia | Toolkit widget standard |
Sistema operativo | GNU / Linux , macOS , Microsoft Windows e Solaris |
Ambiente | Macchina virtuale Java |
Le lingue | Multilingue |
genere | Ambiente di sviluppo integrato |
Licenza | Licenza Eclipse |
Documentazione | www.eclipse.org/contribute |
Sito web | www.eclipse.org |
Cronologia delle versioni
Eclipse è un progetto, declinato e organizzato in una serie di sottoprogetti di sviluppo software, della fondazione Eclipse che mira a sviluppare un ambiente di produzione di software libero che sia estensibile, universale e versatile, basandosi principalmente su Java .
Il suo obiettivo è quello di produrre e fornire strumenti per la realizzazione di software, che comprende attività di programmazione (in particolare ambiente di sviluppo integrato e framework ) ma anche AGL che copre modellazione , progettazione , test , gestione della configurazione , reporting ... Il suo EDI , parte integrante del progetto, mira in particolare a supportare qualsiasi linguaggio di programmazione come Microsoft Visual Studio .
Sebbene Eclipse fosse inizialmente progettato esclusivamente per produrre ambienti di sviluppo, utenti e collaboratori iniziarono rapidamente a riutilizzare i suoi mattoni software per le applicazioni client classiche. Ciò ha portato a un'estensione dell'ambito iniziale di Eclipse a tutta la produzione di software: è la comparsa del framework Eclipse RCP nel 2004.
Una delle grandi storie di successo dell'open source , Eclipse è diventato uno standard nel mercato del software di sviluppo, integrato dai principali fornitori di software e società di servizi . Il software commerciale Lotus Notes 8 , IBM Lotus Symphony o WebSphere Studio Application Developer sono basati in particolare su Eclipse.
Il metaprogetto Eclipse è composto e organizzato in una galassia di progetti software. La sua specificità risiede nella sua architettura totalmente sviluppata intorno alla nozione di plugin secondo lo standard OSGi : tutte le funzionalità del software workshop devono essere sviluppate come plug-in costruiti attorno alla piattaforma Eclipse .
Eclipse offre un framework di sviluppo software che fornisce mattoni software per sviluppare questi strumenti. Infatti Eclipse è considerato sia come un IDE , un framework o una piattaforma , a seconda che si consideri il progetto, i suoi componenti, gli IDE risultanti dal loro assemblaggio:
Il progetto Eclipse, infatti, offre anche dei “ pacchetti ” da scaricare: può essere:
Eclipse è organizzato nel 2011 in undici progetti di primo livello , ognuno di questi progetti essendo in grado di contenere diversi sottoprogetti:
Progetto Eclipse progetto fondante comprendente in particolare la piattaforma Eclipse e il JDT Strumenti di Business Intelligence e Reporting (BIRT) dedicato al reporting e alla business intelligence Progetto piattaforma Data Tools (DTP) progetto di visualizzazione e manipolazione di database relazionali Progetto di modellazione Eclipse dedicato alla modellazione ( UML , EMF ...) Tempo di esecuzione (RT) in precedenza Device Software Development Platform (DSDP), strumenti di sviluppo per sistemi embedded Progetto piattaforma strumenti SOA (STP) dedicato alle architetture orientate ai servizi Progetto Strumenti riunisce strumenti più specificamente dedicati a determinati linguaggi di sviluppo Progetto piattaforma strumenti di test e prestazioni (TPTP) dedicato al test e alla qualificazione del software Eclipse Web Tools Platform Project (WTP) dedicato agli strumenti di sviluppo per le tecnologie web Progetto tecnologico vari progetti ancora in stato di standby o incubazione Mylyn gestione delle attività, ultimo progetto apparso in Eclipse, nel 2006 (v3.2)Eclipse Project è il progetto fondante attorno al quale sono raggruppati gli altri componenti di Eclipse; nel 2012 comprende i sottoprogetti:
piattaforma definisce i componenti comuni di base dell'intero modello di sviluppo Eclipse. Ambiente di sviluppo plug-in (PDE) riunisce i plugin Eclipse per lo sviluppo e il test di altri plugin Eclipse, in accordo con OSGi su cui si basa la filosofia Eclipse. PDE rende quindi possibile creare plugin Eclipse come bundle OSGi quindi, per assemblaggio, applicazioni RCP complete. Strumenti di sviluppo Java (JDT) raggruppa i plugin che coprono le funzionalità usuali e specifiche per ambienti di sviluppo come l'esecuzione di codice con debugging . Piattaforma EclipseL'IDE della piattaforma Eclipse è scritto principalmente in Java (utilizzando la libreria grafica SWT , da IBM ); questo linguaggio, grazie a librerie specifiche, viene utilizzato anche per scrivere estensioni.
La base dell'ambiente di sviluppo integrato che costituisce l'IDE della piattaforma Eclipse è composta da:
Platform Runtime avvio della piattaforma e gestione dei plug-in SWT la libreria grafica IDE di base JFace una libreria grafica di livello superiore basata su SWT Banco da lavoro Eclipse il livello grafico finale per l'organizzazione e la manipolazione di componenti, come viste, editor e prospettive.Tutti questi componenti di base possono essere riutilizzati per sviluppare client pesanti indipendenti di Eclipse grazie al pacchetto Eclipse RCP ( Rich Client Platform ).
Presentato come una piattaforma all'interno di Eclipse, Eclipse RCP costituisce una base di sviluppo per i rich client .
StoricoMentre originariamente le librerie software sviluppate sul progetto Eclipse avevano lo scopo di creare un IDE, alcuni sviluppatori nella comunità hanno iniziato a riutilizzarle per tutte le altre applicazioni. È nata quindi l'idea di estrarre queste librerie software dal progetto Eclipse in modo sufficientemente generico da costituire un framework generico a sé stante.
Natura di Eclipse RCPEclipse RCP è quindi un framework orientato allo sviluppo di applicazioni 'rich client', ma privo delle funzionalità specifiche di un IDE (in particolare quelle di esecuzione e debugging del codice). Eclipse RCP è infatti una libreria software da cui è possibile sviluppare qualsiasi applicazione "rich client", anche al di fuori dell'ambito dei workshop di ingegneria del software . In altre parole, Eclipse RCP non è altro che un kit di sviluppo software (SDK) specializzato per lo sviluppo di applicazioni "rich client".
Un'applicazione sviluppata dal framework Eclipse RCP, sia che si tratti di un EDI Eclipse o meno, viene quindi qualificata come applicazione RCP Eclipse :
Il framework Eclipse RCP è costituito dal seguente sottoinsieme di librerie:
Piattaforma Eclipse componente principale. Plugin Development Environment (PDE) per lo sviluppo di plugin compatibili con OSGi. Equinozio motore di esecuzione dei plugin. WindowBuilder componente per la creazione dell'interfaccia grafica wysiwyg . Strumenti di Business Intelligence e Reporting (BIRT) componente di reporting e business intelligence .Progetto di primo livello | Progetto | Obiettivo | Acronimo |
---|---|---|---|
Progetto Strumenti | Progetto Java Development Tools | Ambiente di sviluppo completo per il linguaggio Java | JDT |
Progetto Strumenti | AJAX Toolkit Framework | Strumenti per lo sviluppo di applicazioni AJAX | ATF |
Progetto Strumenti | Aspetto J. | Progetto che consente la programmazione orientata agli aspetti per Java in Eclipse | |
Progetto Strumenti | Progetto strumenti di sviluppo C / C ++ | Ambiente di sviluppo completo per linguaggi C e C ++ per Eclipse | CDT |
Progetto Strumenti | COBOL IDE per il sottoprogetto Eclipse | Ambiente di sviluppo completo per il linguaggio Cobol per Eclipse | COBOL |
Progetto Strumenti | Piattaforma di strumenti paralleli | Piattaforma integrata per lo sviluppo di applicazioni parallele | PTP |
Progetto Strumenti | Framework per strumenti di sviluppo PHP | Sviluppo di applicazioni web basate su PHP lato server. | PDT |
Progetto Web Tools Platform | Strumenti per i servizi Web | Strumenti per lo sviluppo di applicazioni web in Java | WTP |
? | Progetto di sviluppo software per dispositivi | Sviluppo di dispositivi software per sistemi embedded | DSDP |
? | Piattaforma Rich Client incorporata | Sviluppo ricco di client per sistemi embedded | eRCP |
Progetto Strumenti | Framework di editing grafico | Ambiente per lo sviluppo di visual grafici tramite MVC (*) | GEF |
Progetto Strumenti | WindowBuilder | Ambiente per lo sviluppo della grafica Java | |
Mylyn |
(*) Questa infrastruttura è utilizzata anche per il funzionamento interno del GEF.
L'elenco dei progetti è disponibile sul sito Web di Eclipse. È stato inoltre creato un sito Eclipse Marketplace per facilitare la ricerca, l'identificazione e l'installazione di plug-in per qualsiasi piattaforma Eclipse.
Molte lingue sono supportate nel 2008 (la maggior parte grazie all'aggiunta di plugin), tra cui:
Eclipse è disponibile in molte lingue tramite pacchetti:
Il progetto Babel permette di ottenere una traduzione dell'interfaccia utilizzando il servizio di aggiornamento Eclipse. Si presenta sotto forma di un plugin che supporta le traduzioni. Può essere aggiunto tramite la GUI. Devono essere fornite due informazioni:
Il progetto Eclipse è stato avviato da IBM per sostituire, utilizzando Java , l'IDE Visual Age , allora basato su Smalltalk . Fin dall'inizio del progetto, IBM voleva offrire una soluzione multipiattaforma che potesse essere eseguita sui vari sistemi operativi dei suoi clienti. Allo stesso modo, il progetto doveva essere estensibile tramite plugin.
Nel novembre 2001 è stata fondata la Eclipse Foundation , su iniziativa di pesi massimi dell'IT come Borland , IBM o Red Hat . IBM quindi colloca la sua piattaforma Eclipse in open source e, alla fine del 2003, il consorzio è cresciuto fino a raggiungere più di 80 membri. Eclipse è quindi un ambiente di sviluppo gratuito.
Il nome Eclipse è stato uno dei motivi per cui Sun Microsystems ha rifiutato di aderire al progetto. Tuttavia, secondo Lee Nackman, chief technology officer di IBM Rational Software , era Microsoft Visual Studio , il principale concorrente, che il progetto voleva eclissare .
Da giugno 2007, un piano di sviluppo Eclipse prevede una versione annuale a giugno e due versioni intermedie posizionate a settembre e febbraio.
Così, la versione 3.3 chiamata Europa è apparsa alla fine di giugno 2007. 310 sviluppatori in 19 paesi hanno scritto i 17 milioni di righe di codice che la compongono. Questa versione porta ufficialmente 21 progetti.
La versione 3.5 denominata Galileo, pubblicata nel giugno 2009, copriva 33 progetti interni che andavano dalla modellazione all'analisi delle prestazioni. Più di 380 membri provenienti da 44 diverse organizzazioni hanno contribuito allo sviluppo di questa versione che comprende 24 milioni di righe di codice. Sei versioni di test e valutazione, denominate Milestone , erano già state pubblicate, la prima nell'agosto 2008, la seconda nel settembre 2008, poi nel novembre 2008 e nel dicembre 2008 e infine l'ultima nel febbraio 2009 e poi nel marzo 2009.
La versione 3.6 , denominata Helios, rilasciata a giugno 2010, è disponibile in 12 pacchetti, a seconda degli utilizzi di sviluppo ( C / C ++ , JavaScript , PHP …). Si basa su 77 progetti. Le principali modifiche rilevate includono: un nuovo pacchetto adattato per lo sviluppo in C / C ++ ) nell'ambiente del sistema operativo Linux , nuova gestione dei plugin , supporto per Git , supporto per le ultime evoluzioni Java (inclusi Servlet 3.0, JPA 2.0, JSF 2.0, EJB 3.1), supporto JavaScript migliorato (impostando un framework per integrare debugger come Rhino o Firebug ), Eclipse Xtext 1.0, (ambiente per creare linguaggi specifici - linguaggi specifici del dominio , DSL -), una nuova versione di Acceleo 3.0 (OMG Model-to-text - MTL -).
La versione 3.7 , chiamata "Indigo", è stata rilasciata a metà del 2011 e le versioni 3.8 / 4.2 denominate Juno sono state rilasciate il 27 giugno 2012. Questa sarà l'ultima versione del ramo 3.
La versione 4.3 chiamata Kepler è stata rilasciata il 26 giugno 2013 ed è composta da 72 progetti e 42 sottoprogetti.
Questa versione porta alcune importanti nuove funzionalità:
I progressi di Eclipse possono essere visti in un video relativamente sintetico.
Nome in codice | Datato | Versione | Commento |
---|---|---|---|
2020-12 | 16 dicembre 2020 | 4.18 | |
2020-09 | 16 settembre 2020 | 4.17 | |
2020-06 | 17 giugno 2020 | 4.16 | |
2020-03 | 18 marzo 2020 | 4.15 | |
2019-12 | 18 dicembre 2019 | 4.14 | |
2019-09 | 18 settembre 2019 | 4.13 | |
2019-06 | 19 giugno 2019 | 4.12 | |
2019-03 | 20 marzo 2019 | 4.11 | |
2018-12 | 19 dicembre 2018 | 4.10 | |
2018-09 | 19 settembre 2018 | 4.9 | |
Fotone | 27 giugno 2018 | 4.8 | 85 progetti |
Ossigeno | 28 giugno 2017 | 4.7 | 83 progetti |
Neon | 22 giugno 2016 | 4.6 | 84 progetti |
marzo | 24 giugno 2015 | 4.5 | 79 progetti |
Luna | 25 giugno 2014 | 4.4 | 76 progetti |
Kepler | 27 giugno 2013 | 4.3 | 72 progetti |
Juno | 27 giugno 2012 | 4.2 | 71 progetti |
23 febbraio 2012 | 4.1.2 | ||
20 giugno 2011 | 4.1 | ||
4.0 | |||
Indaco | 22 giugno 2011 | 3.7 | 62 progetti |
Helios | 23 giugno 2010 | 3.6 | 77 progetti |
Galileo | 24 giugno 2009 | 3.5 | 33 progetti |
Ganimede | Febbraio 2009 | 3.4.2 | 23 progetti |
Settembre 2008 | 3.4.1 | ||
25 giugno 2008 | 3.4 | ||
Europa | 29 giugno 2007 | 3.3 | 21 progetti |
Callisto | Settembre 2006 | 3.2.1 | 10 progetti |
30 giugno 2006 | 3.2 | ||
Eclipse 3.1 | Gennaio 2006 | 3.1.2 | 10 progetti |
Settembre 2005 | 3.1.1 | ||
Giugno 2005 | 3.1 | ||
Eclipse 3.0 | Marzo 2005 | 3.0.2 | |
Settembre 2004 | 3.0.1 | ||
28 giugno 2004 | 3.0 | ||
Eclipse v2 | Marzo 2004 | 2.1.3 | |
Novembre 2003 | 2.1.2 | ||
Luglio 2003 | 2.1.1 | ||
Aprile 2003 | 2.1 | ||
Novembre 2002 | 2.0.2 | ||
Settembre 2002 | 2.0.1 | ||
Luglio 2002 | 2.0 | ||
Eclipse v1 | Novembre 2001 | 1.0 |
Eclipse supporta molte estensioni disponibili su Eclipse Marketplace, come PyDev (in) per Python o jQuery per JavaScript .
Il plug-in di Google per Eclipse (chiamato GPE , dall'inglese Google Plugin for Eclipse ) è un'estensione Java di Eclipse che consente agli sviluppatori di progettare, creare, ottimizzare e distribuire applicazioni orientate al cloud computing .
Questa è un'estensione per lo sviluppo su Android con Android SDK.