Noțiuni introductive despre platforma Eclipse (documentație). Instalarea mediului de dezvoltare Eclipse

Mediul de dezvoltare Eclipse

Eclipse a fost dezvoltat inițial de IBM ca un succesor al mediului de dezvoltare IBM VisualAge, ca standard IDE corporativ pentru dezvoltare în diferite limbi pentru platformele IBM. Potrivit IBM, proiectarea și dezvoltarea au costat 40 de milioane de dolari. Codul sursă a fost complet deschis și pus la dispoziție după ce Eclipse a fost lansat unei comunități independente de IBM pentru dezvoltare ulterioară.

Eclipse 3.0 (2003) a adoptat specificațiile platformei de servicii OSGi ca arhitectură de rulare. Începând cu versiunea 3.0, Eclipse a încetat să mai fie un IDE monolitic care acceptă extensii și a devenit în sine o colecție de extensii. Se bazează pe framework-ul OSGi și SWT/JFace, pe baza căruia este dezvoltat următorul strat - RCP (Rich Client Platform, o platformă pentru dezvoltarea aplicațiilor client cu drepturi depline). RCP servește ca bază nu numai pentru Eclipse, ci și pentru alte aplicații RCP, cum ar fi Azureus și File Arranger. Următorul strat este Eclipse în sine, care este un set de extensii RCP - editori, panouri, perspective, modulul CVS și modulul Java Development Tools (JDT).

Din 2006, Fundația Eclipse a coordonat o lansare simultană anuală, care are loc în iunie. Fiecare lansare include platforma Eclipse, precum și o serie de alte proiecte Eclipse.

Eclipse servește în primul rând ca platformă pentru dezvoltarea extensiilor, motiv pentru care a câștigat popularitate: orice dezvoltator poate extinde Eclipse cu propriile module. Există deja Instrumente de dezvoltare Java (JDT), Instrumente de dezvoltare C/C++ (CDT), dezvoltate de inginerii QNX împreună cu IBM, și instrumente pentru limbaje Ada (GNATbench, Hibachi), COBOL, FORTRAN, PHP etc. din diverse dezvoltatori. Multe extensii completează mediul Eclipse cu manageri pentru lucrul cu baze de date, servere de aplicații etc.

Eclipse JDT (Java Development Tools) este cel mai cunoscut modul care vizează dezvoltarea de grup: mediul este integrat cu sisteme de control al versiunilor - CVS, GIT în pachetul principal, există plugin-uri pentru alte sisteme (de exemplu, Subversion, MS SourceSafe). De asemenea, oferă suport pentru comunicarea între IDE și sistemul de management al sarcinilor (eroare). Pachetul principal include suport pentru Bugzilla bug tracker și există, de asemenea, multe extensii pentru a suporta alte instrumente de urmărire (Trac, Jira etc.). Deoarece este gratuit și de înaltă calitate, Eclipse este standardul corporativ pentru dezvoltarea de aplicații în multe organizații.

Eclipse este scris în Java, prin urmare este un produs independent de platformă, cu excepția bibliotecii SWT, care este dezvoltată pentru toate platformele comune (vezi mai jos). Biblioteca SWT este utilizată în locul bibliotecii standard Java Swing. Se bazează în întregime pe platforma de bază (sistemul de operare) pentru o performanță rapidă și un aspect natural. interfata utilizator, dar uneori provoacă probleme de compatibilitate și stabilitate a aplicațiilor pe platforme. Baza Eclipse este platforma rich client (RCP). Se compune din următoarele componente:

OSGi (mediu standard de livrare a pachetelor);

SWT (kit de instrumente portabil widget);

JFace (buffere de fișiere, lucru cu text, editori de text);

Lucru Mediul de eclipsă(panouri, editori, proiecții, master).

GUI în Eclipse, scrisă folosind setul de instrumente SWT. Acesta din urmă, spre deosebire de Swing (care emulează controalele grafice), folosește componente grafice a acestui sistem de operare. Interfața de utilizator Eclipse depinde, de asemenea, de un middleware GUI numit JFace, care facilitează construirea unei interfețe de utilizator bazate pe SWT.

Flexibilitatea lui Eclipse este asigurată de plug-in-uri, ceea ce face posibilă dezvoltarea nu numai în Java, ci și în alte limbaje, precum C/C++, Perl, Groovy, Ruby, Python, PHP, Erlang, Component Pascal, Zonnon și altele. .

În acest articol am vrut să vorbesc despre cum să creez aplicații folosind Eclipse RCP (Rich Client Platform). Motivul scrisului a fost faptul că nu există absolut niciun articol despre Habré care să descrie această platformă. De exemplu, vom crea un formular de introducere personalizat; Corectitudinea datelor va fi verificată folosind cadrul JFace Data Binding. Pentru început, voi oferi mai jos o captură de ecran a ceea ce ar trebui să obținem.

Ce este Eclipse RCP

Pentru început, este încă necesar să spunem ce este Eclipse RCP. Eclipsa este un mediu de dezvoltare scris în Java, dezvoltat și susținut de Fundația Eclipse (ai cărui membri includ IBM, SAP, Oracle, companii care oferă produse bazate pe Eclipse RCP și care participă la dezvoltarea ecosistemului Google, RedHat, Adobe, Cisco, Intel) . Eclipse RCP este un set de pluginuri pentru crearea așa-numitelor aplicații rich client. Tot ceea ce vede utilizatorul la deschiderea IDE-ului Eclipse este un plugin creat pe baza acestei platforme. Utilizatorul își poate crea propriile plugin-uri pe baza unui număr mare de cele existente, de asemenea, dacă este necesar, puteți găsi cele mai populare cadre, precum Hibernate, Google Guice, Google Guava, JUnit, TestNG sub formă de plugin-uri. De asemenea, este de remarcat faptul că arhitectura runtime se bazează pe specificația platformei de servicii OSGI, această specificație descrie modul în care aplicațiile modulare pot fi create și rulate. Eclipse, așa cum am menționat mai sus, este scris în Java și este poziționat ca un produs multiplatform (în 90% din cazuri, aplicația RCP va fi construită pe Windows, Linux și Mac). Toate pluginurile care alcătuiesc nucleul platformei și majoritatea pluginurilor terță parte sunt licențiate sub EPL (Eclipse Public License). Interfața de utilizator a aplicațiilor RCP se bazează pe componentele vizuale ale cadrelor SWT și JFace, precum și pe widget-urile native Eclipse. Figurile de mai jos arată din ce componente constă o aplicație bazată pe platforma RCP și structura platformei Eclipse în sine.


Figura 1 - Componente utilizate în aplicația RCP (figura preluată de pe acest site)


Figura 2 – Arhitectura Eclipse (poza luată de pe acest site)

Avantaje și dezavantaje ale platformei
Întrebarea principală este de ce această platformă este atât de bună și de ce o folosiți pentru a dezvolta aplicații desktop (apropo, este posibil să dezvoltați aplicații web și aplicații pentru platforme mobile). Modularitate, multi-platformă, suport multilingv, gratuit, un număr mare de plugin-uri, biblioteci și cadre existente. Toate acestea vă permit să creați aplicații de calitate comercială (un link către o listă de aplicații existente dezvoltate pe această platformă este dat la sfârșitul articolului). Dezavantajele includ un nivel destul de ridicat de intrare, deoarece pentru a dezvolta o aplicație serioasă trebuie să știți cel puțin schiță generală cum funcționează cadrul OSGI, să puteți lucra cu componentele și widget-urile SWT și JFace. De asemenea, pentru dezvoltatorii vorbitori de limbă rusă, problema va fi găsirea oricăror materiale sau cărți despre cadrele și bibliotecile menționate mai sus (link-urile către resursele găsite, inclusiv cele în limba rusă, sunt date la sfârșitul articolului), deși conferințe sunt organizate periodic în Europa și SUA, organizate de participanții Fundația Eclipse, în Germania, publică o revistă specială care vorbește despre plugin-uri noi și conține o mulțime de exemple de utilizare a acestora, precum și o serie întreagă de cărți în limba germană care descrie toate nuanțele și subtilitățile dezvoltării. În engleză găsești o serie specială de cărți, seria Eclipse, de la Addison-Wesley, și poți găsi și câteva cărți de la Apress. Dar există puține materiale și cărți în limba noastră maternă.

Să începem

Instalarea pluginurilor necesare
Să trecem la crearea primei noastre aplicații RCP. Pentru a funcționa, trebuie să descarcăm ansamblul: Eclipse pentru dezvoltatorii RCP și RAP de pe site-ul oficial. Dacă Eclipse IDE este deja instalat, puteți utiliza managerul de actualizări. Selectați Ajutor->Instalare software nou din meniul principal. În fereastra Instalare care apare în partea de sus, selectați site-ul cu actualizările de care avem nevoie din lista derulantă - download.eclipse.org/releases/indigo, dacă nu există un astfel de site în listă, atunci faceți clic pe butonul Adaugă din dreapta, în câmpul Nume scrieți - Indigo Update Site, în câmpul Locație - adresa dată mai sus, faceți clic pe OK (dacă la adăugarea unei adrese un mesaj apare - Locație duplicată, atunci adresa există deja în lista site-urilor software disponibile, lista site-urilor de actualizare poate fi vizualizată în fereastra de instalare anterioară făcând clic pe linkul Site-uri software disponibile, care se află sub lista derulantă). După selectarea site-ului de actualizare, mai jos va apărea o listă arborescentă (dacă caseta de selectare Grupare articole după categorie este bifată), deschideți elementul Instrumente cu scop general și selectați Mediul de dezvoltare pentru plug-in Eclipse, apoi deschideți elementul EclipseRT Target Platform Components și marcați pluginul - Resurse pentru dezvoltatori pentru pluginul Eclipse RCP, acestea sunt cele două plugin-uri de care avem nevoie pentru a ne crea proiectul. Apoi, faceți clic pe Următorul de două ori, acceptați contract de licențăși faceți clic pe butonul Terminare; Gata, va începe instalarea pluginurilor necesare. După instalare, ni se va cere să repornim Eclipse, ceea ce vom face.


Figura 3 – Fereastra de instalare a pluginului

Crearea unui proiect
După repornire, selectați File->New->Other în meniul principal, selectați Plug-in Development, apoi selectați Plug-in Project în meniul drop-down.


Figura 4 – Meniu pentru selectarea tipului de proiect care urmează să fie creat

Faceți clic pe Următorul, trebuie să dăm un nume proiectului nostru, lăsați-l să fie numit first.rcp.application, faceți clic din nou pe Următorul. În fereastra următoare trebuie să specificăm numele aplicației în câmpul Nume vom scrie First RCP Application; Debifați Generarea unui activator, o clasă Java care controlează ciclul de viață al plug-in-ului; Pentru aplicația noastră simplă, clasa de activator nu este necesară. Să lăsăm caseta de selectare a articolului - Acest plug-in va aduce contribuții la interfața de utilizare, deoarece aplicația noastră va conține interfața cu utilizatorul. Să lăsăm cel de-al treilea element Activare analiză API nebifat. La întrebarea - Doriți să creați o aplicație client bogat? Să răspundem da.


Figura 5 – Fereastra de creare a pluginurilor

Faceți clic pe Următorul, ni se va cere să selectăm un șablon pentru viitoarea aplicație, selectați - Hello RCP și faceți clic pe Următorul.


Figura 6 - Fereastra de selectare a șablonului de proiect RCP

În ultima fereastră, în câmpul Titlul ferestrei Aplicație scrieți - Formular utilizator, în câmpul Clasa Aplicație - Aplicația mea. Lăsați caseta de selectare Adăugați branding inactivă. Faceți clic pe butonul Terminare. Ni se va cere să trecem la perspectiva Plug-in Development, vom fi de acord cu această propunere.


Figura 7 - Fereastra de configurare a șablonului de proiect RCP

Structura proiectului
Deci avem structura proiectului nou creat.


Figura 8 – Structura proiectului

Conținutul celor cinci clase din pachetul first.rcp.application în în acest moment nu ne interesează, voi spune doar că este grozav Aplicația mea Aceasta este într-un fel metoda main() a unui program Java obișnuit, această clasă este responsabilă pentru modul în care va fi lansat pluginul nostru și cum va fi oprit. În clasă ApplicationWorkbenchWindowAdvisor, putem seta dimensiunea ferestrei aplicației folosind rândul următor cod:
configurer.setInitialSize(new Point(400, 300));
De asemenea, putem vedea că bara de instrumente și bara de stare nu vor fi afișate implicit:
configurer.setShowCoolBar(false);
configurer.setShowStatusLine(false);
Ultima linie stabilește titlul ferestrei principale:
configurer.setTitle(„Formular utilizator”);
Clasă ApplicationActionBarAdvisor este responsabil pentru personalizarea barei de meniu a aplicației noastre. Clasă Perspectivă este responsabil pentru locația și dimensiunea editorilor și a vizualizărilor care se află într-o anumită perspectivă; o aplicație RCP trebuie să aibă cel puțin o perspectivă;

Lansarea proiectului
Pentru a rula aplicația pe care tocmai am creat-o, trebuie să mergem în folderul META-INF și să deschidem fișierul MANIFEST.MF, dacă l-ați închis brusc (acest fișier este deschis implicit la crearea unui proiect).


Figura 9 – Editor de proprietăți ale aplicației RCP

Acest fișier ne permite să schimbăm multe setări ale proiectului, să conectăm plugin-uri suplimentare, să conectăm și să gestionăm extensii, să configuram construcția pluginului nostru și multe altele. Ne aflăm pe fila Overview, în secțiunea Testare facem clic pe linkul - Lansați o aplicație Eclipse, după un moment va apărea pe ecran fereastra aplicației noastre, o închidem și trecem la etapa următoare.


Figura 10 – Fereastra aplicației noastre

Adăugarea unei vederi

Adăugarea unei extensii
Sarcina noastră este să creăm o vedere pe care să putem plasa elemente de interfață grafică. Să revenim la dosar MANIFEST.MF, selectați fila din partea de jos – Extensii. Putem vedea că implicit avem două extensii: org.eclipse.core.runtime.applications și org.eclipse.ui.perspectives. Prima extensie este asociată cu clasa noastră de aplicație Aplicația mea dacă alegem această extensieși extindeți lista de arbore la primul nod.rcp.application.MyApplication (rulare), vom vedea că câmpul de clasă conține numele acestei clase particulare. Revenind la nodul rădăcină al acestei liste, în dreapta în secțiunea Detalii extensie vom vedea două câmpuri ale căror valori le putem modifica și (nu vom face acest lucru acum): ID – identificatorul aplicației și Nume – numele aplicației.

A doua extensie este responsabilă pentru stabilirea perspectivei aplicației noastre. Fişier MANIFEST.MF ne permite, fără a căuta în codul clasei Perspective, să specificăm ce vizualizări și/sau editori va conține această perspectivă, poziția, dimensiunea și raportul acestora. Făcând clic pe această extensie și mergând la elementul copil, putem vedea că în secțiunea Extension Element Details putem specifica clasa de perspectivă, ID-ul și numele. Trebuie remarcat faptul că astfel de modificări, așa cum s-a menționat mai sus, pot fi făcute prin editarea directă a codului de clasă care este asociat cu această extensie și editarea fișierului. plugin.xml, dar nu aș vrea să complic crearea primului nostru proiect.


Figura 11 – Tab cu extensii ale proiectului nostru

Trebuie să adăugăm o nouă extensie pentru a crea vizualizarea. Pentru a face acest lucru, faceți clic pe butonul Adaugă și în fereastra care apare, introduceți vizualizări în câmpul de filtru Extension Point, ar trebui să rămână o singură extensie - org.eclipse.ui.views, selectați-o și faceți clic pe Finish.


Figura 12 – Fereastra de selecție a extensiilor noi

Ar trebui să avem încă o, a treia extensie în lista de extensii.

Setarea vederii
Să facem clic dreapta pe extensia pe care am adăugat-o, aceasta va apărea meniul contextual, selectați New->view în el, astfel vom adăuga un element la extensia noastră (acest element este vizualizarea de care avem nevoie). Setările vor apărea în partea dreaptă a acestui element. Mai întâi, să creăm o clasă pentru vizualizarea noastră. Putem face acest lucru făcând clic pe link-ul clasei*.


Figura 13 – Vizualizare setări

Se va deschide un dialog standard pentru crearea unei clase Java, dați-i un nume – MainView; după cum putem vedea, această clasă moștenește din clasă org.eclipse.ui.part.ViewPart, clasa părinte pentru toate tipurile. Să finalizăm crearea clasei făcând clic pe butonul Terminare. A mai rămas foarte puțin, după ce am creat o clasă pentru vizualizarea noastră, codul acesteia se va deschide în fața noastră, vom crea o variabilă statică care va conține identificatorul acestei vederi, vom seta numele canonic al acestei clase ca identificator . Să scriem următoarele:

clasa publică MainView extinde ViewPart (
ID-ul șirului final static public = MainView.class.getCanonicalName();

}
Să revenim la dosar MANIFEST.MF, deschideți fila Extensie, copiați conținutul câmpului de clasă* și inserați-l în câmpul ID. Acum, numele clasei și identificatorul acestui tip sunt aceleași, această tehnică este o practică bună, deoarece vă permite întotdeauna să găsiți rapid tipul dorit și să aflați identificatorul acestuia. În câmpul nume* vom scrie – Formular de utilizator. Întreaga vedere a fost creată, rămâne să o conectăm cu perspectiva noastră, deoarece vederea în sine nu poate fi folosită, cu alte cuvinte, trebuie să aparțină unei anumite perspective.

Setarea poziției de vizualizare
Putem efectua alte manipulări în timp ce rămânem în editorul de extensii sau deschidem codul clasei de perspectivă - Perspectivă.java, ceea ce vom face. În clasă Perspectivă, să trecem la metoda createInitialLayout(), această metodă setează poziția inițială a vizualizărilor și a editorilor. În metodă vom scrie următoarele două linii de cod:
layout.setEditorAreaVisible(false);
layout.addStandaloneView(MainView.ID, true, IPageLayout.LEFT, 1.0f, layout.getEditorArea());
Prima linie spune obiectului aspect că nu avem nevoie de o zonă editabilă, deoarece avem o singură vizualizare și nici un editor. A doua linie adaugă viziunea noastră și ca una de sine stătătoare. Primul parametru este ID-ul nostru de vizualizare. Al doilea parametru este o valoare booleană care determină dacă titlul vizualizării noastre (Formular utilizator) va fi afișat sau nu. Al treilea parametru este destinat să indice orientarea vederii în perspectivă, deoarece avem o singură vedere și vom ocupa întreg spațiul de perspectivă, această valoare poate fi oricare. Al patrulea parametru determină poziția acestei vederi în raport cu alte vizualizări sau editori, deoarece, în cazul nostru, o vedere ar trebui să ocupe întreg spațiul de perspectivă. Ultimul al cincilea parametru este identificatorul zonei editor. Să ne salvăm modificările.
Lansarea unei aplicații cu o vizualizare adăugată
Să revenim la dosar MANIFEST.MFși lansați din nou aplicația noastră, pentru a face acest lucru, mergeți la fila Prezentare generală, în secțiunea Testare, faceți clic pe linkul Lansați o aplicație Eclipse. Nu vom vedea prea multe diferențe față de modul în care arăta formularul în timpul lansării anterioare, a fost adăugată doar o filă cu vizualizarea noastră - Formular de utilizator;


Figura 14 – Fereastra aplicației noastre cu o vizualizare adăugată

Asta e tot pentru ziua de azi, urmand a fi continuat in articolul urmator.

) specificațiile platformei de servicii OSGi au fost alese ca arhitectură a mediului de rulare. Începând cu versiunea 3.0, Eclipse a încetat să mai fie un IDE monolitic care acceptă extensii și a devenit în sine o colecție de extensii. Se bazează pe framework-ul OSGi și SWT/JFace, pe baza căruia a fost dezvoltat următorul strat - RCP (Rich Client Platform, o platformă pentru dezvoltarea aplicațiilor client cu drepturi depline). RCP servește ca bază nu numai pentru Eclipse, ci și pentru alte aplicații RCP, cum ar fi Azureus și File Arranger. Următorul strat este Eclipse însuși, care este un set de extensii RCP - editori, panouri, perspective, un modul CVS și un modul Java Development Tools (JDT).

Din 2006, Fundația Eclipse a coordonat o lansare simultană anuală, care are loc în iunie. Fiecare lansare include platforma Eclipse, precum și o serie de alte proiecte Eclipse.

Eliberare Data Versiunea platformei Proiect
Neon 22 iunie 2016 4.6
Marte 25 iunie 2015 4.5
Luna 6 iunie 2014 4.4
Kepler 26 iunie 2013 4.3
Juno 27 iunie 2012 3.8 și 4.2
Indigo 22 iunie 2011 3.7
Helios 23 iunie 2010 3.6
Galileo 24 iunie 2009 3.5
Ganimede 25 iunie 2008 3.4
Europa 29 iunie 2007 3.3
Callisto 30 iunie 2006 3.2
Eclipsa 3.1 28 iunie 2005 3.1
Eclipse 3.0 28 iunie 2004 3.0

Avantaje

Eclipse servește în primul rând ca platformă pentru dezvoltarea extensiilor, motiv pentru care a câștigat popularitate: orice dezvoltator poate extinde Eclipse cu propriile module. Există deja Instrumente de dezvoltare Java (JDT), Instrumente de dezvoltare C/C++ (CDT), dezvoltate de inginerii QNX împreună cu IBM și instrumente pentru limbajele Ada (GNATbench, Hibachi), COBOL, FORTRAN, PHP, X10 (X10DT). ), etc. de la diverși dezvoltatori. O varietate de extensii completează mediul Eclipse cu manageri pentru lucrul cu baze de date, servere de aplicații și multe altele.

Eclipse JDT (Java Development Tools) este cel mai cunoscut modul care vizează dezvoltarea de grup: mediul este integrat cu sisteme de control al versiunilor - CVS, GIT în distribuția principală, există plugin-uri pentru alte sisteme (de exemplu, Subversion,). De asemenea, oferă suport pentru comunicarea între IDE și sistemul de management al sarcinilor (eroare). Distribuția principală include suport pentru Bugzilla bug tracker și există, de asemenea, multe extensii pentru a suporta alte trackere (Trac, Jira etc.). Deoarece este gratuit și de înaltă calitate, Eclipse este standardul corporativ pentru dezvoltarea de aplicații în multe organizații.

Eclipse este scris în Java, prin urmare este un produs independent de platformă, cu excepția bibliotecii SWT, care este dezvoltată pentru toate platformele comune (vezi mai jos). Biblioteca SWT este utilizată în locul bibliotecii standard Java Swing. Se bazează în întregime pe platforma de bază (sistemul de operare), care oferă o interfață de utilizator rapidă și naturală, dar uneori provoacă probleme de compatibilitate și stabilitate a aplicației pe platforme.

Arhitectură

Baza Eclipse este Platforma Rich Client (RCP). platforma client bogat). Se compune din următoarele componente:

  • OSGi (mediu standard pentru livrarea truselor) mănunchiuri));
  • SWT (kit de instrumente portabil widget);
  • JFace (buffere de fișiere, lucru cu text, editori de text);
  • Mediul de lucru Eclipse (panouri, editori, proiecții, vrăjitori).
    • Aperi (din lat. deschide) - sistem open source pentru gestionarea sistemelor de stocare în rețea.
    • BIRT (Business Intelligence and Reporting Tools) - Rapoarte web și PDF.
    • DTP (Data Tools Platform) - dezvoltarea de sisteme centrate pe date, în special, date în baze de date relaționale; gestionarea programelor cu un număr mare de conectori.
    • GEF (Graphical Editing Framework) este un cadru pentru construirea de editori grafici încorporați.
    • Jazz este o platformă client-server pentru interacțiunea dintre dezvoltatori în timpul procesului de dezvoltare a proiectului (include chat, jurnal de evenimente etc.), construită pe Eclipse (parte a liniei de produse IBM Rational).
    • Modelare .
    • Instrumente .
    • TPTP (Test & Performance Tools Platform) - dezvoltare de instrumente de testare, - depanare, profilere etc.
    • VE (Visual Editor Project) - dezvoltarea instrumentelor GUI.
    • WTP (Web Tools Platform Project) - Instrumente de dezvoltare a aplicațiilor web J2EE:
      • Editore HTML, JavaScript, CSS, JSP, SQL, XML, DTD, XSD și WSDL;
      • editori grafici pentru XSD și WSDL;
      • Web Services Wizards and Explorer, WS-I Test Tools;
      • instrumente pentru accesarea și construirea de interogări și modele de baze de date.
    • Eclipse Communication Framework (ECF) își propune să creeze aplicații de comunicare pe platforma Eclipse.
    • Proiect de dezvoltare software pentru dispozitive (DSDP).
    • Platforma de instrumente paralele (PTP) oferă o platformă de instrumente paralele portabilă, scalabilă, bazată pe standarde, care va facilita integrarea instrumentelor specifice arhitecturilor de computere paralele.
    • Embedded Enhanced Client Platform (eRCP) - concepută pentru a extinde RCP la dispozitivele încorporate. eRCP include un set de componente care sunt un subset de componente RCP. Vă va permite să transferați modelul de aplicație utilizat pe computere desktop, la alte dispozitive.
    • DLTK (Dynamic Languages ​​​​Toolkit) este un mediu de dezvoltare integrat pentru limbaje de programare dinamice.
    • Swordfish este o platformă pentru construirea de sisteme de informații corporative distribuite.

    Ultimele versiuni

    Eclipse 3.3.2 (Europa de iarnă)

    Numărul de noi subproiecte (atât gestionate de Fundația Eclipse, cât și de terți) crește rapid. Trebuie să coordonăm eforturile unui număr mare de dezvoltatori și oferte reguli generale- „Procesul de dezvoltare a eclipsei”.

    Ultima versiune lansarea include 21 de subproiecte.

    Eclipsa 3.4 (Ganymede)

    Lansarea Ganymede (06.2008) include 23 de subproiecte:

    • Proiectul Eclipse 3.4
    • Echinocțiul 3.4
    • Proiectul Eclipse Communication Framework 2.0.0
    • Tehnologia Eclipse Model Framework
    • Cadrul de modelare Eclipse 2.4.0
    • Proiectul de ambalare Eclipse 1.0.0
    • Proiectul platformei Eclipse Web Tools 3.0.0
    • Framework Editor grafic 3.4.0
    • Cadrul de modelare grafică 2.1
    • Instrumente de dezvoltare a modelelor. 1.1
    • Platforma de instrumente de date (DTP) 1.6
    • Platforma de dezvoltare software pentru dispozitiv Proiect Depanare dispozitiv 1.0
    • Platforma de dezvoltare software pentru dispozitive Project Target Management 3.0
    • Ansamblu componente Buckminster 1.1
    • BIRT 2.3.0
    • Instrumentul de dezvoltare C/C++ (CDT) 5.0.0
    • Setul de instrumente pentru limbaje dinamice 0.95
    • Model la text (M2T) 0.9.0
    • Transformare de la model la model (M2M)
    • Mylyn 3.0 (interfață de utilizare axată pe sarcini)
    • Platformă Ajax bogată (RAP) 1.1
    • Instrumente SOA (STP) 1.0
    • Subversiv - SVN Team Provider
    • Managementul țintei 3.0
    • Proiectul platformei Instrumente de testare și performanță 4.5.0

    Eclipsa 3.5 (Galileo)

    Cea mai recentă versiune a lui Galileo, prezentată publicului pe 24 iunie 2009, include 33 de subproiecte:

    • Platforma Eclipse 3.5
    • Proiectul Eclipse 3.5.0
    • Eclipse Modeling Framework (EMF) 2.5.0
    • Proiectul de ambalare Eclipse 1.1.0
    • Proiectul platformei Eclipse Web Tools WTP 3.1.0 (Galileo)
    • Proiectul EclipseLink 1.1.2
    • Cadrul instrumentelor de accesibilitate 0.7.0
    • Instrumente de Business Intelligence și Raportare (BIRT)
    • Instrumente de dezvoltare C/C++ (CDT) 6.0
    • Instrumente de persistență Dali Java 2.2
    • Platforma Instrumente de date 1.7 (Galileo)
    • Setul de instrumente pentru limbaje dinamice 1.0
    • Echinocțiul 3.5
    • GEF - Graphical Editor Framework 3.5.0
    • Cadrul de modelare grafică 2.2.0
    • Instrumente Java Workflow JWT 0.6
    • JDT - Instrumente de dezvoltare Java
    • M2T JET (Java Emitter Templates) - alias JET2 M2T JET 1.0.0 (Galileo)
    • Analizor de memorie 0.8.0
    • Instrumente mobile pentru Java
    • Model la text (M2T) 1.0.0
    • Transformare model la model (M2M) Galileo lansare simultană
    • Instrumente de monitorizare 4.6
    • Mylyn 3.2
    • Instrumente de dezvoltare PHP 2.1.0
    • Platforma Ajax bogată 1.2
    • Proiectul platformei Riena 1.1.0.
    • SCA Tools 2.0.0
    • Instrumente SOA 2.0
    • Editare sursă 3.1.0 (Galileo)
    • Pește-spadă 0.9.0
    • Managementul țintei 3.1
    • Proiectul platformei Instrumente de testare și performanță 4.5.3
    • Instrumente de testare TPTP v4.6
    • Cadrul de modelare textuală org.eclipse.xtext
    • Instrumente pentru mobil Linux 0.3
    • Platforma TPTP TPTP v4.6
    • Instrumente de urmărire și profilare TPTP v4.6

    Localizare

    Începând cu versiunea 3.1.1, a fost lansat un pachet de limbi pentru rusificarea lui Eclipse. Tradus în rusă ca GUI, și documentație.

    Module

    Există o serie de module gratuite și comerciale disponibile pentru mediul Eclipse. Cadrul a fost conceput inițial pentru limbajul Java, dar acum există numeroase extensii pentru a accepta alte limbaje:

    Limbă Modul
    /C++ CDT
    Fortran Photoran
    Perl EPIC
    PHP PDT
    JavaScript JSEclipse
    Piton PyDev (Eclipse) ( engleză)
    Rubin RDT
    1C V8 1C: Enterprise DT

    Pentru a dezvolta și obține rapoarteși dezvoltarea de aplicații analitice BI în Eclipse există proiectul BIRT ( engleză).

    Eclipse are o funcționalitate încorporată pentru instalarea și actualizarea modulelor prin Internet.

    Aplicații populare bazate pe SWT și RCP

    Arhitecturi și sisteme acceptate

    • HP-UX (HP9000/Motif)
    • Linux (x86, x86-64, PPC, IA-64 /GTK 2)
    • Linux (x86/Motif)
    • Solaris 8 (SPARC/GTK 2, Motiv)
    • QNX (x86/Photon)
    • Microsoft Windows (Win32, Win64)
    • Android (ARM)

    Scrieți o recenzie despre articolul „Eclipse (mediu de dezvoltare)”

    Note

    1. Darryl K. Taft.(engleză). ??? (20 mai 2005). Consultat la 3 septembrie 2009. .
    2. (engleză). Site oficial. Consultat la 3 septembrie 2009. .
    3. (engleză). Consultat la 3 septembrie 2009. .
    4. (engleză). Site oficial. Consultat la 3 septembrie 2009. .
    5. (engleză). Documentația Eclipse. Site oficial. Consultat la 3 septembrie 2009. .
    6. (engleză). Documentația Eclipse. Site oficial. Consultat la 3 septembrie 2009. .
    7. (engleză). Site oficial. Consultat la 3 septembrie 2009. .
    8. Serghei Golubev.. ??? (15 noiembrie 2005). Consultat la 3 septembrie 2009. .
    9. (engleză). Site oficial. Consultat la 3 septembrie 2009. .
    10. (engleză). Site oficial. Consultat la 3 septembrie 2009. .
    11. (engleză). Site oficial. Consultat la 3 septembrie 2009. .
    12. (engleză). Consultat la 3 septembrie 2009. .
    13. Vladimir Paramonov.. Compulenta (31 ianuarie 2007). Preluat la 3 septembrie 2009.
    14. (engleză). Site oficial. Consultat la 3 septembrie 2009. .
    15. (engleză). Site oficial. Consultat la 3 septembrie 2009. .
    16. (engleză). Site oficial. Consultat la 3 septembrie 2009. .
    17. (engleză). Site oficial. Consultat la 3 septembrie 2009. .
    18. (engleză). Site oficial. Consultat la 3 septembrie 2009. .
    19. (engleză). Site oficial. Consultat la 3 septembrie 2009. .
    20. . Site oficial. .
    21. (engleză). Site oficial. Consultat la 3 septembrie 2009. .
    22. (engleză). Site oficial. Consultat la 3 septembrie 2009. .
    23. (engleză). Site oficial. Consultat la 3 septembrie 2009. .
    24. (engleză). Site oficial. Consultat la 3 septembrie 2009. .
    25. (engleză). Site oficial. Consultat la 3 septembrie 2009. .
    26. (engleză). Site oficial. Consultat la 3 septembrie 2009. .
    27. (engleză). Site oficial. Consultat la 3 septembrie 2009. .
    28. (engleză). Site oficial. Consultat la 3 septembrie 2009. .
    29. (engleză). Site oficial. Consultat la 3 septembrie 2009. .
    30. (engleză). Site oficial. Consultat la 3 septembrie 2009. .
    31. (engleză). Site oficial (iunie 2007). Consultat la 3 septembrie 2009. .
    32. (engleză). Site oficial. Consultat la 3 septembrie 2009. .
    33. (engleză). Site oficial. Consultat la 3 septembrie 2009. .
    34. (engleză). Site oficial. Consultat la 3 septembrie 2009. .
    35. (engleză). Site oficial. Consultat la 3 septembrie 2009. .
    36. (engleză). Site oficial. Consultat la 24 martie 2011. .
    37. (engleză). . Consultat la 3 septembrie 2009. .
    38. (engleză). Site oficial. Consultat la 3 septembrie 2009. .
    39. (engleză). ???. Consultat la 3 septembrie 2009. .
    40. Josh Fet.(rusă). ??? (iunie 2008). - Instalarea PyDev în Eclipse. Consultat la 3 septembrie 2009. .
    41. (engleză). ???. Consultat la 3 septembrie 2009. .
    42. (10.04.2015).
    43. (rusă). ???. Consultat la 3 septembrie 2009. .
    44. (engleză). . Consultat la 3 septembrie 2009. .
    45. (engleză). . Consultat la 3 septembrie 2009. .
    46. (engleză). ???. Consultat la 3 septembrie 2009. .
    47. (engleză). ???. Consultat la 3 septembrie 2009. .
    48. (engleză) (link inaccesibil - poveste) . ???. Consultat la 3 septembrie 2009. .
    49. (engleză). ???. Preluat la 3 septembrie 2009.

    Legături

    • (engleză)
    • (engleză)
    • (Engleză) - Documentație pentru Eclipse SDK
    • (engleză)
    • (engleză)
    • (Engleză) - Platformă avansată pentru clienți
    • (engleză)
    • (engleză) IBM
    • IBM (rusă)
    • (rusă) IBM
    • (rusă)
    • (Engleză) - opțiuni de distribuție Eclipse la cheie pentru diferite domenii de dezvoltare (Expert Java, Desktop Java, Server Java, Mobile Java etc.)
    • (rusă) Art. Lebedev Studio

    Un fragment care descrie Eclipse (mediu de dezvoltare)

    A doua zi, Rostov a însoțit-o pe Prințesa Maria la Iaroslavl și câteva zile mai târziu a plecat însuși la regiment.

    Scrisoarea Soniei către Nicolae, care era împlinirea rugăciunii sale, a fost scrisă din Trinity. Aceasta este ceea ce a cauzat-o. Gândul că Nicolae se căsătorește cu o mireasă bogată o ocupa din ce în ce mai mult pe bătrâna contesă. Ea știa că Sonya era principalul obstacol în acest sens. Și viața Soniei în ultima vreme, mai ales după scrisoarea lui Nikolai, care descrie întâlnirea sa la Bogucharovo cu Prințesa Marya, a devenit din ce în ce mai grea în casa contesei. Contesa nu a ratat nicio ocazie de a-i face un aluzie ofensivă sau crudă Sonyei.
    Dar, cu câteva zile înainte de a pleca din Moscova, emoționată și emoționată de tot ce se întâmpla, Contesa, chemând-o pe Sonya, în loc de reproșuri și cereri, s-a întors spre ea cu lacrimi și s-a rugat ca ea, jertfindu-se, să răsplătească pentru tot, ceea ce s-a făcut pentru ea a fost să-și rupă legăturile cu Nikolai.
    „Nu voi fi în pace până când nu-mi dai această promisiune.”
    Sonya a izbucnit în plâns isteric, a răspuns prin suspine că va face totul, că este pregătită pentru orice, dar nu a făcut o promisiune directă și în sufletul ei nu a putut decide ce i se cere. A trebuit să se sacrifice pentru fericirea familiei care a hrănit-o și a crescut-o. Să se sacrifice pentru fericirea altora era obiceiul Sonyei. Poziția ei în casă era de așa natură încât doar pe calea sacrificiului își putea arăta virtuțile și era obișnuită și iubită să se sacrifice. Dar mai întâi, în toate actele de sacrificiu de sine, ea și-a dat seama cu bucurie că, sacrificându-se, și-a ridicat astfel valoarea în ochii ei și în ochii celorlalți și a devenit mai demnă de Nicolas, pe care l-a iubit cel mai mult în viață; dar acum sacrificiul ei trebuia să constea în renunțarea la ceea ce pentru ea constituia întreaga răsplată a sacrificiului, întregul sens al vieții. Și pentru prima oară în viața ei, a simțit amărăciune față de acei oameni care o ajutaseră pentru a o chinui mai dureros; Am simțit invidie pe Natasha, care nu a trăit niciodată așa ceva, nu a avut niciodată nevoie de sacrificii și i-a forțat pe alții să se sacrifice și totuși era iubită de toată lumea. Și pentru prima dată, Sonya a simțit cum, din dragostea ei liniștită și pură pentru Nicolas, a început deodată să crească un sentiment pasional, care stătea deasupra regulilor, virtuții și religiei; iar sub influența acestui sentiment, Sonya involuntar, învățată de viața ei dependentă de secret, i-a răspuns contesei în general, cuvinte vagi, a evitat conversațiile cu ea și a hotărât să aștepte o întâlnire cu Nikolai pentru ca în această întâlnire să nu se elibereze. ea, dar, dimpotrivă, se asociază pentru totdeauna cu el.
    Necazurile și groaza din ultimele zile ale șederii soților Rostovi la Moscova au înecat gândurile întunecate care o apăsau. Era bucuroasă să găsească mântuirea de la ei în activități practice. Dar când a aflat despre prezența prințului Andrei în casa lor, în ciuda toată mila sinceră pe care a simțit-o pentru el și Natasha, a copleșit-o un sentiment vesel și superstițios că Dumnezeu nu a vrut ca ea să fie despărțită de Nicolas. Ea știa că Natasha îl iubea pe un prinț Andrei și nu înceta să-l iubească. Ea știa că acum, adunați laolaltă în condiții atât de groaznice, se vor iubi din nou și că atunci Nicholas, din cauza rudeniei care va fi între ei, nu se va putea căsători cu prințesa Marya. În ciuda oroarei a tot ceea ce s-a întâmplat în ultimele zile și în primele zile de călătorie, acest sentiment, această conștientizare a intervenției providenței în treburile ei personale i-au făcut plăcere pe Sonya.
    Rostovenii și-au petrecut prima zi în călătoria lor la Trinity Lavra.
    În hotelul Lavra, rostovenilor li s-au repartizat trei camere mari, dintre care una era ocupată de principele Andrei. Rănitul era mult mai bine în ziua aceea. Natasha stătea cu el. În camera alăturată, contele și contesa stăteau, discutând respectuos cu rectorul, care își vizitase vechii cunoscuți și investitori. Sonya stătea chiar acolo și era chinuită de curiozitatea despre ce vorbeau prințul Andrei și Natasha. Ea a ascultat sunetele vocilor lor din spatele ușii. Ușa camerei prințului Andrei s-a deschis. Natasha a ieșit de acolo cu o față emoționată și, neobservând călugărul care s-a ridicat în întâmpinarea ei și i-a apucat mâneca largă a mâinii drepte, s-a apropiat de Sonya și i-a luat mâna.
    - Natasha, ce faci? Vino aici, spuse contesa.
    Natasha a venit sub binecuvântare, iar starețul a sfătuit să se îndrepte către Dumnezeu și sfântul său pentru ajutor.
    Imediat după plecarea starețului, Nashata a luat mâna prietenei ei și a mers cu ea în camera goală.
    - Sonya, nu? va fi viu? - a spus ea. - Sonya, ce fericită sunt și cât de nefericită sunt! Sonya, draga mea, totul este ca înainte. Dacă ar fi fost în viață. Nu poate... pentru că, pentru că... asta... - Și Natasha a izbucnit în plâns.
    - Deci! Ştiam eu! Slavă Domnului”, a spus Sonya. - Va fi viu!
    Sonya nu era mai puțin încântată decât prietena ei - atât de frica și durerea ei, cât și de gândurile ei personale care nu au fost exprimate nimănui. Ea, plângând, a sărutat-o ​​și a consolat-o pe Natasha. „Dacă ar fi în viață!” - se gândi ea. După ce au plâns, au vorbit și și-au șters lacrimile, ambii prieteni s-au apropiat de ușa Prințului Andrei. Natasha deschise cu grijă ușile și privi în cameră. Sonya stătea lângă ea la ușa întredeschisă.
    Prințul Andrei stătea sus pe trei perne. Fața lui palidă era calmă, avea ochii închiși și puteai vedea cum respira uniform.
    - O, Natasha! – Sonya aproape că țipă brusc, apucându-l de mână pe vărul ei și retrăgându-se de la ușă.
    - Ce? Ce? – a întrebat Natasha.
    „Acesta este, aia, aia...”, a spus Sonya cu o față palidă și buzele tremurânde.
    Natasha închise ușa în liniște și se duse cu Sonya la fereastră, neînțelegând încă ce îi spuneau.
    „Îți amintești”, a spus Sonya cu o față înspăimântată și solemnă, „îți amintești când te-am căutat în oglindă... La Otradnoye, de Crăciun... Îți amintești ce am văzut?...
    - Da, da! - a spus Natasha, deschizând larg ochii, amintindu-și vag că Sonya a spus atunci ceva despre Prințul Andrei, pe care l-a văzut întins.
    - Vă amintiți? – a continuat Sonya. „Am văzut-o atunci și le-am spus tuturor, atât ție, cât și Dunyasha.” „Am văzut că stătea întins pe pat”, a spus ea, făcând un gest cu mâna cu degetul ridicat la fiecare detaliu, „și că închisese ochii și că era acoperit cu o pătură roz și că își încrucișase mâinile”, a spus Sonya, asigurându-se că, în timp ce descria detaliile pe care le-a văzut acum, aceleași detalii le-a văzut și atunci. Ea nu a văzut nimic atunci, dar a spus că a văzut ce i-a venit în cap; dar ceea ce a venit atunci i s-a părut la fel de valabil ca orice altă amintire. Ceea ce a spus ea atunci, că el s-a uitat înapoi la ea și a zâmbit și era acoperit cu ceva roșu, ea nu numai că și-a amintit, dar era ferm convinsă că și atunci a spus și a văzut că el era acoperit cu o pătură roz, exact roz, și că avea ochii închiși.
    „Da, da, exact în roz”, a spus Natasha, care acum părea să-și amintească și ceea ce s-a spus în roz, și în aceasta a văzut principala neobișnuit și misterul predicției.
    — Dar ce înseamnă asta? – spuse Natasha gânditoare.
    - Oh, nu știu cât de extraordinare sunt toate acestea! - spuse Sonya, strângându-se de cap.
    Câteva minute mai târziu, a sunat prințul Andrei, iar Natașa a intrat să-l vadă; iar Sonya, trăind o emoție și o tandrețe pe care rareori le trăise, rămase la fereastră, gândindu-se la natura extraordinară a ceea ce se întâmplase.
    În această zi a existat ocazia de a trimite scrisori armatei, iar contesa a scris o scrisoare fiului ei.
    — Sonya, spuse contesa, ridicând capul din scrisoare în timp ce nepoata ei trecea pe lângă ea. – Sonya, nu vrei să-i scrii lui Nikolenka? – spuse contesa cu o voce liniştită, tremurândă, iar în privirea ochilor ei obosiţi, privind prin ochelari, Sonya a citit tot ce a înţeles contesa în aceste cuvinte. Această privire exprima rugăciune, teamă de refuz, rușine pentru a fi nevoit să ceară și disponibilitatea pentru o ură ireconciliabilă în caz de refuz.
    Sonya se apropie de contesă și, îngenuncheată, îi sărută mâna.
    — O să scriu, mamă, spuse ea.
    Sonya a fost înmuiată, încântată și atinsă de tot ce s-a întâmplat în acea zi, în special de performanța misterioasă de ghicire pe care tocmai a văzut-o. Acum că știa că, cu ocazia reînnoirii relației Natasha cu Prințul Andrei, Nikolai nu se putea căsători cu Prințesa Marya, a simțit cu bucurie revenirea acelei dispoziții de sacrificiu de sine în care iubea și era obișnuită să trăiască. Și cu lacrimi în ochi și cu bucuria de a realiza o faptă generoasă, ea, întreruptă de câteva ori de lacrimi care i-au întunecat ochii negri, catifelați, a scris acea scrisoare înduioșătoare, a cărei primire l-a uimit atât de mult pe Nikolai.

    La corpul de gardă unde a fost dus Pierre, ofițerul și soldații care l-au luat l-au tratat cu ostilitate, dar în același timp cu respect. Se putea simți încă în atitudinea lor față de el îndoială cu privire la cine este (dacă era o persoană foarte importantă) și ostilitate din cauza luptei lor personale încă proaspete cu el.
    Dar când, în dimineața unei alte zile, a venit tura, Pierre a simțit că pentru noua gardă - pentru ofițeri și soldați - nu mai avea sensul pe care îl avea pentru cei care l-au luat. Și într-adevăr, în acest om mare și gras în caftan de țăran, paznicii de a doua zi nu l-au mai văzut pe acel om viu care s-a luptat atât de disperat cu tâlharul și cu soldații de escortă și a spus o frază solemnă despre salvarea copilului, dar au văzut doar al șaptesprezecelea dintre cei ținuți din anumite motive, din ordinul celor mai înalte autorități, rușii capturați. Dacă era ceva special la Pierre, era doar înfățișarea lui timidă, atent gânditoare și franceză, în care, surprinzător pentru francezi, vorbea bine. În ciuda faptului că în aceeași zi Pierre a fost conectat cu alți suspecți suspecți, deoarece camera separată pe care o ocupa a fost nevoie de un ofițer.
    Toți rușii ținuți cu Pierre erau oameni de cel mai jos rang. Și toți, recunoscându-l pe Pierre drept maestru, l-au ocolit, mai ales că vorbea franceză. Pierre a auzit cu tristețe ridicolizarea lui însuși.
    În seara următoare, Pierre a aflat că toți acești prizonieri (și probabil inclusiv el însuși) urmau să fie judecați pentru incendiere. În a treia zi, Pierre a fost dus cu alții într-o casă în care stăteau un general francez cu mustață albă, doi colonei și alți francezi cu eșarfe pe mâini. Lui Pierre, împreună cu alții, i s-au pus întrebări despre cine era el, cu precizia și certitudinea cu care sunt tratați de obicei inculpații, presupus depășind slăbiciunile umane. unde era? in ce scop? etc.
    Aceste întrebări, lăsând deoparte esența cauzei vieții și excluzând posibilitatea dezvăluirii acestei esențe, la fel ca toate întrebările adresate în instanțe, au avut scopul doar de a înlocui șanțul de-a lungul căruia judecătorii doreau să curgă răspunsurile inculpatului și să-l conducă către cel dorit. scop, adică la acuzație. De îndată ce a început să spună ceva care nu satisface scopul acuzației, au luat un șanț, iar apa putea curge oriunde dorea. În plus, Pierre a experimentat același lucru pe care îl trăiește un inculpat în toate instanțele: nedumerire de ce i-au fost puse toate aceste întrebări. Simțea că acest truc de a introduce un șanț era folosit doar din condescendență sau, parcă, din politețe. Știa că este în puterea acestor oameni, că numai puterea l-a adus aici, că numai puterea le dă dreptul de a cere răspunsuri la întrebări, că singurul scop al acestei întâlniri era să-l acuze. Și, prin urmare, din moment ce era putere și era dorința de a acuza, nu era nevoie de trucul întrebărilor și al procesului. Era evident că toate răspunsurile trebuiau să ducă la vinovăție. Întrebat ce face când l-au luat, Pierre a răspuns cu o tragedie că duce un copil la părinții săi, qu"il avait sauve des flammes [pe care l-a salvat de la flăcări]. - De ce s-a luptat cu tâlharul Pierre a răspuns, că apăra o femeie, că a proteja o femeie insultată este datoria oricărui om, că... A fost oprit: asta nu a mers la obiect de ce a luat foc , unde l-au văzut martorii El a răspuns că va vedea ce se întâmplă în Moscova prima intrebare la care a spus ca nu vrea sa raspunda din nou ca nu poate spune asta.
    - Scrie-l, asta nu e bine. „Este foarte rău”, i-a spus cu severitate generalul cu o mustață albă și o față roșie și roșie.
    În a patra zi, incendiile au început pe Zubovsky Val.
    Pierre și alți treisprezece au fost duși la Krymsky Brod, la trăsurile casei unui negustor. Mergând pe străzi, Pierre se sufoca din cauza fumului, care părea să stea deasupra întregului oraș. Incendiile erau vizibile din diferite direcții. Pierre nu înțelegea încă semnificația arderii Moscovei și privea aceste incendii cu groază.
    Pierre a mai stat patru zile în căsuța unei case de lângă Crimeea Brod, iar în aceste zile a aflat din conversația soldaților francezi că toți cei ținuți aici se așteptau la decizia mareșalului în fiecare zi. Ce mareșal, Pierre nu a putut afla de la soldați. Pentru soldat, evident, mareșalul părea a fi cea mai înaltă și oarecum misterioasă verigă a puterii.
    Aceste prime zile, până pe 8 septembrie, ziua în care prizonierii au fost duși la interogatoriu secundar, au fost cele mai dificile pentru Pierre.

    X
    Pe 8 septembrie, un ofițer foarte important a intrat în hambar pentru a-i vedea pe prizonieri, judecând după respectul cu care îl tratau paznicii. Acest ofițer, probabil un ofițer de stat major, cu o listă în mâini, a făcut un apel nominal al tuturor rușilor, strigându-l pe Pierre: celui qui n "avoue pas son nom [cel care nu-și spune numele]. Și, indiferent și Uitându-se leneș la toți prizonierii, a ordonat gardianului ca ofițerul să-i îmbrace și să-i curețe înainte de a-i conduce la mareșal, o oră mai târziu, a sosit o companie de soldați, iar Pierre și ceilalți treisprezece au fost duși la Câmpul Fecioarei. Ziua era senină, însorită după ploaie, iar aerul era neobișnuit de limpede, ca în ziua în care Pierre a fost scos din pază de la Zubovsky Val se vedea, dar coloane de fum se ridicau din toate părțile și toată Moscova, tot ce putea vedea Pierre, era o singură conflagrație. Din toate părțile se vedeau terenuri virane cu sobe și hornuri și, uneori, zidurile arse ale caselor de piatră strâns la incendii și nu a recunoscut cartierele familiare ale orașului În unele locuri se vedea Kremlinul, nedistrus, alb de departe cu turnurile sale și Ivan cel Mare. În apropiere, cupola Mănăstirii Novodevichy strălucea vesel, iar de acolo se auzea deosebit de tare clopotul Evangheliei. Acest anunț ia amintit lui Pierre că era duminică și sărbătoarea Nașterii Fecioarei Maria. Dar se părea că nu era nimeni care să sărbătorească această sărbătoare: peste tot era devastație din cauza incendiului, iar printre rușii erau doar ocazional oameni zdrențuiți, înspăimântați, care se ascundeau la vederea francezilor.
    Evident, cuibul rusesc a fost devastat și distrus; dar în spatele distrugerii acestei ordini de viață rusești, Pierre a simțit inconștient că peste acest cuib ruinat s-a instituit propria lui, complet diferită, dar fermă ordine franceză. A simțit asta din vederea acelor soldați care mergeau veseli și veseli, în rânduri regulate, care îl escortau cu alți criminali; a simțit asta din vederea unui oficial important francez într-o trăsură dublă, condusă de un soldat, care se îndrepta spre el. A simțit asta din sunetele vesele ale muzicii regimentare care veneau din partea stângă a câmpului și mai ales a simțit și a înțeles din lista pe care ofițerul francez vizitator a citit-o azi dimineață, strigând prizonierii. Pierre a fost luat de niște soldați, dus într-un loc sau altul cu alte zeci de oameni; părea că ar putea să uite de el, să-l amestece cu alții. Dar nu: răspunsurile date în timpul interogatoriului i-au revenit sub forma numelui său: celui qui n "avoue pas son nom. Și sub acest nume, de care se temea lui Pierre, el era acum condus undeva, cu neîndoielnic încredere. scrise pe fețele lor că toți ceilalți prizonieri și el erau cei de care aveau nevoie și că erau conduși acolo unde trebuia, Pierre se simțea ca o așchie neînsemnată prinsă în roțile unei mașini necunoscute de el, dar care funcționează corect. .
    Pierre și alți criminali au fost aduși la partea dreaptă Câmpul Fecioarei, nu departe de mănăstire, până la o casă mare albă cu o grădină imensă. Aceasta era casa prințului Șcherbatov, în care Pierre îl vizitase adesea pe proprietar și în care acum, după cum a aflat din conversația soldaților, era staționat mareșalul, ducele de Eckmuhl.
    Au fost conduși în pridvor și unul câte unul au fost duși în casă. Pierre a fost adus pe locul șase. Printr-o galerie de sticlă, un vestibul și o anticamera, cunoscută lui Pierre, a fost condus într-un birou lung și joase, la ușa căruia stătea un adjutant.
    Davout stătea la capătul camerei deasupra mesei, cu ochelari la nas. Pierre s-a apropiat de el. Davout, fără să ridice ochii, se pare că se descurca cu niște hârtie întinsă în fața lui. Fără să ridice ochii, a întrebat în liniște:
    – Qui etes vous? [Cine eşti tu?]
    Pierre a tăcut pentru că nu era în stare să rostească cuvinte. Pentru Pierre, Davout nu era doar un general francez; pentru Pierre Davout, el era un om cunoscut pentru cruzimea sa. Privind chipul rece al lui Davout, care, ca un profesor strict, accepta să aibă deocamdată răbdare și să aștepte un răspuns, Pierre simțea că fiecare secundă de întârziere l-ar putea costa viața; dar nu știa ce să spună. Nu a îndrăznit să spună ce a spus în timpul primului interogatoriu; a-și dezvălui rangul și poziția era și periculos și rușinos. Pierre a tăcut. Dar înainte ca Pierre să poată decide ceva, Davout își ridică capul, își ridică ochelarii pe frunte, miji ochii și se uită atent la Pierre.
    — Îl cunosc pe omul ăsta, spuse el cu o voce măsurată, rece, evident calculată să-l sperie pe Pierre. Frigul care îi curgese anterior pe spatele lui Pierre îl cuprinse de cap ca pe un viciu.
    – Mon general, vous ne pouvez pas me connaitre, je ne vous ai jamais vu... [Nu ați putut să mă cunoașteți, generale, nu v-am văzut niciodată.]
    „C"est un espion russe, [Acesta este un spion rus,"] îl întrerupse Davout, adresându-se unui alt general care se afla în cameră și pe care Pierre nu-l observase a vorbit brusc repede.
    — Nu, monseniore, spuse el, amintindu-și brusc că Davout era duce. - Non, Monseigneur, vous n"avez pas pu me connaitre. Je suis un officier militinaire et je n"ai pas quitte Moscow. [Nu, Înălțimea Voastră... Nu, Înălțimea Voastră, nu m-ați putut cunoaște. Sunt ofițer de poliție și nu am părăsit Moscova.]
    - Numele tău? [Numele tău?] – repetă Davout.
    - Besouhof. [Bezuhov.]
    – Qu"est ce qui me prouvera que vous ne mentez pas? [Cine îmi va dovedi că nu minți?]
    - Monseniore! [Alteța Voastră!] - strigă Pierre cu o voce nu jignită, dar rugătoare.
    Davout ridică ochii și se uită atent la Pierre. Se priviră unul la altul câteva secunde, iar această privire l-a salvat pe Pierre. În această perspectivă, în afară de toate condițiile de război și proces, între acești doi oameni s-a stabilit o relație umană. Amândoi în acel minut au experimentat vag nenumărate lucruri și și-au dat seama că amândoi erau copii ai umanității, că erau frați.
    La prima vedere pentru Davout, care a ridicat capul doar din lista lui, unde treburile umane și viața erau numite numere, Pierre era doar o împrejurare; și, neținând seama de fapta rea ​​asupra conștiinței sale, Davout l-ar fi împușcat; dar acum a văzut deja o persoană în el. S-a gândit o clipă.
    – Comment me prouverez vous la verite de ce que vous me dites? [Cum îmi vei dovedi adevărul cuvintelor tale?] - spuse Davout cu răceală.
    Pierre și-a amintit de Rambal și și-a numit regimentul, numele de familie și strada pe care se afla casa.
    „Vous n”etes pas ce que vous dites, [Nu ești ceea ce spui.]”, a spus Davout din nou.
    Pierre, cu o voce tremurândă, intermitentă, a început să ofere dovezi ale adevărului mărturiei sale.
    Dar în acest moment adjutantul a intrat și a raportat ceva lui Davout.
    Davout a radiat deodată la vestea transmisă de adjutant și a început să-și închidă. Se pare că a uitat complet de Pierre.
    Când adjutantul i-a amintit de prizonier, el s-a încruntat, a dat din cap spre Pierre și a spus să fie dus. Dar Pierre nu știa unde trebuia să-l ducă: înapoi la cabină sau la locul pregătit pentru execuție, pe care i-au arătat camarazii săi în timp ce mergea de-a lungul Câmpului Fecioarelor.
    Întoarse capul și văzu că adjutantul întreabă din nou ceva.
    - Oui, fără îndoială! [Da, desigur!] - a spus Davout, dar Pierre nu știa ce este „da”.
    Pierre nu-și amintea cum, cât timp a mers și unde. El, într-o stare de totală nesimțire și plictisire, nevăzând nimic în jurul său, și-a mișcat picioarele împreună cu ceilalți până când toți s-au oprit și s-a oprit. În tot acest timp, un gând a fost în capul lui Pierre. Era gândul cine, cine, l-a condamnat în cele din urmă la moarte. Nu erau aceleași persoane care l-au interogat în comisie: niciunul dintre ei nu a vrut și, evident, nu a putut face acest lucru. Nu Davout era cel care îl privea atât de uman. Încă un minut și Davout și-ar fi dat seama că au făcut ceva greșit, dar acest moment a fost întrerupt de adjutantul care a intrat. Și acest adjutant, evident, nu voia nimic rău, dar poate că nu a intrat. Cine a fost cel care i-a executat, ucis, i-a luat viața în cele din urmă - Pierre cu toate amintirile, aspirațiile, speranțele, gândurile sale? Cine a făcut asta? Și Pierre a simțit că nu era nimeni.

    Eclipse este un mediu de dezvoltare integrat gratuit pentru aplicații modulare multiplatforme. Dezvoltat și susținut de Fundația Eclipse.

    Cele mai cunoscute aplicații bazate pe platforma Eclipse sunt diversele „IDE-uri Eclipse” pentru dezvoltarea de software într-o varietate de limbi (de exemplu, cel mai popular „IDE Java”, care a fost acceptat inițial, nu se bazează pe niciun extensii proprietare, folosește un API standard deschis pentru a accesa Platforma Eclipse).

    Eclipse a fost dezvoltat inițial de IBM ca un succesor al mediului de dezvoltare IBM VisualAge, ca standard IDE corporativ pentru dezvoltare în diferite limbi pentru platformele IBM. Potrivit IBM, proiectarea și dezvoltarea au costat 40 de milioane de dolari. Codul sursă a fost complet deschis și pus la dispoziție după ce Eclipse a fost lansat unei comunități independente de IBM pentru dezvoltare ulterioară.

    Eclipse 3.0 (2003) a adoptat specificațiile platformei de servicii OSGi ca arhitectură de rulare. Începând cu versiunea 3.0, Eclipse a încetat să mai fie un IDE monolitic care acceptă extensii și a devenit în sine o colecție de extensii. Se bazează pe framework-ul OSGi și SWT/JFace, pe baza căruia este dezvoltat următorul strat - RCP (Rich Client Platform, o platformă pentru dezvoltarea aplicațiilor client cu drepturi depline). RCP servește ca bază nu numai pentru Eclipse, ci și pentru alte aplicații RCP, cum ar fi Azureus și File Arranger. Următorul strat este Eclipse în sine, care este un set de extensii RCP - editori, panouri, perspective, modulul CVS și modulul Java Development Tools (JDT).

    Din 2006, Fundația Eclipse a coordonat o lansare simultană anuală, care are loc în iunie. Fiecare lansare include platforma Eclipse, precum și o serie de alte proiecte Eclipse.

    Beneficiile Eclipse

    Eclipse servește în primul rând ca platformă pentru dezvoltarea extensiilor, motiv pentru care a câștigat popularitate: orice dezvoltator poate extinde Eclipse cu propriile module. Există deja Instrumente de dezvoltare Java (JDT), Instrumente de dezvoltare C/C++ (CDT), dezvoltate de inginerii QNX împreună cu IBM, și instrumente pentru limbaje Ada (GNATbench, Hibachi), COBOL, FORTRAN, PHP etc. din diverse dezvoltatori. Multe extensii completează mediul Eclipse cu manageri pentru lucrul cu baze de date, servere de aplicații etc.

    Eclipse JDT (Java Development Tools) este cel mai cunoscut modul care vizează dezvoltarea de grup: mediul este integrat cu sistemele de control al versiunilor CVS, GIT în distribuția principală, și există plugin-uri pentru alte sisteme (de exemplu, Subversion, MS SourceSafe). De asemenea, oferă suport pentru comunicarea între IDE și sistemul de management al sarcinilor (eroare). Pachetul principal include suport pentru Bugzilla bug tracker și există, de asemenea, multe extensii pentru a suporta alte instrumente de urmărire (Trac, Jira etc.). Deoarece este gratuit și de înaltă calitate, Eclipse este standardul corporativ pentru dezvoltarea de aplicații în multe organizații.

    Eclipse este scris în Java, prin urmare este un produs independent de platformă, cu excepția bibliotecii SWT, care este dezvoltată pentru toate platformele comune (vezi mai jos). Biblioteca SWT este utilizată în locul bibliotecii standard Java Swing. Se bazează în întregime pe platforma de bază (sistemul de operare), care oferă o interfață de utilizator rapidă și naturală, dar uneori provoacă probleme de compatibilitate și stabilitate a aplicației pe platforme.

    Baza Eclipse este platforma rich client (RCP). Se compune din următoarele componente:

    OSGi (mediu standard de livrare a pachetelor);

    SWT (kit de instrumente portabil widget);

    JFace (buffere de fișiere, lucru cu text, editori de text);

    Mediul de lucru Eclipse (panouri, editori, proiecții, vrăjitori).

    Interfața grafică din Eclipse este scrisă folosind setul de instrumente SWT. Acesta din urmă, spre deosebire de Swing (care emulează independent controalele grafice), utilizează componentele grafice ale acestui sistem de operare. Interfața de utilizator Eclipse depinde, de asemenea, de un middleware GUI numit JFace, care facilitează construirea unei interfețe de utilizator bazate pe SWT.

    Flexibilitatea lui Eclipse este asigurată de plug-in-uri, ceea ce face posibilă dezvoltarea nu numai în Java, ci și în alte limbaje, precum C/C++, Perl, Groovy, Ruby, Python, PHP, Erlang, Component Pascal, Zonnon și altele. .

    Platforma Java

    Platforma software Java - Seria produse softwareși specificații de la Sun Microsystems, o companie anterior independentă și acum o subsidiară a Oracle Corporation, care împreună oferă un sistem pentru dezvoltarea software-ului de aplicații și încorporarea acestuia în orice software multiplatform. Java este utilizat într-o mare varietate de platforme de calcul, de la dispozitive încorporate și telefoane mobile la sfârșitul inferior până la servere de întreprindere și supercomputere la sfârșitul superior. Deși appleturile Java sunt rareori folosite pe computerele desktop, ele sunt uneori folosite pentru a îmbunătăți funcționalitatea și securitatea atunci când navighează pe World Wide Web.

    Codul programului scris în Java este convertit de Java Virtual Machine în bytecode Java. Cu toate acestea, există compilatoare bytecode pentru alte limbaje de programare, cum ar fi Ada, JavaScript, Python și Ruby. Există, de asemenea, câteva limbaje de programare noi concepute pentru a funcționa cu mașina virtuală Java. Acestea sunt limbi precum Scala, Clojure și Groovy. Sintaxa Java este în mare parte derivată din C și C++, dar capabilitățile sale orientate pe obiecte se bazează pe modelul utilizat în Smalltalk și Objective-C. Java nu are anumite constructe de nivel scăzut, cum ar fi pointerii, iar Java are, de asemenea, un model de memorie foarte simplu, în care fiecare obiect este situat pe heap și toate variabilele de tip obiect sunt referințe. Gestionarea memoriei se face prin colectarea automată integrată a gunoiului realizată de JVM.

    Proiectul Eclipse este un proiect de site web open source, supravegheat de un comitet de management de proiect (PMC) și lideri de proiect. Lucrarea se desfășoară în subproiecte care lucrează împotriva . Carta Proiectului Eclipse descrie organizarea proiectului, rolurile și responsabilitățile participanților și procesul de dezvoltare la nivel superior pentru proiect. JDT și PDE sunt instrumente plug-in pentru platforma Eclipse. Împreună, aceste trei piese formează SDK-ul Eclipse, un mediu de dezvoltare complet pentru instrumentele bazate pe Eclipse și pentru dezvoltarea Eclipse în sine.

    • Dezvoltarea proiectului Eclipse
      Lansați planuri și alte informații despre procesul de dezvoltare a Proiectului Eclipse.

    • Descărcați Eclipse SDK, Eclipse RCP, SWT, compilatorul Eclipse Java și multe altele. Puteți găsi versiunea actuală aici. Sau, descărcați cele mai recente versiuni stabile și de integrare dacă doriți să încercați cele mai noi funcții în curs de dezvoltare sau să începeți să contribuiți la proiect.

    • Răsfoiți documentația inclusă cu versiunile Eclipse Project.

    Subproiecte


    • Platforma definește setul de cadre și servicii comune care alcătuiesc în mod colectiv „integration-ware” necesare pentru a susține utilizarea a Eclipse ca model de componentă, ca platformă client bogat () și ca platformă cuprinzătoare de integrare a instrumentelor. Aceste servicii și cadre includ un model de interfață cu utilizatorul standard și un set de instrumente widget nativ portabil, un model de proiect pentru gestionarea resurselor, gestionarea automată a resurselor delta pentru compilatoare și generatoare incrementale, infrastructură de depanare independentă de limbă și infrastructură pentru gestionarea resurselor distribuite cu versiuni multi-utilizator. .

    • JDT furnizează plug-in-urile de instrumente pentru platforma care implementează un IDE Java pentru utilizatorii cu putere, care acceptă dezvoltarea oricărei aplicații Java, inclusiv plug-in-urile Eclipse. JDT adaugă noțiunea de proiecte Java și o perspectivă Java platformei Eclipse, precum și o serie de vizualizări, editori, vrăjitori, constructori și instrumente de îmbinare și refactorizare a codului. JDT-ul permite lui Eclipse să fie un mediu de dezvoltare pentru sine. Plug-in-urile JDT în sine pot fi extinse și mai mult de alți constructori de instrumente.

    • Proiectul PDE oferă o serie de vizualizări și editori care facilitează construirea de pluginuri pentru Eclipse. Folosind PDE, puteți crea fișierul manifest al plug-in-ului (plugin.xml), să specificați timpul de execuție al plug-in-ului și alte plug-in-uri necesare, să definiți punctele de extensie, inclusiv marcarea lor specifică, să asociați fișierele XML Schema cu marcarea punctului de extensie. astfel încât extensiile să poată fi validate, creați extensii pe alte puncte de extensie de plug-in etc. PDE face integrarea plug-in-urilor ușoară și distractivă.

    • Proiectul e4 este un incubator pentru dezvoltarea următoarei generații a platformei Eclipse. Misiunea proiectului e4 este de a construi o platformă de generație următoare pentru aplicații și instrumente omniprezente, bazate pe componente.