Komma igång med Eclipse-plattformen. Funktioner hos Java-programvaruplattformar. Jag vill gå med i gemenskapen. Hur man gör det

- fria ramar för utveckling av modulära plattformsoberoende applikationer.

Projektet utvecklades ursprungligen i IBM som en företags IDE-standard för utveckling på olika språk för IBM-plattformar. Projektet döptes sedan om och gavs till samhället för vidare utveckling.

Först av allt, komplett Java IDE, inriktat på grupputveckling, utrustad med verktyg för att arbeta med versionskontrollsystem (CVS-stöd ingår i Eclipse-distributionen, flera versioner av SVN-moduler utvecklas aktivt, det finns stöd för VSS och andra). På grund av gratis I många organisationer är Eclipse företagsstandarden för applikationsutveckling.

Andra mötet- fungera som en plattform för att utveckla nya tillägg (vilket är anledningen till att det har blivit populärt - vilken utvecklare som helst kan utöka Eclipse med sina egna moduler). Så blev de C/C++ utvecklingsverktyg(CDT), utvecklad av QNX-ingenjörer tillsammans med IBM, COBOL, FORTRAN, PHP-verktyg från olika utvecklare. Många tillägg kompletterar Eclipse med chefer för att arbeta med databaser, applikationsservrar, etc.

Sedan version 3.0 har Eclipse blivit en samling tillägg snarare än en monolitisk IDE som stöder tillägg. Den är baserad på ramverket OSGi och SWT/JFace, utifrån vilket nästa lager har utvecklats - en plattform för att utveckla fullfjädrade klientapplikationer RCP (Rich Client Platform - (engelska rich-client applications). RCP-plattformen fungerar som grund för RCP-applikationer som Azareus och File Arranger. Nästa lager är Eclipse-plattformen, som är en uppsättning RCP-tillägg - redigerare, paneler, perspektiv, CVS-modulen och Java Development Tools (JDT)-modulen.

Skrivet på Java, därför är det en plattformsoberoende produkt, med undantag för SWT-biblioteket, som är utvecklat för alla vanliga plattformar. SWT-biblioteket används istället för den "långsamma" Swing och är helt beroende av den underliggande plattformen (operativsystemet), vilket säkerställer hastighet och naturligt utseende användargränssnitt.

Grunden för Eclipse är den rika klientplattformen (RCP). Den består av följande komponenter:


  • OSGi (standardpaketleveransmiljö);
  • SWT (portable widget toolkit);
  • JFace (filbuffertar, arbetar med text, );
  • Eclipse arbetsmiljö (paneler, redaktörer, projektioner, guider).
  • Det grafiska gränssnittet är skrivet med hjälp av SWT-verktygslådan. Den sistnämnda, till skillnad från Swing (som bara emulerar individuella grafiska element av plattformen som används), faktiskt använder grafiska komponenter av detta system. Eclipse-användargränssnittet är också beroende av en GUI-mellanvara som heter JFace, vilket gör det enkelt att bygga ett SWT-baserat användargränssnitt.

    Flexibilitet säkerställs av plug-ins, vilket gör det möjligt att utveckla inte bara i Java, utan även på andra språk, såsom C/C++, Perl, Ruby, Python, PHP, ErLang med flera.

    Lokalisering

    Sedan version 3.1.1, ett språkpaket för Russification har släppts. Översatt till ryska som GUI och dokumentation.

    Det finns ett antal gratis och kommersiella moduler tillgängliga för miljön. Ramverket utvecklades ursprungligen för Java-språket, men det finns nu ett flertal tillägg för att stödja andra språk, som t.ex.

    • C/C++ - CDT Eclipses C/C++ utvecklingsverktyg
    • Perl - EPIC-modul, Eclipse Perl-integration
    • PHP - PDT PHP utvecklingsverktyg
    • JavaScript - JS Eclipse Java skriptplugin för Eclipse-miljön
    • Python - Pydev, Python Development Environment
    • Ruby - RDT, Ruby Development Tools

    Det finns även moduler för att skapa grafiska gränssnitt.

    Att utveckla och ta emot rapporter och utveckla analytiska BI-applikationer finns sv:BIRT_Projec t.

    Det finns en inbyggd funktion för att installera och uppdatera moduler via .

    Aptana(aptana.com) - Eclipse-distribution och plugin som stöder utveckling med använder JavaScript(alla huvudsakliga JS Ajax-bibliotek ingår i distributionen), HTML, CSS, Ruby on rails, Adobe AIR.

    Lämna din kommentar!

    ) specifikationer för tjänsteplattformen OSGi valdes som arkitektur för runtime-miljön. Sedan version 3.0 har Eclipse upphört att vara en monolitisk IDE som stöder tillägg, och har själv blivit en samling tillägg. Den är baserad på OSGi-ramverket och SWT/JFace, utifrån vilket nästa lager utvecklades - RCP (Rich Client Platform, en plattform för att utveckla fullfjädrade klientapplikationer). RCP fungerar som bas inte bara för Eclipse, utan också för andra RCP-applikationer, såsom Azureus och File Arranger. Nästa lager är själva Eclipse, som är en uppsättning RCP-tillägg - redigerare, paneler, perspektiv, en CVS-modul och en Java Development Tools (JDT)-modul.

    Sedan 2006 har Eclipse Foundation koordinerat en årlig simultan release, som äger rum i juni. Varje utgåva inkluderar Eclipse-plattformen samt ett antal andra Eclipse-projekt.

    Släpp datum Plattformsversion Projekt
    Neon 22 juni 2016 4.6
    Mars 25 juni 2015 4.5
    Luna 6 juni 2014 4.4
    Kepler 26 juni 2013 4.3
    Juno 27 juni 2012 3.8 och 4.2
    Indigo 22 juni 2011 3.7
    Helios 23 juni 2010 3.6
    Galileo 24 juni 2009 3.5
    Ganymedes 25 juni 2008 3.4
    Europa 29 juni 2007 3.3
    Callisto 30 juni 2006 3.2
    Eclipse 3.1 28 juni 2005 3.1
    Eclipse 3.0 28 juni 2004 3.0

    Fördelar

    Eclipse fungerar främst som en plattform för att utveckla tillägg, vilket är anledningen till att den har vunnit popularitet: vilken utvecklare som helst kan utöka Eclipse med sina egna moduler. Det finns redan Java Development Tools (JDT), C/C++ Development Tools (CDT), utvecklade av QNX-ingenjörer tillsammans med IBM, och verktyg för språken Ada (GNATbench, Hibachi), COBOL, FORTRAN, PHP, X10 (X10DT) ), etc. från olika utvecklare. En mängd olika tillägg kompletterar Eclipse-miljön med chefer för att arbeta med databaser, applikationsservrar och mer.

    Eclipse JDT (Java Development Tools) är den mest kända modulen som syftar till grupputveckling: miljön är integrerad med versionskontrollsystem - CVS, GIT i huvuddistributionen, det finns plugins för andra system (till exempel Subversion,). Erbjuder även stöd för kommunikation mellan IDE och uppgifts(fel)hanteringssystemet. Huvuddistributionen inkluderar stöd för Bugzilla buggspårare, och det finns också många tillägg för att stödja andra spårare (Trac, Jira, etc.). På grund av gratis och Hög kvalitet,Eclipse är företagsstandarden för applikationsutveckling i många organisationer.

    Eclipse är skrivet i Java, därför är det en plattformsoberoende produkt, med undantag för SWT-biblioteket, som är utvecklat för alla vanliga plattformar (se nedan). SWT-biblioteket används istället för standard Java Swing-biblioteket. Det förlitar sig helt på den underliggande plattformen (operativsystemet), som ger ett snabbt och naturligt användargränssnitt, men ibland orsakar kompatibilitets- och programstabilitetsproblem över plattformar.

    Arkitektur

    Grunden för Eclipse är Rich Client Platform (RCP). rik klientplattform). Den består av följande komponenter:

  • OSGi (standardmiljö för leverans av kit) buntar));
  • SWT (portable widget toolkit);
  • JFace (filbuffertar, arbeta med text, textredigerare);
  • Eclipse arbetsmiljö (paneler, redaktörer, projektioner, guider).
    • Aperi (från lat. öppen) - system med öppen källkod för hantering av nätverkslagringssystem.
    • BIRT (Business Intelligence and Reporting Tools) - Webb- och PDF-rapporter.
    • DTP (Data Tools Platform) - utveckling av datacentrerade system, särskilt data i relationsdatabaser; hantera program med ett stort antal kontakter.
    • GEF (Graphical Editing Framework) är ett ramverk för att bygga inbyggda grafiska redigerare.
    • Jazz är en klient-serverplattform för interaktion mellan utvecklare under utvecklingen av ett projekt (inkluderar chatt, händelselogg, etc.), byggd ovanpå Eclipse (en del av IBM Rational-produktlinjen).
    • Modellering .
    • Verktyg .
    • TPTP (Test & Performance Tools Platform) - utveckling av testverktyg, - debuggers, profilerare m.m.
    • VE (Visual Editor Project) - utveckling av GUI-verktyg.
    • WTP (Web Tools Platform Project) - J2EEyg:
      • HTML, JavaScript, CSS, JSP, SQL, XML, DTD, XSD och WSDL-redigerare;
      • grafiska redigerare för XSD och WSDL;
      • Web Services Wizards och Explorer, WS-I Test Tools;
      • verktyg för att komma åt och bygga frågor och databasmodeller.
    • Eclipse Communication Framework (ECF) syftar till att skapa kommunikationsapplikationer på Eclipse-plattformen.
    • Utvecklingsprojekt programvara för enheter (DSDP).
    • Parallel Tools Platform (PTP) tillhandahåller en bärbar, skalbar, standardbaserad parallell verktygsplattform som kommer att underlätta integrationen av verktyg som är specifika för parallella datorarkitekturer.
    • Embedded Enhanced Client Platform (eRCP) - utformad för att utöka RCP till inbäddade enheter. eRCP inkluderar en uppsättning komponenter som är en delmängd av RCP-komponenter. Det låter dig överföra applikationsmodellen som används på stationära datorer till andra enheter.
    • DLTK (Dynamic Languages ​​Toolkit) är en integrerad utvecklarmiljö för dynamiska programmeringsspråk.
    • Swordfish är en plattform för att bygga distribuerade företagsinformationssystem.

    Senaste versionerna

    Eclipse 3.3.2 (Europa Winter)

    Antalet nya delprojekt (båda förvaltade av Eclipse Foundation och tredje part) växer snabbt. Vi måste samordna ansträngningarna från ett stort antal utvecklare och föreslå gemensamma regler - "Eclipse Development Process".

    Senaste versionen släppet innehåller 21 delprojekt.

    Eclipse 3.4 (Ganymede)

    Ganymedes release (06.2008) innehåller 23 delprojekt:

    • Eclipse Project 3.4
    • Dagjämning 3.4
    • Eclipse Communication Framework Project 2.0.0
    • Eclipse Model Framework Technology
    • Eclipse Modeling Framework 2.4.0
    • Eclipse Packaging Project 1.0.0
    • Eclipse Web Tools Platform Project 3.0.0
    • Graphical Editor Framework 3.4.0
    • Ram för grafisk modellering 2.1
    • Verktyg för modellutveckling. 1.1
    • Data Tools Platform (DTP) 1.6
    • Device Software Development Platform Project Device Debugging 1.0
    • Device Software Development Platform Project Target Management 3.0
    • Buckminster Component Assembly 1.1
    • BIRT 2.3.0
    • C/C++ Development Tool (CDT) 5.0.0
    • Dynamic Languages ​​Toolkit 0.95
    • Modell till text (M2T) 0.9.0
    • Modell-till-modell-transformation (M2M)
    • Mylyn 3.0 (uppgiftsfokuserat användargränssnitt)
    • Rich Ajax Platform (RAP) 1.1
    • SOA-verktyg (STP) 1.0
    • Subversiv - SVN Team Provider
    • Målhantering 3.0
    • Test- och prestationsverktyg Plattformsprojekt 4.5.0

    Eclipse 3.5 (Galileo)

    Den senaste utgåvan av Galileo, som presenterades för allmänheten den 24 juni 2009, innehåller 33 delprojekt:

    • Eclipse Platform 3.5
    • Eclipse Project 3.5.0
    • Eclipse Modeling Framework (EMF) 2.5.0
    • Eclipse Packaging Project 1.1.0
    • Eclipse Web Tools Platform Project WTP 3.1.0 (Galileo)
    • EclipseLink Project 1.1.2
    • Tillgänglighetsverktyg Framework 0.7.0
    • Business Intelligence and Reporting Tools (BIRT)
    • C/C++ Development Tooling (CDT) 6.0
    • Dali Java Persistence Tools 2.2
    • Data Tools Platform 1.7 (Galileo)
    • Dynamic Languages ​​Toolkit 1.0
    • Equinox 3.5
    • GEF - Graphical Editor Framework 3.5.0
    • Grafisk modelleringsram 2.2.0
    • Java Workflow Tooling JWT 0.6
    • JDT - Java utvecklingsverktyg
    • M2T JET (Java Emitter Mallar) - aka JET2 M2T JET 1.0.0 (Galileo)
    • Memory Analyzer 0.8.0
    • Mobila verktyg för Java
    • Modell till text (M2T) 1.0.0
    • Modell-till-modell Transformation (M2M) Galileo Simultaneous Release
    • Övervakningsverktyg 4.6
    • Mylyn 3.2
    • PHP utvecklingsverktyg 2.1.0
    • Rich Ajax Platform 1.2
    • Riena Platform Project 1.1.0.
    • SCA Tools 2.0.0
    • SOA-verktyg 2.0
    • Källredigering 3.1.0 (Galileo)
    • Svärdfisk 0.9.0
    • Målstyrning 3.1
    • Test- och prestationsverktyg Plattformsprojekt 4.5.3
    • Testverktyg TPTP v4.6
    • Textual Modeling Framework org.eclipse.xtext
    • Verktyg för mobil Linux 0.3
    • TPTP-plattform TPTP v4.6
    • Spårnings- och profileringsverktyg TPTP v4.6

    Lokalisering

    Från och med version 3.1.1 har ett språkpaket för Russification of Eclipse släppts. Både det grafiska gränssnittet och dokumentationen har översatts till ryska.

    Moduler

    Det finns ett antal gratis och kommersiella moduler tillgängliga för Eclipse-miljön. Ramverket designades ursprungligen för Java-språket, men det finns nu många tillägg för att stödja andra språk:

    Språk Modul
    /C++ CDT
    Fortran Photran
    Perl EPISK
    PHP PDT
    JavaScript JSEclipse
    Pytonorm PyDev (Eclipse) ( engelsk)
    Rubin RDT
    1C V8 1C:Enterprise DT

    Att utvecklas och få rapporterar och utveckling av analytiska BI-applikationer i Eclipse finns BIRT Project ( engelsk).

    Eclipse har inbyggd funktionalitet för att installera och uppdatera moduler över Internet.

    Populära applikationer baserade på SWT och RCP

    Arkitekturer och system som stöds

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

    Skriv en recension om artikeln "Eclipse (utvecklingsmiljö)"

    Anteckningar

    1. Darryl K. Taft.(Engelsk) . ??? (20 maj 2005). Hämtad 3 september 2009. .
    2. (Engelsk) . Officiell sida. Hämtad 3 september 2009. .
    3. (Engelsk) . Hämtad 3 september 2009. .
    4. (Engelsk) . Officiell sida. Hämtad 3 september 2009. .
    5. (Engelsk) . Eclipse dokumentation. Officiell sida. Hämtad 3 september 2009. .
    6. (Engelsk) . Eclipse dokumentation. Officiell sida. Hämtad 3 september 2009. .
    7. (Engelsk) . Officiell sida. Hämtad 3 september 2009. .
    8. Sergey Golubev.. ??? (15 november 2005). Hämtad 3 september 2009. .
    9. (Engelsk) . Officiell sida. Hämtad 3 september 2009. .
    10. (Engelsk) . Officiell sida. Hämtad 3 september 2009. .
    11. (Engelsk) . Officiell sida. Hämtad 3 september 2009. .
    12. (Engelsk) . Hämtad 3 september 2009. .
    13. Vladimir Paramonov.. Compulenta (31 januari 2007). Hämtad 3 september 2009.
    14. (Engelsk) . Officiell sida. Hämtad 3 september 2009. .
    15. (Engelsk) . Officiell sida. Hämtad 3 september 2009. .
    16. (Engelsk) . Officiell sida. Hämtad 3 september 2009. .
    17. (Engelsk) . Officiell sida. Hämtad 3 september 2009. .
    18. (Engelsk) . Officiell sida. Hämtad 3 september 2009. .
    19. (Engelsk) . Officiell sida. Hämtad 3 september 2009. .
    20. . Officiell sida. .
    21. (Engelsk) . Officiell sida. Hämtad 3 september 2009. .
    22. (Engelsk) . Officiell sida. Hämtad 3 september 2009. .
    23. (Engelsk) . Officiell sida. Hämtad 3 september 2009. .
    24. (Engelsk) . Officiell sida. Hämtad 3 september 2009. .
    25. (Engelsk) . Officiell sida. Hämtad 3 september 2009. .
    26. (Engelsk) . Officiell sida. Hämtad 3 september 2009. .
    27. (Engelsk) . Officiell sida. Hämtad 3 september 2009. .
    28. (Engelsk) . Officiell sida. Hämtad 3 september 2009. .
    29. (Engelsk) . Officiell sida. Hämtad 3 september 2009. .
    30. (Engelsk) . Officiell sida. Hämtad 3 september 2009. .
    31. (Engelsk) . Officiell webbplats (juni 2007). Hämtad 3 september 2009. .
    32. (Engelsk) . Officiell sida. Hämtad 3 september 2009. .
    33. (Engelsk) . Officiell sida. Hämtad 3 september 2009. .
    34. (Engelsk) . Officiell sida. Hämtad 3 september 2009. .
    35. (Engelsk) . Officiell sida. Hämtad 3 september 2009. .
    36. (Engelsk) . Officiell sida. Hämtad 24 mars 2011. .
    37. (Engelsk) . . Hämtad 3 september 2009. .
    38. (Engelsk) . Officiell sida. Hämtad 3 september 2009. .
    39. (Engelsk) . ???. Hämtad 3 september 2009. .
    40. Josh Fet.(ryska). ??? (juni 2008). - Installera PyDev i Eclipse. Hämtad 3 september 2009. .
    41. (Engelsk) . ???. Hämtad 3 september 2009. .
    42. (10.04.2015).
    43. (ryska). ???. Hämtad 3 september 2009. .
    44. (Engelsk) . . Hämtad 3 september 2009. .
    45. (Engelsk) . . Hämtad 3 september 2009. .
    46. (Engelsk) . ???. Hämtad 3 september 2009. .
    47. (Engelsk) . ???. Hämtad 3 september 2009. .
    48. (Engelsk) (otillgänglig länk - berättelse) . ???. Hämtad 3 september 2009. .
    49. (Engelsk) . ???. Hämtad 3 september 2009.

    Länkar

    • (Engelsk)
    • (Engelsk)
    • (engelska) - Dokumentation för Eclipse SDK
    • (Engelsk)
    • (Engelsk)
    • (engelska) - Advanced Client Platform
    • (Engelsk)
    • (engelska) IBM
    • IBM (ryska)
    • (ryska) IBM
    • (ryska)
    • (engelska) - nyckelfärdiga distributionsalternativ för Eclipse för olika utvecklingsområden (Expert Java, Desktop Java, Server Java, Mobile Java, etc.)
    • (Rysk) Konst Lebedev Studio

    Ett utdrag som beskriver Eclipse (utvecklingsmiljö)

    Nästa dag följde Rostov prinsessan Marya till Jaroslavl och några dagar senare lämnade han själv till regementet.

    Sonyas brev till Nicholas, som var uppfyllelsen av hans bön, skrevs från Trinity. Det är detta som orsakade det. Tanken på att Nicholas skulle gifta sig med en rik brud upptog den gamla grevinnan mer och mer. Hon visste att Sonya var det främsta hindret för detta. Och Sonyas liv Nyligen, särskilt efter att Nikolajs brev, som beskrev hans möte i Bogucharovo med prinsessan Marya, blev tyngre och tyngre i grevinnans hus. Grevinnan missade inte ett enda tillfälle att ge en offensiv eller grym hint till Sonya.
    Men några dagar innan hon lämnade Moskva, rörd och upprymd av allt som hände, ropade grevinnan Sonya till sig, istället för förebråelser och krav, vände sig till henne med tårar och bad att hon, genom att offra sig själv, skulle betala för allt. vad som gjordes för henne var att bryta hennes band med Nikolai.
    "Jag kommer inte att vara ifred förrän du ger mig detta löfte."
    Sonya brast hysteriskt i gråt, svarade genom sina snyftningar att hon skulle göra allt, att hon var redo för vad som helst, men hon gav inget direkt löfte och kunde i sin själ inte bestämma sig för vad som krävdes av henne. Hon var tvungen att offra sig själv för familjens lycka som matade och fostrade henne. Att offra sig själv för andras lycka var Sonyas vana. Hennes ställning i huset var sådan att endast på offervägen kunde hon visa sina dygder, och hon var van och älskad att offra sig själv. Men först, i alla självuppoffrande handlingar, insåg hon med glädje att hon genom att offra sig själv därigenom höjde sitt värde i sig själv och andras ögon och blev mer värdig Nicolas, som hon älskade mest i livet; men nu måste hennes offer bestå i att ge upp det som för henne utgjorde offrets hela belöning, hela meningen med livet. Och för första gången i sitt liv kände hon bitterhet mot de människor som hade gynnat henne för att tortera henne mer smärtsamt; Jag kände avund på Natasha, som aldrig hade upplevt något liknande, aldrig behövt uppoffringar och tvingade andra att offra sig själv och ändå var älskad av alla. Och för första gången kände Sonya hur av sin tysta, rena kärlek till Nicolas plötsligt började växa fram en passionerad känsla, som stod över regler, dygd och religion; och under inflytande av denna känsla svarade Sonya ofrivilligt, lärt av sitt beroende liv av hemlighetsmakeri, grevinnan i allmänhet, vaga ord, undvek samtal med henne och bestämde sig för att vänta på ett möte med Nikolai så att hon under detta möte inte skulle frigöra sig henne, utan tvärtom, för alltid binda sig till honom.
    Besvären och fasan under de sista dagarna av Rostovs vistelse i Moskva dränkte de mörka tankarna som tyngde henne. Hon var glad över att finna räddning från dem i praktiska aktiviteter. Men när hon fick veta om närvaron av prins Andrei i deras hus, trots all den uppriktiga medlidande som hon kände för honom och Natasha, överföll henne en glad och vidskeplig känsla av att Gud inte ville att hon skulle skiljas från Nicolas. Hon visste att Natasha älskade en prins Andrei och slutade inte älska honom. Hon visste att nu, sammanförda under sådana hemska förhållanden, skulle de älska varandra igen och att då Nicholas, på grund av släktskapet som skulle vara mellan dem, inte skulle kunna gifta sig med prinsessan Marya. Trots all fasa över allt som hände i sista dagar och under de första dagarna av resan gladde Sonya denna känsla, denna medvetenhet om Försynens ingripande i hennes personliga angelägenheter.
    Familjen Rostov tillbringade sin första dag på sin resa vid Trinity Lavra.
    I Lavra-hotellet tilldelades Rostovs tre stora rum, varav ett var ockuperat av prins Andrei. Den skadade mannen mådde mycket bättre den dagen. Natasha satt med honom. I rummet bredvid satt greven och grevinnan och pratade respektfullt med prosten, som hade besökt sina gamla bekanta och investerare. Sonya satt precis där, och hon plågades av nyfikenhet över vad prins Andrei och Natasha pratade om. Hon lyssnade till ljudet av deras röster bakom dörren. Dörren till prins Andreis rum öppnades. Natasha kom ut därifrån med ett upprymt ansikte och utan att lägga märke till munken som reste sig upp för att möta henne och tog tag i den vida ärmen på sin högra hand, gick fram till Sonya och tog hennes hand.
    - Natasha, vad gör du? Kom hit”, sa grevinnan.
    Natasha kom under välsignelsen, och abboten rådde att vända sig till Gud och hans helgon för att få hjälp.
    Omedelbart efter att abboten gått, tog Nashata sin väns hand och gick med henne in i det tomma rummet.
    - Sonya, eller hur? kommer han att vara vid liv? - Hon sa. – Sonya, vad glad jag är och vad olycklig jag är! Sonya, min kära, allt är som förut. Om han bara levde. Han kan inte... för, för att... det... - Och Natasha brast ut i gråt.
    - Alltså! Jag visste det! Tack gode gud”, sa Sonya. - Han kommer att vara vid liv!
    Sonya var inte mindre upprymd än sin vän - både av hennes rädsla och sorg, och av hennes personliga tankar som inte uttrycktes för någon. Hon snyftade, kysste och tröstade Natasha. "Om han bara levde!" - hon trodde. Efter att ha gråtit, pratat och torkat sina tårar gick båda vännerna fram till prins Andreis dörr. Natasha öppnade försiktigt dörrarna och tittade in i rummet. Sonya stod bredvid henne vid den halvöppna dörren.
    Prins Andrei låg högt på tre kuddar. Hans bleka ansikte var lugnt, hans ögon var slutna och man kunde se hur han andades jämnt.
    - Åh, Natasha! – Sonya nästan skrek plötsligt, tog sin kusins ​​hand och drog sig tillbaka från dörren.
    - Vad? Vad? – frågade Natasha.
    "Det här är det här, det, det..." sa Sonya med ett blekt ansikte och darrande läppar.
    Natasha stängde tyst dörren och gick med Sonya till fönstret, men förstod ännu inte vad de sa till henne.
    ”Kommer du ihåg”, sa Sonya med ett skrämt och högtidligt ansikte, ”minns du när jag tittade efter dig i spegeln... I Otradnoye, vid jul... Kommer du ihåg vad jag såg?...
    - Jaja! – sa Natasha och öppnade upp ögonen och kom vagt ihåg att Sonya sedan sa något om prins Andrei, som hon såg ligga ner.
    - Kommer du ihåg? – fortsatte Sonya. "Jag såg det då och berättade för alla, både du och Dunyasha." "Jag såg att han låg på sängen," sa hon och gjorde en gest med handen med ett höjt finger vid varje detalj, "och att han hade slutit ögonen och att han var täckt med en rosa filt, och att han hade slagit händerna”, sa Sonya och såg till att när hon beskrev detaljerna som hon såg nu, att samma detaljer hon såg då. Hon såg ingenting då, men sa att hon såg vad som kom in i hennes huvud; men vad hon då kom fram till syntes henne lika giltigt som vilket annat minne som helst. Vad hon sa då, att han såg tillbaka på henne och log och var täckt av något rött, kom hon inte bara ihåg, utan var fast övertygad om att hon redan då sa och såg att han var täckt med en rosa, precis rosa filt, och att hans ögon var slutna.
    "Ja, ja, precis i rosa," sa Natasha, som nu också tycktes komma ihåg vad som sades i rosa, och i detta såg hon det huvudsakliga ovanligheten och mysteriet med förutsägelsen.
    – Men vad betyder detta? – sa Natasha eftertänksamt.
    - Åh, jag vet inte hur extraordinärt allt det här är! - sa Sonya och höll om huvudet.
    Några minuter senare ringde prins Andrei och Natasha kom in för att träffa honom; och Sonya, som upplevde en känsla och ömhet som hon sällan hade upplevt, stannade kvar vid fönstret och begrundade det extraordinära i det som hade hänt.
    Den här dagen fanns det möjlighet att skicka brev till armén, och grevinnan skrev ett brev till sin son.
    "Sonya," sa grevinnan och lyfte huvudet från brevet när hennes systerdotter gick förbi henne. – Sonya, vill du inte skriva till Nikolenka? - sa grevinnan med tyst, darrande röst, och i blicken av sina trötta ögon, tittade genom glasögon, läste Sonya allt som grevinnan förstod i dessa ord. Denna blick uttryckte vädjande, rädsla för vägran, skam över att behöva fråga och beredskap för oförsonligt hat i händelse av avslag.
    Sonya gick fram till grevinnan och knäböjde och kysste hennes hand.
    "Jag ska skriva, mamma", sa hon.
    Sonya blev uppmjukad, upprymd och berörd av allt som hände den dagen, särskilt av det mystiska framträdandet av spådom som hon just såg. Nu när hon visste att Nikolai inte kunde gifta sig med prinsessan Marya i samband med förnyelsen av Natashas förhållande till prins Andrei, kände hon med glädje återkomsten av den självuppoffrande stämningen där hon älskade och var van att leva. Och med tårar i ögonen och med glädjen att förverkliga en generös gärning, skrev hon, flera gånger avbruten av tårar som grumlade hennes sammetslena svarta ögon, det där rörande brevet, vars mottagande förvånade Nikolai så.

    Vid vakthuset dit Pierre fördes behandlade officeren och soldaterna som tog honom honom med fientlighet, men samtidigt med respekt. Man kunde fortfarande i deras inställning till honom känna tvivel om vem han var (om han var en mycket viktig person), och fientlighet på grund av deras fortfarande färska personliga kamp med honom.
    Men när skiftet på morgonen en annan dag kom kände Pierre att det för den nya gardet – för officerarna och soldaterna – inte längre hade den betydelse som det hade för dem som tog honom. Och faktiskt, i den här stora, tjocka mannen i en bondkaftan såg inte längre vakterna den där levande mannen som så desperat slogs med marodören och med eskortsoldaterna och sa en högtidlig fras om att rädda barnet, utan såg endast den sjuttonde av dem som av någon anledning, på order av de högsta myndigheterna, hålls fängslade, de tillfångatagna ryssarna. Om det var något speciellt med Pierre så var det bara hans blyga, intensivt eftertänksamma utseende och det franska språket, som han, överraskande nog för fransmännen, talade bra. Trots det faktum att Pierre samma dag var kopplad till andra misstänkta misstänkta, eftersom det separata rummet han ockuperade behövdes av en officer.
    Alla de ryssar som hölls med Pierre var människor av den lägsta rangen. Och alla av dem, som kände igen Pierre som en mästare, undvek honom, särskilt eftersom han talade franska. Pierre hörde med sorg förlöjligandet av sig själv.
    Nästa kväll fick Pierre veta att alla dessa fångar (och förmodligen han själv) skulle ställas inför rätta för mordbrand. Den tredje dagen fördes Pierre med andra till ett hus där en fransk general med vit mustasch, två överstar och andra fransmän med halsdukar på händerna satt. Pierre, tillsammans med andra, ställdes frågor om vem han var med den precision och säkerhet som åtalade brukar behandlas med, vilket förmodligen överstiger mänskliga svagheter. där han var? till vilken nytta? och så vidare.
    Dessa frågor, bortsett från essensen av livsfrågan och utesluter möjligheten att avslöja denna essens, liksom alla frågor som ställs i domstolar, var endast avsedda att ersätta det spår längs med vilket domarna ville att svarandens svar skulle flöda och leda honom till det önskade mål, det är till anklagelsen. Så fort han började säga något som inte tillfredsställde syftet med anklagelsen, tog de ett spår, och vattnet kunde rinna vart det ville. Dessutom upplevde Pierre samma sak som en tilltalad upplever i alla domstolar: förvirring över varför alla dessa frågor ställdes till honom. Han ansåg att det här tricket att sätta in ett spår endast användes av nedlåtenhet eller, så att säga, av artighet. Han visste att han var i dessa människors makt, att endast makt hade fört honom hit, att endast makt gav dem rätt att kräva svar på frågor, att det enda syftet med detta möte var att anklaga honom. Och därför, eftersom det fanns makt och det fanns en lust att anklaga, behövdes det inget knep med frågor och rättegång. Det var uppenbart att alla svar måste leda till skuld. På frågan vad han gjorde när de tog honom, svarade Pierre med en tragedi att han bar ett barn till sina föräldrar, qu"il avait sauve des flammes [som han räddade från lågorna]. - Varför slogs han med marodören Pierre svarade, att han försvarade en kvinna, att det är varje människas plikt att skydda en förolämpad kvinna, att... Han stoppades: detta gick inte till saken. Varför stod han på gården till ett hus i brand , var vittnen såg honom? Han svarade att han skulle se vad som hände i Moskva. De stoppade honom igen: de frågade honom inte vart han skulle, och varför var han nära elden? Vem var han? De upprepade den första frågan till honom, som han sa att han inte ville svara på. Återigen svarade han att han inte kunde säga att .
    – Skriv ner det, det här är inte bra. "Det är väldigt dåligt", sa generalen med vit mustasch och ett rött, rött ansikte till honom strängt.
    Den fjärde dagen startade bränder på Zubovsky Val.
    Pierre och tretton andra fördes till Krymsky Brod, till vagnen i ett köpmanshus. När han gick genom gatorna kvävdes Pierre av röken som verkade stå över hela staden. Bränder var synliga från olika håll. Pierre förstod ännu inte betydelsen av bränningen av Moskva och såg på dessa bränder med fasa.
    Pierre stannade i vagnen i ett hus nära Krim Brod i fyra dagar till, och under dessa dagar fick han veta av de franska soldaternas samtal att alla som höll sig här förväntade sig marskalkens beslut varje dag. Vilken marskalk kunde Pierre inte ta reda på av soldaterna. För soldaten verkade uppenbarligen marskalken vara den högsta och något mystiska länken vid makten.
    Dessa första dagar, fram till den 8 september, dagen då fångarna togs för sekundärt förhör, var de svåraste för Pierre.

    X
    Den 8 september gick en mycket viktig officer in i ladan för att se fångarna, att döma av den respekt med vilken vakterna behandlade honom. Denna officer, förmodligen en stabsofficer, med en lista i händerna, gjorde ett namnupprop till alla ryssarna och kallade Pierre: celui qui n "avoue pas son nom [den som inte säger sitt namn]. Och, likgiltigt och han tittade lätt på alla fångarna och beordrade vakten att det är lämpligt för officeren att klä och göra i ordning dem innan han ledde dem till marskalken. En timme senare anlände ett kompani soldater, och Pierre och tretton andra leddes till Maiden's Field Dagen var klar, solig efter regnet, och luften var ovanligt ren. Röken lade sig inte som den dagen när Pierre fördes ut ur Zubovsky Vals vakthus, rök steg i kolonner i den klara luften. Eldarna av bränderna fanns ingenstans att se, men rökpelare steg upp från alla håll och hela Moskva, allt som Pierre kunde se, var en enda brand.På alla sidor kunde man se lediga tomter med spisar och skorstenar och ibland de förkolnade väggarna av stenhus Pierre tittade noga på bränderna och kände inte igen stadens välbekanta kvarter. På vissa ställen kunde man se överlevande kyrkor. Kreml, oförstört, skymtade vitt på avstånd med sina torn och Ivan den store. I närheten glittrade Novodevichy-klostrets kupol glatt, och evangeliets klocka hördes särskilt högt därifrån. Detta tillkännagivande påminde Pierre om att det var söndag och festen för Jungfru Marias födelse. Men det verkade som om det inte fanns någon att fira denna högtid: överallt var det förödelse från elden, och bland det ryska folket fanns det bara ibland trasiga, rädda människor som gömde sig vid åsynen av fransmännen.
    Uppenbarligen härjades och förstördes det ryska boet; men bakom förstörelsen av denna ryska livsordning kände Pierre omedvetet att över detta förstörda bo hade en egen, helt annan, men fast fransk ordning upprättats. Han kände detta av åsynen av de soldater som glatt och glatt gick, i regelbundna rader, som eskorterade honom med andra brottslingar; han kände detta från åsynen av någon viktig fransk tjänsteman i en dubbelvagn, körd av en soldat, som körde mot honom. Han kände detta från de glada ljuden av regementsmusik som kom från vänstra sidan av fältet, och särskilt kände och förstod han det från listan som den besökande franske officeren läste i morse och ropade ut fångarna. Pierre togs av några soldater, fördes till ett eller annat ställe med dussintals andra människor; det verkade som om de kunde glömma honom, blanda ihop honom med andra. Men nej: hans svar som gavs under förhöret kom tillbaka till honom i form av hans namn: celui qui n "avoue pas son nom. Och under detta namn, som Pierre var rädd för, leddes han nu någonstans, med otvivelaktigt förtroende skrivet på ansiktena att alla andra fångar och han var de som behövdes, och att de fördes dit de behövdes.Pierre kände sig som en obetydlig flisa som fastnade i hjulen på en för honom okänd, men korrekt fungerande maskin.
    Pierre och andra brottslingar leddes till höger sida av Maiden's Field, inte långt från klostret, till ett stort vitt hus med en enorm trädgård. Detta var prins Sjcherbatovs hus, i vilket Pierre ofta hade besökt ägaren tidigare och i vilket nu, som han fick veta av soldaternas samtal, marskalken, hertigen av Eckmuhl, var stationerad.
    De leddes till verandan och en efter en leddes de in i huset. Pierre kom in som sexa. Genom ett för Pierre bekant glasläktare, en vestibul och en förkammare leddes han in i ett långt, lågt kontor, vid vars dörr stod en adjutant.
    Davout satt i slutet av rummet ovanför bordet med glasögon på näsan. Pierre kom nära honom. Davout, utan att höja blicken, klarade tydligen med papper som låg framför honom. Utan att lyfta blicken frågade han tyst:
    – Qui etes vous? [Vem är du?]
    Pierre var tyst eftersom han inte kunde säga ord. För Pierre var Davout inte bara en fransk general; för Pierre Davout var han en man känd för sin grymhet. När han tittade på Davouts kalla ansikte, som likt en sträng lärare gick med på att ha tålamod tills vidare och vänta på ett svar, kände Pierre att varje sekund av försening kunde kosta honom livet; men han visste inte vad han skulle säga. Han vågade inte säga vad han sa under det första förhöret; att avslöja sin rang och position var både farligt och skamligt. Pierre var tyst. Men innan Pierre hann bestämma sig för något höjde Davout huvudet, höjde glasögonen mot pannan, spände ögonen och tittade intensivt på Pierre.
    "Jag känner den här mannen," sa han med en mätt, kall röst, uppenbarligen tänkt att skrämma Pierre. Kylan som tidigare runnit ner för Pierres rygg grep tag i hans huvud som en last.
    – Mon general, vous ne pouvez pas me connaitre, je ne vous ai jamais vu... [Du kunde inte känna mig, general, jag har aldrig sett dig.]
    "C"est un espion russe, [Detta är en rysk spion,"] avbröt Davout honom och vände sig till en annan general som var i rummet och som Pierre inte hade lagt märke till. Och Davout vände sig bort. Med ett oväntat ljud i rösten, Pierre talade plötsligt snabbt.
    "Nej, Monseigneur," sa han och kom plötsligt ihåg att Davout var en hertig. - Non, Monseigneur, vous n"avez pas pu me connaitre. Je suis un officer militianaire et je n"ai pas quitte Moskva. [Nej, Ers Höghet... Nej, Ers Höghet, du kunde inte känna mig. Jag är polis och jag har inte lämnat Moskva.]
    - Votre nom? [Ditt namn?] - upprepade Davout.
    - Besouhof. [Bezukhov.]
    – Qu"est ce qui me prouvera que vous ne mentez pas? [Vem ska bevisa för mig att du inte ljuger?]
    - Monseigneur! [Ers Höghet!] - ropade Pierre med en inte kränkt, men vädjande röst.
    Davout lyfte blicken och tittade intensivt på Pierre. De tittade på varandra i flera sekunder, och denna blick räddade Pierre. I detta synsätt, förutom alla villkor för krig och rättegång, etablerades en mänsklig relation mellan dessa två personer. Båda upplevde på den ena minuten vagt otaliga saker och insåg att de båda var mänsklighetens barn, att de var bröder.
    Vid första anblicken för Davout, som bara lyfte huvudet från sin lista, där mänskliga angelägenheter och liv kallades siffror, var Pierre bara en omständighet; och, utan att ta hänsyn till den dåliga gärningen på hans samvete, skulle Davout ha skjutit honom; men nu såg han redan en person i sig. Han tänkte en stund.
    – Kommentera mig prouverez vous la verite de ce que vous me dites? [Hur ska du bevisa för mig att dina ord är sanna?] - sa Davout kallt.
    Pierre kom ihåg Rambal och namngav hans regemente, hans efternamn och gatan där huset låg.
    "Vous n"etes pas ce que vous dites, [Du är inte vad du säger.]," sa Davout igen.
    Pierre, med en darrande, intermittent röst, började ge bevis på sanningen i sitt vittnesbörd.
    Men vid denna tidpunkt gick adjutanten in och rapporterade något till Davout.
    Davout strålade plötsligt mot nyheterna som förmedlades av adjutanten och började knäppa. Han glömde tydligen helt bort Pierre.
    När adjutanten påminde honom om fången rynkade han pannan, nickade mot Pierre och sade sig ledas bort. Men Pierre visste inte vart de skulle ta honom: tillbaka till båset eller till den förberedda avrättningsplatsen, som hans kamrater visade honom när de gick längs Maiden's Field.
    Han vände på huvudet och såg att adjutanten frågade något igen.
    - Oui, sans doute! [Ja, naturligtvis!] - sa Davout, men Pierre visste inte vad "ja" var.
    Pierre kom inte ihåg hur, hur länge han gick och var. Han, i ett tillstånd av fullständig meningslöshet och matthet, som inte såg någonting omkring sig, rörde sina ben tillsammans med de andra tills alla stannade, och han stannade. Under hela denna tid fanns en tanke i Pierres huvud. Det var tanken på vem som slutligen dömde honom till döden. Det var inte samma personer som förhörde honom i kommissionen: ingen av dem ville och kunde uppenbarligen inte göra detta. Det var inte Davout som såg på honom så mänskligt. Ytterligare en minut och Davout skulle ha insett att de gjorde något fel, men detta ögonblick avbröts av adjutanten som gick in. Och denna adjutant ville uppenbarligen inte något ont, men han kanske inte hade kommit in. Vem var det som slutligen avrättade, dödade, tog sitt liv - Pierre med alla sina minnen, ambitioner, förhoppningar, tankar? Vem gjorde det här? Och Pierre kände att det inte var någon.

    2005-04-19 Natalya Dubova

    Open Source-gemenskapen har flera nyckelprojekt, inklusive, tillsammans med Linux OS, skapandet av utvecklingsplattformen Eclipse. Släppt för flera år sedan från IBM Corporation, idag är denna öppna plattform för att integrera applikationsutvecklingsverktyg fritt distribuerad över hela världen. öppen källa och är utvecklad av en gemenskap av användare.

    Utan att gå in på en diskussion om frågan om programmering är en konst eller ett hantverk, erkänner vi: i båda fallen kan en programmerare inte klara sig utan verktyg för att skapa program. Tillsammans med utvecklingen av programmeringsprocessen (från "häxkonst" över maskinkommandon till användning av högnivåspråk) har möjligheterna att automatisera programmerares hårda arbete också förbättrats. Tidiga utvecklingsmiljöer var begränsade till att köra kompilatorer, länkare, laddare och debuggers sekventiellt med ett gränssnitt kommandorad. På 80-talet, tillsammans med personliga datorer En marknad för mjukvaruprodukter av en ny klass dök upp - integrerade utvecklingsmiljöer (IDE) för algoritmiska (Pascal, etc.) och sedan objektorienterade (Smalltalk, C++) programmeringsspråk. Riktigt blomstrande detta område uppnått tack vare aktiv anpassning av Java-språkutvecklare; De mest välkända integrerade miljöerna för att skapa program på detta språk är Borland JBuilder, Symantec Visual Cafe, Microsoft J++, IBM VisualAge och Oracle JDeveloper.

    Huvudsyftet med en IDE är att öka utvecklarens produktivitet. De första utvecklingsmiljöerna, som kombinerade funktionaliteten hos programtextredigerare, kompilatorer och debuggers, befriade i första hand konsumenter från rutinoperationer. Med tiden blev IDE:s funktioner rikare. Den innehåller steg-för-steg-kompilatorer, webbläsare för en mer logisk presentation av program, verktyg för automatisk kodgenerering och visuella redaktörer för att skapa grafiska användargränssnitt. I enlighet med tidens trender har utvecklingsmiljöer förvandlats från verktyg för att öka programmerarens produktivitet till att stödja alla stadier av det kollektiva arbetet med mjukvaruprojekt. Den senaste trenden är omvandlingen av IDE till ALM (applikationslivscykelhantering), ett integrerat appli- från kravdefinition och modellering till konfiguration och mjukvaruversionshantering, distribution och underhåll av den färdiga lösningen.

    Varje nytt steg i utvecklingen av IDE har gjort utvecklingsmiljöer mer komplexa. Men användare av sådana produkter var fortfarande tvungna att tillgripa verktyg som inte var integrerade i IDE, om så bara för att skapa en applikation inte är begränsad till att skriva och felsöka program på ett enda programmeringsspråk. Behovet av att använda till exempel HTML-sidor, relationsdatabasscheman eller bitar av kod på andra språk (som Cobol eller PL/1) i applikationssystemet tvingar utvecklare att använda lämpliga verktyg som inte ursprungligen ingick i ID.

    Det är därför många leverantörer av kommersiella utvecklingsmiljöer strävar efter att göra dem så öppna som möjligt och tillhandahålla speciella mekanismer för att integrera externa verktyg. Men ingen enskild miljö kan tillfredsställa alla möjliga användarkrav. För att göra detta måste det vara helt neutralt till programmeringsspråket och stödja den maximala uppsättningen funktioner. Eclipse är inte en sådan miljö, utan det är en bas, en plattform med vilken man kan bygga multifunktionella och flerspråkiga utvecklingsmiljöer.

    Plattform

    Som initiativtagarna till Eclipse-projektet förklarar, var dess idé att skapa "Apache för utvecklingsverktyg" - en öppen plattform som ger maximal grundläggande förmågor för utvecklingsmiljöer och tillhandahålla mekanismer för att integrera olika verktyg. Den första versionen av denna plattform utvecklades av IBM och släpptes som öppen källkod i slutet av 2001. Kommersiella implementeringar baserade på Eclipse började snart dyka upp, banbrytande av WebSphere Studio Application Developer 4.0. Det finns nu ett helt ekosystem för utveckling av öppen källkod runt Eclipse, som samlar verktygsleverantörer och användare, forskningsorganisationer och enskilda utvecklare.

    I de officiella Eclipse Foundation-dokumenten ( www.eclipse.org Eclipse Platform definieras som en leverantörsneutral, öppen utvecklingsplattform som tillhandahåller ramverk och exemplariska möjligheter samt utbyggbara verktyg. Verktygslådan inom Eclipse Platform är standard i den meningen att den verifierar tillämpligheten av plattformens grundläggande funktioner, illustrerar typiska situationer för deras användning och stödjer utvecklingen och underhållet av själva Eclipse-plattformen. Verktygslådan är utbyggbar eftersom dess funktionalitet är tillgänglig via dokumenterade programvarugränssnitt. De grundläggande principerna som vägledde skaparna av Eclipse Platform och enligt vilka den fortsätter att utvecklas är följande:

    • stöd för konstruktion av applikationsutvecklingsverktyg;
    • stöd för ett obegränsat antal verktygsleverantörer, inklusive oberoende mjukvaruutvecklare;
    • stöd för verktyg för att arbeta med godtyckliga innehållstyper, inklusive HTML, Java, C, JavaServer Pages, EJB, XML, GIF, etc.;
    • säkerställa "sömlös" integration av verktyg att arbeta med olika typer innehåll olika tillverkare;
    • stöd för applikationsutvecklingsmiljöer med vanliga och grafiska användargränssnitt;
    • ger möjlighet att driva en utvecklingsmiljö baserad på olika operativsystem(idag implementeras Eclipse-baserade verktyg för Linux, HP-UX, IBM AIX, Sun Solaris, QNX, Mac OS X, Windows);
    • med hänsyn till Java-språkets popularitet när man skapar utvecklingsverktyg i plattformsutvecklingens intresse.

    Eclipse Platform är en utvecklingsmiljö skriven i Java för generell mening, vars arkitektur ger integration av olika verktyg och programmeringsspråk för att lösa olika problem. Mekanismer för sådan integration gör att du kan använda Eclipse Platform för att bygga avancerade utvecklingsmiljöer, vilket befriar dig från rutinen att skriva grundläggande verktyg till förmån för att skapa komplexa, specialiserade funktioner. Detta löser inte bara problemet med att stödja multifunktionella och flerspråkiga utvecklingsmiljöer, utan lägger också grunden för att förenkla övergången från en typ av miljö till en annan under utvecklingsprocessen. Eclipse-plattformen är utvecklad av en grupp utvecklare och kommer att samla de senaste framstegen, göra dem tillgängliga för utvecklare av specifika produkter och eliminera behovet av att i grunden omforma sina system.

    Eclipse utvecklingsmiljö

    Grunden för Eclipse Platform-arkitekturen är principen att använda plug-ins. Plattformen implementerar mekanismer för att detektera, integrera och exekvera sådana moduler (se figur). En utvecklare som vill dra nytta av funktionerna i Eclipse Platform skriver sin verktygslåda i Java som en separat plug-in-modul. Den här modulen kommer att arbeta med filer i en arbetsyta, som implementeras med hjälp av arbetsytekomponenten. Och dess användargränssnitt är baserat på arbetsbänkskomponenten, som definierar den allmänna strukturen för gränssnittet och möjligheten till dess expansion.

    Vanligtvis implementerar en enda plug-in den enklaste funktionaliteten hos en Eclipse Platform-baserad IDE, medan mer komplexa verktyg är sammansatta av flera moduler. Samtidigt är nästan all inbyggd funktionalitet i Eclipse Platform också implementerad med hjälp av sådana moduler - med undantag för den lilla Platform Runtime-kärnan. Varje plugin har sin egen manifestfil som beskriver anslutningarna av denna modul med andra. När du startar en Eclipse Platform-baserad utvecklingsmiljö, bestämmer Platform Runtime-komponenten uppsättningen av tillgängliga plugin-program, läser deras manifestfiler och bygger ett plug-in-register. Efter systemstart ytterligare moduler kan inte längre läggas till. Eclipse-projektet har implementerat en speciell miljö för att skapa plug-ins - Plug-In Development Environment (PDE).

    Med hjälp av specialmoduler implementeras komponenterna i arbetsytan och användargränssnittet (arbetsbänken) på Eclipse-plattformen. Arbetsytan innehåller filer som skapas av användare av verktyg implementerade av plugin-program. Workbench-komponenten ger en allmän struktur och verktyg som låter dig utöka funktionerna i användargränssnittet i utvecklingsmiljön baserat på Eclipse Platform, och innehåller två komponenter för att implementera verktyg för att tillhandahålla information till användaren.

    • Standard Widget Toolkit (SWT) är en uppsättning gränssnittselement och ett grafikbibliotek som har mekanismer för integration med fönstersystemet på en specifik operativsystemsplattform, men implementerar API:er som är oberoende av operativsystemet. Detta gör det möjligt att bygga användargränssnitt för utvecklingsmiljön enligt enhetliga principer, som motsvarar den för konsumenten bekanta fönstermiljön, men är avsedda för största möjliga utbud av operativsystem;
    • JFace är en verktygslåda för att implementera ett antal vanliga uppgifter relaterade till programmeringsgränssnitt med hjälp av SWT-verktyg.

    Baserat på API:erna som tillhandahålls av SWT- och JFace-komponenterna, byggs ett personligt användargränssnitt som bestämmer strukturen för konsumentinteraktion med utvecklingsverktygen. Eclipse Platforms gränssnitt är organiserat med hjälp av redigerare, vyer och perspektiv.

    Syftet med redigerare är att öppna, redigera och spara arbetsyteobjekt. Plattformen har en inbyggd editor för textresurser och andra funktioner måste implementeras som plug-ins. Vyer ger information om objektet som användaren arbetar med det här ögonblicket. Slutligen låter perspektivmotorn dig välja och organisera önskade redigerare och vyer som kommer att visas på skärmen.

    Organisation

    Det finns ett antal fördelar med att driva projekt med öppen källkod. En av uppgifterna för en sådan plattform är alltså att förse utvecklare med verktyg från en gemensam bas, invariant för olika utvecklingsmiljöer. Varför behöver varje tillverkare skriva om något som kan skrivas en gång? Men för att bygga sin utveckling på en sådan plattform måste tillverkaren helt lita på den som skapade den. Och detta är bara möjligt om han kan prova allt som ingår i det, det vill säga skaffa en öppen källkodsplattform.

    Att utveckla en produkt i enlighet med Open Source-principerna förbättrar kvaliteten på koden, eftersom den poleras ihop av många intresserade utvecklare. Felsökning blir enklare och bättre - tack vare tillgången till programmets källkod och, återigen, involveringen av ett distribuerat team i arbetet. Samarbete gör att vi kan dela riskerna med att skapa komplexa teknologier. Och plattformens samlade utvecklingsorgan säkerställer dess stöd oavsett de växlingar som kan uppstå med leverantörer av specifika utvecklingsmiljöer. Slutligen, att använda en utvecklingsplattform med öppen källkod med en flexibel plug-in-mekanism för att implementera ytterligare funktionalitet öppnar för obegränsade möjligheter till förbättring.

    Eclipse Platform Architecture

    Inse dock fördelarna med utvecklingsmodellen med öppen källkod genom att helt enkelt släppa den "i det vilda" teknisk plattform, det kommer inte att fungera. Vi måste organisera processen. Med lanseringen av den första versionen av Eclipse 2001 tog ett konsortium organiserat av IBM tillsammans med ett antal ledande marknadsaktörer detta ansvar, och i februari 2004 beslutade Eclipse styrelse att omvandla Eclipse Foundation till en icke- vinst, oberoende bolag.

    Eclipse Foundation, ett konsortium med mer än 60 företag, samordnar insatserna för att förbättra Eclipse-plattformen och andra projekt med öppen källkod.

    Eclipse-projektet är helt öppet och alla intresserade utvecklare kan delta i det, som inte behöver vara anställd i något företag. I princip kan alla inte bara vara intresserade av detaljerna i utvecklingen och bidra till att identifiera fel, utan också ta del av att skriva kod och den övergripande designen av nästa version av plattformen. Eclipse följer dock principen att sätta professionalism först. En utvecklare med ett bevisat professionellt rykte kan räkna med ytterligare ansvar och möjlighet att aktivt implementera sina färdigheter i Eclipse-projekt. Vissa utvecklare definieras som "committers" eftersom de är ansvariga för källkoden och endast de har rätt att skapa nya versioner i det öppna källkodsförrådet. Vanligtvis är dessa utvecklare anställda i företag som betalar dem för deras arbete med Eclipse-projekt.

    Utvecklingsprocessen är iterativ och syftar till att maximera engagemanget från medlemmar i Eclipse-gemenskapen i arbetet med projektet. Utgivningen av nästa utgåva föregås av flera stadier med en bestämd varaktighet (cirka flera veckor), som var och en representerar en komplett cykel, inklusive planering, utveckling, testning och mellanliggande version av versionen. Slutförandet av nästa cykel åtföljs av en öppen publikation av en beskrivning av de nya funktionerna i systemet, vilket stimulerar samhällsmedlemmar att diskutera, använda och ge rekommendationer för förbättringar. Som ett resultat blir det i nästa utvecklingsstadier möjligt att ta hänsyn till samhällets reaktion på den interimistiska frigivningen. Detta är en öppen process för att kontinuerligt förbättra Eclipse-plattformen och utveckla andra initiativ utifrån den.

    Uppdraget för Eclipse Technology Project är att samordna ansträngningarna från utvecklare, forskare, medlemmar av vetenskapliga och utbildningsorganisationer för att fastställa utsikterna för Eclipse Platform och andra utvecklingar med öppen källkod. Några av de mest anmärkningsvärda forskningsdelprojekten inom detta område inkluderar utvecklingen av aspektorienterad programvara (AspectJ och AJDT), skapandet av en alternativ kärna till Eclipse Runtime (Equinox), skapandet av en gemensam utvecklingsplattform (Koi), programvara konfigurationshantering (Stellation), verktyg för XML Schema Definition och för modellbaserad utveckling (Generative Model Transformer).

    gemenskap

    Användning av allt material som genereras av Eclipse-projekt är föremål för Common Public License (CPL) som godkänts av Open Source Initiative. Enligt CPL kan vem som helst använda och omdistribuera Eclipse gratis för kommersiella och icke-kommersiella ändamål. Följande är fritt tillgängliga på eclipse.org:

    • aktuella versioner av Eclipse Platform för direkt användning (i binär form);
    • ett källkodsförråd där vem som helst kan se innehållet och revisionshistoriken för vilken källfil som helst, samt skaffa skript för att kompilera om och bygga Eclipse-plattformen från källkoder;
    • öppna diskussionsforum för att diskutera Eclipse Platform;
    • buggdatabas för att spåra defekter och problem i nuvarande versioner av plattformen. Med hjälp av denna databas kan användare identifiera kända defekter i sin Eclipse-baserade utveckling och publicera nya problem som de upptäcker;
    • utvecklingsplaner och kontakter för utvecklare involverade i Eclipse-projekt.

    Idag på eclipse.org fritt tillgänglig - mer än hundra plugin-program i källkod för Eclipse-plattformen. Eclipses projekt med öppen källkod uppgår till mer än 2 miljoner rader kod.

    Nyckeln till marknadsutveckling programvara utveckling har deltagit i Eclipse-projektet av kommersiella företag. Med Eclipse Platform har de förbyggda kärnutvecklingsmiljötjänster som är språk- och driftplattformsneutrala och kan fokusera sina ansträngningar och investeringar på att utveckla den komplexa funktionalitet som kommer att göra deras lösningar konkurrenskraftiga. Det finns exempel på Eclipse-baserade implementeringar av både fullfjädrade utvecklingsmiljöer som främjar de mest avancerade lösningarna inom detta område, samt specialiserade verktyg inriktade på ett specifikt spektrum av uppgifter.

    Således körs alla produkter i IBM Rational-familjen på Eclipse-plattformen. Borland har för avsikt att migrera alla sina supportverktyg till Eclipse livscykel applikationer. Det finns en Eclipse-version av QNX:s inbäddade applikationsutvecklingsverktyg; Wind River genomför ett liknande projekt. Hewlett-Packard erbjuder i sin tur en Eclipse-baserad komponentutvecklingsmiljö för sitt Internet Usage Manager-system, målgrupp som är teleoperatörer. Nokia tillkännagav stöd för Eclipse som utvecklingsplattform mobilapplikationer. IBM har implementerat en speciell verktygslåda, Autonomic Computing Toolkit, baserad på Eclipse, designad för att stödja autonoma datortekniker i utvecklade applikationer. Av alla världens ledande mjukvarutillverkare är det bara Sun Microsystems och Microsoft som inte samarbetar med Eclipse Foundation.

    Försäljare av kommersiella Eclipse-baserade miljöer tillåter oberoende utvecklingsföretag att sälja plug-ins för sin IDE, och det är vanligt att ett företag säljer samma proprietära plug-in för olika Eclipse-baserade miljöer. Detta är inte bara en metod för att utveckla nya marknader, utan också ett annat sätt att öka projektets betydelse. Användare värdesätter valfrihet: om de inte är nöjda med den befintliga funktionaliteten i en miljö baserad på en öppen källkodsplattform kan de utöka den genom egenutveckling eller genom att köpa kommersiella lösningar av samma format.

    Dessa grupper använder Eclipse-utvecklingar på olika sätt, men de bidrar alla till deras utveckling. Trenden är att använda Eclipse-plattformen för att bygga icke-IDE-applikationer. Detta är möjligt eftersom det inte finns många utvecklingsmiljöspecifika element i Eclipse Platforms teknologilösning. I den tredje versionen av Eclipse sker en utveckling från en plattform för utvecklingsmiljöer till en plattform för implementering av fullfjädrade klientarbetsstationer (Rich Client Platform). Det är ingen slump att IBM implementerar sin lovande Workplace-samarbetsmiljö baserad på Eclipse.

    Litteratur

    1. Marc R. Erickson, Angus McIntyre. , 2001, november.
    2. J. dea Rivieres, J. Wiegand. Förmörkelse. En plattform för att integrera utvecklingsverktyg. IBM Systems Journal, 2004, nr. 2.

    Eclipse organisationsstruktur

    Samordning av Eclipse-utveckling och deltagande i öppen källkodsprojekt av olika organisationer och enskilda utvecklare utförs av det ideella oberoende konsortiet Eclipse Foundation

    Eclipse Foundations styrelse är sammansatt av fyra huvudkategorier av medlemmar:

    • strategiska utvecklare (Strategic Developers) - företag Actuate, Borland, IBM, Computer Associates, Intel, QNX, Wind River, Sybase, Scapa Technologies, BEA Systems;
    • strategiska konsumenter (Strategic Consumers) - HP, Montavista Software, SAP, Serena Software;
    • inkluderade leverantörer (tilläggsleverantörer);
    • Projektledare med öppen källkod.

    Alla strategiska utvecklare och strategiska konsumenter sitter i styrelsen, och de andra två grupperna delegerar sina representanter till den. Strategiska medlemmar i konsortiet har också vissa rättigheter att delta i projektledningskommittéer och råd som samordnar utvecklingsprocesser.

    Konsortiet driver flera grundläggande öppen källkodsprojekt, som inkluderar ett varierande antal delprojekt. Basprojektet leds av Project Management Committee (PMC). För att klara utvecklingen som helhet skapas tre huvudråd – Kravrådet, Arkitekturrådet och Planrådet.

    Kravnämnden analyserar och strukturerar projektkrav. De kombinerar krav som syftar till att uppnå de allmänna målen för Eclipse Foundation och de specifika målen för projektet, lösa problemen för nyckelkonsortiummedlemmar och utveckla Eclipse-ekosystemet. Utifrån analysen formuleras en lista med ämnen och prioriteringar som kommer att avgöra utvecklingens gång. Arkitekturstyrelsen är ansvarig för att utveckla arkitekturen för Eclipse Platform, definiera den tydligt, kommunicera den till utvecklingsteam och skydda dem från oavsiktlig felaktig framställning. Planeringsrådet skapar en samordnad plan för plattformssläpp.

    Projekt genomförs av utvecklingsteam ledda av projektledare och inklusive utvecklare och ansvariga utvecklare. De förstnämnda sysslar med att skriva kod, identifiera fel, testa och dokumentera program samt utföra andra uppgifter inom ramen för projektet. Ansvariga utvecklare har rätt att lägga till källkodsförrådet och måste påverka utvecklingens framsteg inom projektet. Företag som utsetts till strategiska utvecklare av Eclipse Foundation måste leda minst ett projekt. De uppmuntras också att leda kommittéer.



    Eclipse är en Java-baserad, utbyggbar utvecklingsplattform med öppen källkod. I huvudsak är det helt enkelt en utvecklingsmiljö och en uppsättning tjänster för att bygga applikationer baserade på inbäddade komponenter (plugins). Lyckligtvis kommer Eclipse med en standarduppsättning plugins, inklusive de välkända Java Development Tools (JDT).

    Medan de flesta användare som använder Eclipse som en Java-integrerad utvecklingsmiljö (IDE) är nöjda med det, finns det mycket mer än så. Eclipse innehåller även en plugin-utvecklingsmiljö (PDE), som i första hand kommer att vara av intresse för dem som vill utöka Eclipse själv, eftersom det låter dig skapa dina egna verktyg som är inbyggda i Eclipse-miljön. Eftersom Eclipse helt består av plugins har alla verktygsutvecklare möjlighet att erbjuda sina egna tillägg till Eclipse och ge användarna en konsekvent och sömlös integrerad utvecklingsmiljö (IDE).

    Denna integritet och konsekvens är inte unik för Java-utvecklingsverktyg. Även om Eclipse är skrivet i Java, kan det användas med andra språk. Till exempel finns plugins redan tillgängliga (eller håller på att utvecklas) som stöder programmeringsspråk som C/C++ och COBOL. Eclipse-ramverket kan också användas som grund för andra typer av applikationer som inte är relaterade till mjukvaruutveckling, såsom innehållshanteringssystem.

    Ett utmärkt exempel på en Eclipse-baserad applikation är IBMs Rational Software Architect, som utgör grunden för IBMs familj av Java-utvecklingsverktyg.

    Eclipse är öppen källkod

    Programvara med öppen källkod släpps under en licens utformad för att garantera vissa rättigheter för användare. Den mest uppenbara av dem är naturligtvis att källkoden måste tillhandahållas användarna, och de har all rätt att modifiera och distribuera programvaran själva. Detta skydd av användarrättigheter uppnås med hjälp av en mekanism som kallas "copyleft": Programvarulicensen är upphovsrättsskyddad och förbjuder distribution av programvaran om inte användaren beviljas sådana rättigheter. En copyleft-licens kräver också att all programvara som distribueras av användare täcks av den ursprungliga licensen utan ändringar. Sålunda vänds innebörden av upphovsrätt i huvudsak upp och ner, och en copyleft-licens, som använder upphovsrätt för att ge rättigheter till användaren snarare än att behålla dem åt mjukvaruutvecklaren, sägs ofta på skämt "alla rättigheter är perverterade" (alla rättigheter omvända) ).

    Mycket av den vanliga rädslan, osäkerheten och tvivel om programvara med öppen källkod är baserad på den så kallade virala naturen hos vissa copyleft-licenser. Tanken är att om du använder programvara med öppen källkod som en del av ett program du själv utvecklar, kommer du att förlora din immateriella egendom eftersom licensen kommer att förorena dina privata delar av programmet. Med andra ord kan licensen kräva att all programvara med öppen källkod, inklusive nyskapad programvara, distribueras under samma licens. Även om detta är sant för den mest kända copyleft-licensen, GNU General Public License (under vilken till exempel Linux distribueras), finns det andra licenser som ger en annan balans mellan kommersiella och allmänna intressen.

    Open Software Initiative - OSI (Open Software Initiative) är en ideell organisation som tydligt definierar vad som är öppen källkod och certifierar licenser som uppfyller dess kriterier. Eclipse distribueras under EPL (Eclipse Public License) V1.0, en OSI-godkänd licens utformad för att underlätta kommersiell acceptans av Eclipse samtidigt som krediten till de ursprungliga kodförfattarna bibehålls.

    De som skapar plugins för Eclipse eller använder Eclipse som bas för mjukvaruutveckling måste publicera vilken Eclipse-kod de använder eller modifierar under EPL, men är fria att licensiera sina egna tillägg som de vill. Inbyggd kod buntad med programvara från Eclipse behöver inte vara licensierad som öppen källkod, och själva källkoden behöver inte göras allmänt tillgänglig.

    Även om de flesta programmerare inte skulle använda Eclipse för att utveckla plugins eller skapa nya produkter baserade på det, är Eclipse-naturen med öppen källkod betydande inte bara för att den gör Eclipse tillgänglig helt gratis (och trots dess kommersiellt inriktade karaktär). licensen innebär att plugins kan kosta pengar). Öppen källkod främjar innovation och skapar ett incitament för utvecklare (även kommersiella) att bidra med sin källkod till samhället. Det finns flera anledningar till detta, men den kanske viktigaste är att ju mer utvecklare bidrar till projektet, desto mer meningsfullt blir det för alla. Och när ett projekt blir användbart kommer fler utvecklare att använda det och skapa en community runt det, liknande de som har bildats kring Apache och Linux.

    Vad är Eclipse?

    Eclipse är en öppen källkodsgemenskap av utvecklare vars projekt syftar till att bygga en öppen utvecklingsplattform som består av en utbyggbar utvecklingsmiljö, verktyg och runtime-bibliotek för att bygga, distribuera och hantera programvara under hela dess livscykel. Eclipse Foundation är en ideell, medlemsstödd organisation som är värd för Eclipse-projekt och hjälper till att förbättra öppen källkodsgemenskapen och ekosystemet av kompletterande produkter och tjänster.

    Eclipse-projektet skapades i november 2001 av IBM och stöddes av ett konsortium av mjukvaruleverantörer. Eclipse Foundation skapades i januari 2004 som en oberoende, ideell organisation som fungerar som förvaltare av Eclipse-gemenskapen. Det skapades för att hjälpa en leverantörsneutral, öppen och transparent gemenskap att växa runt Eclipse. Dagens Eclipse-gemenskap består av individer och organisationer som representerar mjukvaruindustrin.

    Eclipse Foundation övervakar och leder den pågående utvecklingen av Eclipse. Stiftelsen tjänar samhället, men utvecklarna av öppen källkod, kallade committers, som huvudsakligen arbetar med Eclipse-projekt, finns inte i dess personal. Vanligtvis är Eclipse committers medlemmar i någon organisation eller är oberoende utvecklare som frivilligt lägger sin tid på att arbeta med ett projekt med öppen källkod.

    Nu när vi har tittat på de teoretiska, historiska och politiska aspekterna av Eclipse, låt oss titta på själva produkten.

    Eclipse arbetsyta

    När du först startar Eclipse kommer du att se en välkomstsida inuti arbetsytan (se figur 1). En Eclipse-användare har flera alternativ för att navigera till översiktssidan, vilket är vad jag rekommenderar att du gör (se figur 2). Därefter kan du bekanta dig med information om nya funktioner, studera några exempel eller gå en utbildning.

    Figur 2. Översiktssida för Eclipse

    Eclipse-arbetsytan består av flera paneler som kallas vyer, till exempel navigerings- eller konturvyer. En uppsättning sådana representationer kallas perspektiv. Ett av de vanligaste perspektiven är resursperspektivet, som är en grundläggande uppsättning vyer för att hantera projekt och visa och redigera projektfiler.

    Jag rekommenderar att de flesta förstagångsanvändare börjar med översiktssidan som visas i figur 2 och lär sig mer om Eclipse. Arbetsbänkens grundsektion innehåller mycket användbar inledande information om de olika komponenterna i Eclipse och hur de interagerar med varandra. Ta några minuter att läsa detta, och låt oss sedan dyka in i Eclipses Java Development Tools (JDT). Det bästa sättet att lära sig något - prova det i praktiken.

    Vi fortsätter denna korta rundtur i Eclipse och skapar ett nytt projekt i Java. Välj Arkiv > Nytt > Java-projekt och skriv Hej när du uppmanas att ange projektnamnet och klicka sedan Avsluta.

    Låt oss nu titta på "Java"-perspektivet (om du inte redan är i det). Beroende på hur du föredrar att styra din skärm kan du antingen ändra perspektivet i det aktuella fönstret genom att välja Fönster > Öppna perspektiv > Java (Fönster > Öppna perspektiv > Java), eller öppna ett nytt fönster genom att välja Fönster > Nytt fönster, och välj ett nytt perspektiv.

    Som du kanske förväntar dig har Java-perspektivet en uppsättning vyer utformade för att vägleda Java-utveckling. En av dem, som ligger i det övre vänstra hörnet, är en hierarki som innehåller olika Java-paket, klasser, JAR-arkiv och olika filer. Denna vy kallas Package Explorer. Observera att två nya objekt har lagts till i huvudmenyn: Källa och Refaktor.

    Java Development Tools (JDT)

    För att testa utvecklingsmiljön Java kommer vi att skapa och köra en applikation som heter "Hello World". Medan du är i Java-perspektivet, högerklicka på mappen med projektets källtest "Hej" (src) och välj Nytt > Klass, som visas i figur 3. I dialogrutan som visas anger du Hello som klassnamn. Nedan finns inskriptionen Vilka metodstubbar skulle du vilja skapa? (Vilka metodstubbar vill du skapa?) notera public static void main(String args) och klicka Avsluta.

    Figur 3. Skapa en ny klass i Java-perspektivet

    Detta kommer att skapa en .java-fil med Hello-klassen och en tom main()-metod i editorområdet, som visas i figur 4. Låt oss lägga till följande kod till metoden (observera att beskrivningen för i har utelämnats medvetet).

    Figur 4. Hej klass i Java-editorn

    När du skriver kommer du att märka några av Eclipse-redigerarens funktioner, inklusive syntaxkontroll och automatisk kodkomplettering. Dessutom, när du anger en inledande parentes eller dubbla citattecken, Eclipse infogar automatiskt ett avslutande par för dem och placerar markören i mitten.

    I andra fall kan du orsaka automatisk kodkomplettering med kombinationen Ctrl+1. Kodkompletteringsfunktionen ger en sammanhangsberoende lista med alternativ som du kan välja från med tangentbordet eller musen. Alternativ kan vara en lista över metoder som är specifika för ett visst objekt, eller en kodbit baserad på olika nyckelord, till exempel för eller medan .

    Syntaxkontroll beror på inkrementell kompilering. När du sparar koden kompileras den till bakgrund och kollade efter syntaxfel. Som standard är syntaxfel understrukna i rött och en röd prick med ett vitt X visas i vänstermarginalen Övriga fel är markerade i redaktörens marginal med en glödlampssymbol; det här är problem som redigeraren kan fixa åt dig (en funktion som kallas Quick Fix).

    I koden ovan visas glödlampsskylten bredvid for-satsen eftersom beskrivningen för i har utelämnats. Om du dubbelklickar på glödlampan visas en lista med föreslagna korrigeringar. I vårt fall kommer vi att bli ombedda att skapa ett klassfält i, en lokal variabel i eller en parameter i för en metod; Om du väljer något av dessa alternativ med musen visas koden som kommer att genereras. Figur 5 visar listan med föreslagna alternativ och koden som föreslås i fallet med en lokal variabel.

    Figur 5: Snabbkorrigeringsalternativ

    Genom att dubbelklicka på en mening infogas koden på önskad plats i programmet.

    Om programmet kompilerar utan fel kan du köra det genom att välja Springa i Eclipse-menyn. (Observera att det inte finns något separat steg för kompilering eftersom kompilering sker när du sparar koden. Om din kod inte har några syntaxfel är den redo att köras.) Dialogrutan Starta konfigurationer visas med önskade standardinställningar; klick Springa nere till höger. Visas i den nedre panelen ny panel med flikar (konsol), visar resultatet av programmet, som visas nedan.

    Figur 6. Resultat av programmet

    Du kan också köra programmet i Java debugger. Först måste du ställa in en brytpunkt i main() System.out.println() genom att dubbelklicka på den grå rutan på vänster sida av redigeringsfönstret bredvid System.out.println()-anropet. En blå prick visas. På menyn Springa Välj lag Felsök. Som beskrivits tidigare kommer dialogrutan "Starta konfigurationer" att visas. Välj ett lag Springa. Perspektivet kommer automatiskt att ändras till Debug-perspektivet, som innehåller ett antal intressanta nya vyer, som visas nedan.

    Figur 7. Felsökningsperspektiv

    Lägg märke till felsökningsvyn i det övre vänstra hörnet av perspektivet. Den här vyn visar anropsstacken och innehåller ett verktygsfält i namnlisten som låter dig styra programexekveringen. Panelen har knappar för att fortsätta, pausa eller avsluta programmet, gå till nästa sats, gå över nästa sats eller gå tillbaka från en metod. Panelen längst upp till höger innehåller ett antal flikar, inklusive variabler, brytpunkter, uttryck och visning. Fliken Variabler är nu vald, så att vi kan se det aktuella värdet för variabeln i.

    Mer detaljerad information vilken som helst av åsikterna kan erhållas med hjälp av kontextledtrådar; För att göra detta, klicka på vytiteln och tryck F1.

    Ytterligare plugins

    Förutom plugins av JDT-typ för redigering, kompilering och felsökning av applikationer finns det plugins som stödjer hela utvecklingsprocessen: modellering, byggautomation, enhetstestning, prestandatestning, versionshantering och konfigurationshantering.

    Eclipse innehåller ett plugin för att arbeta med Concurrent Versions System (CVS) för källkodshantering. Team-pluginet ansluter till CVS-servern, vilket gör att medlemmar i ett utvecklingsteam kan arbeta med en uppsättning filer som innehåller källkod utan att störa ändringar gjorda av andra. Vi kommer inte att utforska källhantering från Eclipse mer i detalj här eftersom det skulle kräva installation av en CVS-server, även om möjligheten att stödja ett team av utvecklare snarare än bara självutveckling är en viktig och integrerad del av Eclipse.

    Insticksprogram som underhålls och distribueras av Eclipse Foundation kan hittas på Eclipses webbplats. Mest full lista tillgängliga plugins är tillgängliga på Eclipse Plug-in Central-sidan, som fungerar som en plugin-katalog.

    Eclipse Platform Architecture

    Eclipse-plattformen innehåller en kraftfull uppsättning plugins (se figur 8) som stödjer projekt som JDT och PDE.

    Figur 8. Förenklad arkitektur för Eclipse-plattformen

    De mörkblå blocken representerar komponenter som är centrala för Rich Client Platform (RCP) i Eclipse. Konceptet med RCP i sig ligger utanför ramen för denna artikel, men låt oss betrakta RCP som helt enkelt en uppsättning plugins från Eclipse som människor kan använda för att utveckla applikationer som Lotus Notes® 8. De ljusblå blocken representerar valfria (men rekommenderas) komponenter att inkludera i RCP-baserade applikationer. Och de grå blocken är helt valfria. Plattformen består av flera komponenter, vi kommer att titta på några av dem:

    Körning Runtime är koden som definierar Eclipse-pluginmodellen, baserad på OSGi-specifikationen och idén om tillägg och förlängningspunkter. Runtime tillhandahåller även ytterligare tjänster som syslogging och samtidighet. JFace/SWT Standard Widget Toolkit (SWT) är en samling widgets som tillhandahåller användargränssnittet och funktionerna i Eclipse. JFace är helt enkelt en superset av SWT som tillhandahåller flera Model-View-Controller-klasser (MVC) för att göra det enklare att utveckla grafiska applikationer. Arbetsbänk Arbetsytan ger Eclipse sin personlighet. Det är på denna nivå som konceptet med vyer, perspektiv och saker som att redigera fönster implementeras. Hjälp (användarsupport) Denna Eclipse-komponent låter dig ge support till dina användare. Detta kan göras genom ett hjälpsystem, som låter användare söka efter hjälpdokumentation, eller genom "cheat sheets", som kan presenteras som interaktiva uppgiftslistor för slutanvändare. Uppdatering Uppdateringskomponenten ger Eclipse ett sätt att uppdatera applikationer från en version till en annan. Team Teamkomponenten är en infrastruktur som gör att utvecklingsföretag kan koppla upp sina egna versionskontrollsystem. Ett exempel på leverantörsimplementering är CVS-pluginet som är inbyggt i Eclipse.

    Slutsats

    Från initial kod skriven av IBM har Eclipse vuxit till ett fullfjädrat ekosystem med öppen källkod med mer än 100 deltagande företag. Bärbar, utbyggbar infrastruktur med öppen källkod – inte längre ny idé, men tack vare sin genomtänkta, robusta och eleganta design får Eclipse en helt ny dynamik.

    Välkommen till Eclipse-ekosystemet. Vårt mål var att hjälpa dig komma igång på Eclipse-plattformen. Vi har uppnått detta genom en inledande text och en enkel övningsövning. Använd kunskapen du får genom att läsa den här artikeln och bli en aktiv medlem i Eclipse-ekosystemet.

    Eclipse Project är ett webbsajtprojekt med öppen källkod, som övervakas av en projektledningskommitté (PMC) och projektledare. Arbetet sker i delprojekt som arbetar mot . Eclipse Project Charter beskriver projektets organisation, deltagarnas roller och ansvar samt utvecklingsprocess på toppnivå för projektet. JDT och PDE är plug-in verktyg för Eclipse Platform. Tillsammans bildar dessa tre delar Eclipse SDK, en komplett utvecklingsmiljö för Eclipse-baserade verktyg och för att utveckla själva Eclipse.

    • Eclipse projektutveckling
      Släppplaner och annan information om utvecklingsprocessen för Eclipse Project.

    • Ladda ner Eclipse SDK, Eclipse RCP, SWT, Eclipse Java-kompilatorn och många fler. Du hittar den aktuella releasen här. Eller ladda ner de senaste stall- och integrationsbyggen om du vill testa de senaste funktionerna under utveckling, eller komma igång med att bidra till projektet.

    • Bläddra i dokumentationen som ingår i Eclipse Project-utgåvorna.

    Delprojekt


    • Plattformen definierar uppsättningen ramverk och gemensamma tjänster som tillsammans utgör "integration-ware" som krävs för att stödja användningen av Eclipse som en komponentmodell, som en rik klientplattform () och som en omfattande verktygsintegrationsplattform. Dessa tjänster och ramverk inkluderar en standardmodell för arbetsbänkanvändargränssnitt och bärbar inbyggd widget-verktygssats, en projektmodell för hantering av resurser, automatisk resursdeltahantering för inkrementella kompilatorer och byggare, språkoberoende felsökningsinfrastruktur och infrastruktur för distribuerad fleranvändarversionerad resurshantering .

    • JDT tillhandahåller verktygsplugin-program för plattformen som implementerar en Java IDE för avancerade användare, som stöder utvecklingen av alla Java-applikationer, inklusive Eclipse-plugin-program. JDT lägger till begreppet Java-projekt och ett Java-perspektiv till Eclipse-plattformen, såväl som ett antal vyer, redaktörer, guider, byggare och verktyg för kodsammanslagning och omstrukturering. JDT tillåter Eclipse att vara en utvecklingsmiljö för sig själv. JDT-plugin-modulerna i sig kan också utökas ytterligare av andra verktygsbyggare.

    • PDE-projektet tillhandahåller ett antal vyer och redigerare som gör det enklare att bygga plugin-program för Eclipse. Med hjälp av PDE kan du skapa din plugin-manifestfil (plugin.xml), ange din plugin-körtid och andra nödvändiga plugin-program, definiera tilläggspunkter, inklusive deras specifika uppmärkning, associera XML-schemafiler med tilläggspunktmarkeringen så att tillägg kan valideras, skapa tillägg på andra plugin-förlängningspunkter osv. PDE gör det enkelt och roligt att integrera plug-ins.

    • e4-projektet är en inkubator för att utveckla nästa generation av Eclipse-plattformen. Uppdraget med e4-projektet är att bygga en nästa generations plattform för genomgripande, komponentbaserade applikationer och verktyg.