Početak rada s platformom Eclipse. Karakteristike Java softverskih platformi. Želim da se pridružim zajednici. Kako uraditi

- slobodni okvir za razvoj modularnih cross-platform aplikacija.

Projekat je prvobitno razvijen u IBM kao korporativni IDE standard za razvoj na različitim jezicima za IBM platforme. Projekat je zatim preimenovan i dostavljen zajednici na dalji razvoj.

Prije svega, kompletan Java IDE, namenjen grupnom razvoju, opremljen alatima za rad sa sistemima kontrole verzija (CVS podrška je uključena u Eclipse distribuciju, aktivno se razvija nekoliko verzija SVN modula, postoji podrška za VSS i druge). Zbog besplatnog U mnogim organizacijama, Eclipse je korporativni standard za razvoj aplikacija.

Drugi termin- služi kao platforma za razvoj novih ekstenzija (zbog čega je stekla popularnost - svaki programer može proširiti Eclipse svojim vlastitim modulima). Tako su i postali C/C++ razvojni alati(CDT), razvijen od strane QNX inženjera zajedno sa IBM, COBOL, FORTRAN, PHP alatima raznih programera. Mnoga proširenja dopunjuju Eclipse sa menadžerima za rad sa bazama podataka, serverima aplikacija itd.

Od verzije 3.0, Eclipse je postao kolekcija ekstenzija, a ne monolitni IDE koji podržava ekstenzije. Zasnovan je na OSGi i SWT/JFace okviru, na osnovu kojeg je razvijen sljedeći sloj - platforma za razvoj punopravnih klijentskih aplikacija RCP (Rich Client Platform - (engleske rich-client aplikacije). RCP platforma služi kao osnova za RCP aplikacije kao što su Azareus i File Arranger. Sljedeći sloj je Eclipse platforma, koja je skup RCP ekstenzija - editori, paneli, perspektive, CVS modul i Java Development Tools (JDT) modul.

Napisano Java, stoga je proizvod nezavisan od platforme, sa izuzetkom SWT biblioteke, koja je razvijena za sve uobičajene platforme. SWT biblioteka se koristi umjesto "sporo" Swinga i potpuno ovisi o osnovnoj platformi (operativnom sistemu), što osigurava brzinu i prirodan izgled korisnički interfejs.

Osnova Eclipse-a je platforma bogatih klijenata (RCP). Sastoji se od sljedećih komponenti:


  • OSGi (standardno okruženje isporuke paketa);
  • SWT (portable widget toolkit);
  • JFace (baferi datoteka, rad s tekstom, );
  • Eclipse radno okruženje (paneli, uređivači, projekcije, čarobnjaci).
  • GUI je napisan pomoću SWT alata. Potonji, za razliku od Swinga (koji emulira samo pojedinačne grafičke elemente korištene platforme), zapravo koristi grafičke komponente ovog sistema. Korisnički interfejs Eclipse takođe zavisi od GUI međuvera zvanog JFace, što olakšava izgradnju korisničkog interfejsa zasnovanog na SWT-u.

    Fleksibilnost je osigurana dodacima koji omogućavaju razvoj ne samo na Javi, već i na drugim jezicima, kao što su C/C++, Perl, Ruby, Python, PHP, ErLang i drugi.

    Lokalizacija

    Od verzije 3.1.1, izdat je jezički paket za rusizaciju. Prevedeno na ruski kao GUI, i dokumentaciju.

    Postoji niz besplatnih i komercijalnih modula dostupnih za okoliš. Okvir je prvobitno razvijen za jezik Java, ali sada postoje brojna proširenja koja podržavaju druge jezike, kao npr

    • C/C++ - CDT Eclipseov C/C++ razvojni alat
    • Perl - EPIC modul, Eclipse Perl integracija
    • PHP - PDT PHP razvojni alati
    • JavaScript - JS Eclipse Java dodatak za skriptu za okruženje Eclipse
    • Python - Pydev, Python razvojno okruženje
    • Ruby - RDT, Ruby razvojni alati

    Postoje i moduli za kreiranje grafičkih interfejsa.

    Za razvoj i primanje izvještaja i razvoj analitičkih BI aplikacija postoji en:BIRT_Projec t.

    Postoji ugrađena funkcija za instaliranje i ažuriranje modula putem .

    Aptana(aptana.com) - Eclipse distribucija i dodatak koji podržava razvoj sa koristeći JavaScript(sve glavne JS Ajax biblioteke su uključene u distribuciju), HTML, CSS, Ruby on rails, Adobe AIR.

    Ostavite svoj komentar!

    ) specifikacije servisne platforme OSGi izabrane su kao arhitektura runtime okruženja. Od verzije 3.0, Eclipse je prestao da bude monolitni IDE koji podržava ekstenzije, a sam je postao kolekcija ekstenzija. Zasnovan je na OSGi frameworku i SWT/JFaceu, na osnovu kojih je razvijen sljedeći sloj - RCP (Rich Client Platform, platforma za razvoj punopravnih klijentskih aplikacija). RCP služi kao osnova ne samo za Eclipse, već i za druge RCP aplikacije, kao što su Azureus i File Arranger. Sljedeći sloj je sam Eclipse, koji je skup RCP ekstenzija - uređivača, panela, perspektive, CVS modula i modula Java razvojnih alata (JDT).

    Od 2006. godine, Eclipse fondacija koordinira godišnje istovremeno izdanje, koje se održava u junu. Svako izdanje uključuje Eclipse platformu kao i niz drugih Eclipse projekata.

    Pustiti datum Verzija platforme Projekt
    Neon 22. juna 2016 4.6
    mars 25. juna 2015 4.5
    Luna 6. juna 2014 4.4
    Kepler 26. juna 2013 4.3
    Juno 27. juna 2012 3.8 i 4.2
    Indigo 22. juna 2011 3.7
    Helios 23. juna 2010 3.6
    Galileo 24. juna 2009 3.5
    Ganimed 25. juna 2008 3.4
    Europa 29. juna 2007 3.3
    Callisto 30. juna 2006 3.2
    Eclipse 3.1 28. juna 2005 3.1
    Eclipse 3.0 28. juna 2004 3.0

    Prednosti

    Eclipse prvenstveno služi kao platforma za razvoj ekstenzija, zbog čega je stekao popularnost: svaki programer može proširiti Eclipse svojim vlastitim modulima. Već postoje Java razvojni alati (JDT), C/C++ razvojni alati (CDT), koje su razvili QNX inženjeri zajedno sa IBM-om, i alati za jezike Ada (GNATbench, Hibachi), COBOL, FORTRAN, PHP, X10 (X10DT ), itd. od raznih programera. Različite ekstenzije dopunjuju Eclipse okruženje sa menadžerima za rad sa bazama podataka, serverima aplikacija i još mnogo toga.

    Eclipse JDT (Java Development Tools) je najpoznatiji modul namijenjen grupnom razvoju: okruženje je integrirano sa sistemima kontrole verzija - CVS, GIT u glavnoj distribuciji, postoje dodaci za druge sisteme (na primjer, Subversion,). Također nudi podršku za komunikaciju između IDE-a i sistema upravljanja zadacima (greškama). Glavna distribucija uključuje podršku za Bugzilla bug tracker, a postoji i mnogo ekstenzija za podršku drugim trackerima (Trac, Jira, itd.). Zbog besplatnih i Visoka kvaliteta,Eclipse je korporativni standard za razvoj aplikacija u mnogim organizacijama.

    Eclipse je napisan u Javi, stoga je proizvod nezavisan od platforme, sa izuzetkom SWT biblioteke, koja je razvijena za sve uobičajene platforme (vidi dole). SWT biblioteka se koristi umjesto standardne Java Swing biblioteke. U potpunosti se oslanja na osnovnu platformu (operativni sistem), koja pruža brz i prirodan korisnički interfejs, ali ponekad uzrokuje probleme kompatibilnosti i stabilnosti aplikacija na različitim platformama.

    Arhitektura

    Osnova Eclipse-a je Rich Client Platform (RCP). bogata klijentska platforma). Sastoji se od sljedećih komponenti:

  • OSGi (standardno okruženje za isporuku kompleta) snopovi));
  • SWT (portable widget toolkit);
  • JFace (baferi datoteka, rad sa tekstom, uređivači teksta);
  • Eclipse radno okruženje (paneli, uređivači, projekcije, čarobnjaci).
    • Aperi (od lat. otvoren) - sistem otvorenog koda za upravljanje mrežnim sistemima za skladištenje podataka.
    • BIRT (Business Intelligence and Reporting Tools) - Web i PDF izvještaji.
    • DTP (Data Tools Platform) - razvoj sistema usredsređenih na podatke, posebno podataka u relacionim bazama podataka; upravljanje programima sa velikim brojem konektora.
    • GEF (Graphical Editing Framework) je okvir za izgradnju ugrađenih grafičkih uređivača.
    • Jazz je klijent-server platforma za interakciju između programera tokom razvoja projekta (uključuje chat, dnevnik događaja, itd.), izgrađena na vrhu Eclipse-a (dio IBM Rational linije proizvoda).
    • Modeliranje .
    • Alati .
    • TPTP (Test & Performance Tools Platform) - razvoj alata za testiranje, - debageri, profileri, itd.
    • VE (Visual Editor Project) - razvoj GUI alata.
    • WTP (Web Tools Platform Project) - J2EE alati za razvoj web aplikacija:
      • HTML, JavaScript, CSS, JSP, SQL, XML, DTD, XSD i WSDL uređivači;
      • grafički uređivači za XSD i WSDL;
      • Web Services Wizards and Explorer, WS-I Test Tools;
      • alati za pristup i izgradnju upita i modela baze podataka.
    • Eclipse Communication Framework (ECF) ima za cilj kreiranje komunikacijskih aplikacija na Eclipse platformi.
    • Razvojni projekat softver za uređaje (DSDP).
    • Platforma paralelnih alata (PTP) pruža prenosivu, skalabilnu platformu za paralelne alate zasnovanu na standardima koja će olakšati integraciju alata specifičnih za arhitekture paralelnih računara.
    • Ugrađena poboljšana klijentska platforma (eRCP) - dizajnirana da proširi RCP na ugrađene uređaje. eRCP uključuje skup komponenti koje su podskup RCP komponenti. To će vam omogućiti da prenesete model aplikacije koji se koristi na desktop računarima na druge uređaje.
    • DLTK (Dynamic Languages ​​Toolkit) je integrirano razvojno okruženje za dinamičke programske jezike.
    • Swordfish je platforma za izgradnju distribuiranih korporativnih informacionih sistema.

    Najnovije verzije

    Eclipse 3.3.2 (Europa Winter)

    Broj novih potprojekata (kako upravlja Eclipse fondacija tako i trećih strana) brzo raste. Moramo koordinirati napore ogromnog broja programera i predložiti zajednička pravila – “Eclipse razvojni proces”.

    Najnoviju verziju izdanje uključuje 21 potprojekat.

    Eclipse 3.4 (Ganimed)

    Izdanje Ganimed (06.2008) uključuje 23 podprojekta:

    • Projekat Eclipse 3.4
    • Ekvinocija 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
    • Okvir grafičkog uređivača 3.4.0
    • Okvir za grafičko modeliranje 2.1
    • Alati za razvoj modela. 1.1
    • Platforma alata za podatke (DTP) 1.6
    • Device Software Development Platform Project Device Debugging 1.0
    • Upravljanje ciljevima projekta platforme za razvoj softvera uređaja 3.0
    • Buckminster komponentni sklop 1.1
    • BIRT 2.3.0
    • C/C++ razvojni alat (CDT) 5.0.0
    • Komplet alata za dinamičke jezike 0.95
    • Model u tekst (M2T) 0.9.0
    • Transformacija modela u model (M2M)
    • Mylyn 3.0 (UI fokusiran na zadatke)
    • Bogata Ajax platforma (RAP) 1.1
    • SOA alati (STP) 1.0
    • Subversive - SVN tim provajder
    • Ciljno upravljanje 3.0
    • Projekt platforme alata za testiranje i performanse 4.5.0

    Eclipse 3.5 (Galileo)

    Najnovije izdanje Galilea, predstavljeno javnosti 24. juna 2009. godine, uključuje 33 podprojekta:

    • Eclipse platforma 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)
    • Projekt EclipseLink 1.1.2
    • Accessibility Tools Framework 0.7.0
    • Alati za poslovnu inteligenciju i izvještavanje (BIRT)
    • C/C++ razvojni alati (CDT) 6.0
    • Dali Java Persistence Tools 2.2
    • Data Tools Platform 1.7 (Galileo)
    • Komplet alata za dinamičke jezike 1.0
    • Ekvinocija 3.5
    • GEF - Okvir grafičkog uređivača 3.5.0
    • Okvir za grafičko modeliranje 2.2.0
    • Java Workflow Tooling JWT 0.6
    • JDT - Java razvojni alati
    • M2T JET (Java Emitter Templates) - aka JET2 M2T JET 1.0.0 (Galileo)
    • Memory Analyzer 0.8.0
    • Mobilni alati za Javu
    • Model u tekst (M2T) 1.0.0
    • Transformacija modela u model (M2M) Galileo istovremeno izdanje
    • Alati za praćenje 4.6
    • Mylyn 3.2
    • PHP razvojni alati 2.1.0
    • Bogata Ajax platforma 1.2
    • Riena Platform Project 1.1.0.
    • SCA Tools 2.0.0
    • SOA alati 2.0
    • Uređivanje izvora 3.1.0 (Galileo)
    • Swordfish 0.9.0
    • Ciljno upravljanje 3.1
    • Projekt platforme alata za testiranje i performanse 4.5.3
    • Alati za testiranje TPTP v4.6
    • Okvir za tekstualno modeliranje org.eclipse.xtext
    • Alati za mobilni Linux 0.3
    • TPTP platforma TPTP v4.6
    • Alati za praćenje i profiliranje TPTP v4.6

    Lokalizacija

    Počevši od verzije 3.1.1, izdat je jezički paket za rusifikovanje Eclipse-a. I grafički interfejs i dokumentacija prevedeni su na ruski.

    Moduli

    Postoji veliki broj besplatnih i komercijalnih modula dostupnih za Eclipse okruženje. Okvir je prvobitno dizajniran za jezik Java, ali sada postoje brojna proširenja koja podržavaju druge jezike:

    Jezik Modul
    /C++ CDT
    Fortran Photran
    Perl EPSKI
    PHP PDT
    JavaScript JSEclipse
    Python PyDev (Eclipse) ( engleski)
    Ruby RDT
    1C V8 1C:Enterprise DT

    Razviti i dobiti izvještaji i razvoj analitičkih BI aplikacija u Eclipse postoji BIRT Project ( engleski).

    Eclipse ima ugrađenu funkcionalnost za instaliranje i ažuriranje modula preko Interneta.

    Popularne aplikacije bazirane na SWT i RCP

    Podržane arhitekture i sistemi

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

    Napišite recenziju o članku "Eclipse (razvojno okruženje)"

    Bilješke

    1. Darryl K. Taft.(engleski) . ??? (20. maj 2005.). Pristupljeno 3. septembra 2009. .
    2. (engleski) . Službena stranica. Pristupljeno 3. septembra 2009. .
    3. (engleski) . Pristupljeno 3. septembra 2009. .
    4. (engleski) . Službena stranica. Pristupljeno 3. septembra 2009. .
    5. (engleski) . Eclipse dokumentacija. Službena stranica. Pristupljeno 3. septembra 2009. .
    6. (engleski) . Eclipse dokumentacija. Službena stranica. Pristupljeno 3. septembra 2009. .
    7. (engleski) . Službena stranica. Pristupljeno 3. septembra 2009. .
    8. Sergey Golubev.. ??? (15. novembar 2005.). Pristupljeno 3. septembra 2009. .
    9. (engleski) . Službena stranica. Pristupljeno 3. septembra 2009. .
    10. (engleski) . Službena stranica. Pristupljeno 3. septembra 2009. .
    11. (engleski) . Službena stranica. Pristupljeno 3. septembra 2009. .
    12. (engleski) . Pristupljeno 3. septembra 2009. .
    13. Vladimir Paramonov.. Compulenta (31. januar 2007.). Pristupljeno 3. septembra 2009.
    14. (engleski) . Službena stranica. Pristupljeno 3. septembra 2009. .
    15. (engleski) . Službena stranica. Pristupljeno 3. septembra 2009. .
    16. (engleski) . Službena stranica. Pristupljeno 3. septembra 2009. .
    17. (engleski) . Službena stranica. Pristupljeno 3. septembra 2009. .
    18. (engleski) . Službena stranica. Pristupljeno 3. septembra 2009. .
    19. (engleski) . Službena stranica. Pristupljeno 3. septembra 2009. .
    20. . Službena stranica. .
    21. (engleski) . Službena stranica. Pristupljeno 3. septembra 2009. .
    22. (engleski) . Službena stranica. Pristupljeno 3. septembra 2009. .
    23. (engleski) . Službena stranica. Pristupljeno 3. septembra 2009. .
    24. (engleski) . Službena stranica. Pristupljeno 3. septembra 2009. .
    25. (engleski) . Službena stranica. Pristupljeno 3. septembra 2009. .
    26. (engleski) . Službena stranica. Pristupljeno 3. septembra 2009. .
    27. (engleski) . Službena stranica. Pristupljeno 3. septembra 2009. .
    28. (engleski) . Službena stranica. Pristupljeno 3. septembra 2009. .
    29. (engleski) . Službena stranica. Pristupljeno 3. septembra 2009. .
    30. (engleski) . Službena stranica. Pristupljeno 3. septembra 2009. .
    31. (engleski) . Službena web stranica (juni 2007). Pristupljeno 3. septembra 2009. .
    32. (engleski) . Službena stranica. Pristupljeno 3. septembra 2009. .
    33. (engleski) . Službena stranica. Pristupljeno 3. septembra 2009. .
    34. (engleski) . Službena stranica. Pristupljeno 3. septembra 2009. .
    35. (engleski) . Službena stranica. Pristupljeno 3. septembra 2009. .
    36. (engleski) . Službena stranica. Pristupljeno 24. marta 2011. .
    37. (engleski) . . Pristupljeno 3. septembra 2009. .
    38. (engleski) . Službena stranica. Pristupljeno 3. septembra 2009. .
    39. (engleski) . ???. Pristupljeno 3. septembra 2009. .
    40. Josh Fet.(ruski) . ??? (juni 2008). - Instaliranje PyDev-a u Eclipse. Pristupljeno 3. septembra 2009. .
    41. (engleski) . ???. Pristupljeno 3. septembra 2009. .
    42. (10.04.2015).
    43. (ruski) . ???. Pristupljeno 3. septembra 2009. .
    44. (engleski) . . Pristupljeno 3. septembra 2009. .
    45. (engleski) . . Pristupljeno 3. septembra 2009. .
    46. (engleski) . ???. Pristupljeno 3. septembra 2009. .
    47. (engleski) . ???. Pristupljeno 3. septembra 2009. .
    48. (engleski) (nedostupan link - priča) . ???. Pristupljeno 3. septembra 2009. .
    49. (engleski) . ???. Pristupljeno 3. septembra 2009.

    Linkovi

    • (engleski)
    • (engleski)
    • (Engleski) - Dokumentacija za Eclipse SDK
    • (engleski)
    • (engleski)
    • (engleski) - Advanced Client Platform
    • (engleski)
    • (engleski) IBM
    • IBM (ruski)
    • (ruski) IBM
    • (ruski)
    • (engleski) - opcije distribucije Eclipse po principu ključ u ruke za različite oblasti razvoja (Expert Java, Desktop Java, Server Java, Mobile Java, itd.)
    • (ruski) Art Lebedev Studio

    Izvod koji opisuje Eclipse (razvojno okruženje)

    Sljedećeg dana Rostov je otpratio princezu Mariju u Jaroslavlj, a nekoliko dana kasnije i sam je otišao u puk.

    Sonjino pismo Nikoli, koje je bilo ispunjenje njegove molitve, napisano je od Trojice. Ovo je uzrok. Pomisao na to da će se Nikola oženiti bogatom nevjestom sve je više zaokupljala staru groficu. Znala je da je Sonya glavna prepreka tome. I Sonjin život U poslednje vreme, posebno nakon Nikolajevog pisma, koje opisuje njegov susret u Bogučarovu sa kneginjom Marijom, postaje sve teže i teže u groficinoj kući. Grofica nije propustila nijednu priliku da Sonji uputi uvredljiv ili okrutan nagovještaj.
    Ali nekoliko dana pre odlaska iz Moskve, dirnuta i uzbuđena svime što se dešavalo, grofica, pozivajući Sonju, umesto prekora i zahteva, okrenula joj se sa suzama i molila se da ona, žrtvujući se, uzvrati za sve. ono što je učinjeno za nju je da raskine njene veze sa Nikolajem.
    "Neću biti miran dok mi ne date ovo obećanje."
    Sonja je histerično briznula u plač, kroz jecaje je odgovorila da će sve učiniti, da je spremna na sve, ali nije dala direktno obećanje i u duši nije mogla da se odluči šta se od nje traži. Morala je da se žrtvuje za sreću porodice koja ju je hranila i odgajala. Sonja je bila navika da se žrtvuje za sreću drugih. Njen položaj u kući bio je takav da je samo na putu žrtvovanja mogla pokazati svoje vrline, a navikla je i voljela da se žrtvuje. Ali prvo, u svim činovima samopožrtvovanja, ona je radosno shvatila da je žrtvujući sebe time podigla svoju vrijednost u očima sebe i drugih i postala dostojnija Nicolasa, kojeg je najviše voljela u životu; ali sada se njena žrtva morala sastojati u odricanju od onoga što je za nju predstavljalo cjelokupnu nagradu žrtve, cjelokupni smisao života. I prvi put u životu osjetila je gorčinu prema onim ljudima koji su joj koristili da bi je još bolnije mučili; Osećao sam zavist prema Nataši, koja nikada nije iskusila ništa slično, nikada nije imala potrebu za žrtvovanjem i terala je druge da se žrtvuju, a ipak su je svi voleli. I po prvi put, Sonja je osetila kako je iz njene tihe, čiste ljubavi prema Nikoli odjednom počelo da raste strastveno osećanje koje je stajalo iznad pravila, vrline i religije; i pod utjecajem tog osjećaja, Sonja je nehotice, naučena svojim zavisnim životom u tajnosti, odgovorila grofici općenito, nejasne riječi, izbjegavala je razgovore s njom i odlučila da sačeka sastanak s Nikolajem kako se na ovom sastanku ne bi oslobodila nju, ali, naprotiv, zauvek se veže za njega.
    Nevolje i užas posljednjih dana boravka Rostovovih u Moskvi zaglušili su mračne misli koje su je opterećivale. Bilo joj je drago što je od njih našla spas u praktičnim aktivnostima. Ali kada je saznala za prisustvo princa Andreja u njihovoj kući, uprkos svom iskrenom sažaljenju koje je osećala prema njemu i Nataši, obuzeo ju je radosni i sujeverni osećaj da Bog ne želi da bude odvojena od Nikole. Znala je da Nataša voli jednog princa Andreja i nije prestala da ga voli. Znala je da će se sada, okupljeni u tako strašnim uslovima, ponovo voleti i da tada Nikola, zbog srodstva koje će biti među njima, neće moći da se oženi princezom Marijom. Uprkos svom užasu svega što se dogodilo zadnji dani i tokom prvih dana putovanja, ovo osećanje, ta svest o intervenciji Proviđenja u njene lične poslove, prijalo je Sonji.
    Prvi dan na putovanju Rostovci su proveli u Trojice Lavri.
    U hotelu Lavra Rostovima su dodijeljene tri velike sobe, od kojih je jednu zauzeo princ Andrej. Ranjenom je tog dana bilo mnogo bolje. Nataša je sjedila s njim. U susjednoj sobi sjedili su grof i grofica, s poštovanjem razgovarajući s rektorom, koji je posjetio njihove stare poznanike i investitore. Sonja je sedela baš tu i mučila ju je radoznalost o čemu pričaju princ Andrej i Nataša. Slušala je zvukove njihovih glasova iza vrata. Vrata sobe princa Andreja su se otvorila. Nataša je izašla odatle uzbuđenog lica i, ne primetivši monaha koji joj je ustao u susret i uhvatio široki rukav njegove desne ruke, prišla Sonji i uhvatila je za ruku.
    - Nataša, šta to radiš? Dođi ovamo”, rekla je grofica.
    Nataša je došla pod blagoslov, a iguman je savjetovao da se za pomoć obrate Bogu i njegovom svecu.
    Odmah nakon što je iguman otišao, Našata je uzela prijateljicu za ruku i ušla sa njom u praznu sobu.
    - Sonya, zar ne? hoće li biti živ? - ona je rekla. – Sonja, kako sam srećna i kako sam nesrećna! Sonja, draga moja, sve je kao pre. Da je samo živ. Ne može... jer, zato što... to... - I Nataša je briznula u plač.
    - Pa! Znao sam! Hvala Bogu”, rekla je Sonya. - Biće živ!
    Sonya nije bila ništa manje uzbuđena od svoje prijateljice - kako zbog straha i tuge, tako i zbog svojih ličnih misli koje nikome nisu iznosile. Ona je, jecajući, ljubila i tešila Natašu. “Da je samo živ!” - pomislila je. Nakon što su plakali, razgovarali i obrisali suze, oba prijatelja prišla su vratima princa Andreja. Nataša je pažljivo otvorila vrata i pogledala u sobu. Sonya je stajala pored nje na poluotvorenim vratima.
    Princ Andrej je ležao visoko na tri jastuka. Njegovo blijedo lice bilo je mirno, oči zatvorene i moglo se vidjeti kako ravnomjerno diše.
    - Oh, Natasha! – Sonja je odjednom skoro vrisnula, zgrabila rođaka za ruku i povukla se od vrata.
    - Šta? Šta? – upitala je Nataša.
    “Ovo je ovo, ono, ono...” rekla je Sonja blijeda lica i drhtavih usana.
    Nataša je tiho zatvorila vrata i otišla sa Sonjom do prozora, još ne shvatajući šta joj govore.
    „Sećaš li se“, rekla je Sonja uplašenog i ozbiljnog lica, „sećaš li se kada sam te tražila u ogledalu... U Otradnom, u vreme Božića... Sećaš li se šta sam videla?..
    - Da da! - rekla je Nataša, širom otvorivši oči, nejasno se prisjećajući da je Sonja tada rekla nešto o princu Andreju, kojeg je vidjela kako leži.
    - Sjećaš li se? – nastavila je Sonja. “Tada sam to vidio i rekao svima, i tebi i Dunjaši.” “Vidjela sam da leži na krevetu”, rekla je, praveći pokret rukom sa podignutim prstom na svaki detalj, “i da je zatvorio oči, i da je bio prekriven ružičastim ćebetom, i da je sklopio je ruke”, rekla je Sonya, pazeći da dok je opisivala detalje koje je sada vidjela, te iste detalje je vidjela i tada. Tada nije ništa vidjela, ali je rekla da je vidjela ono što joj je palo na pamet; ali ono što je tada smislila činilo joj se jednako valjanim kao i svako drugo sjećanje. Ono što je tada rekla, da joj je uzvratio pogled i nasmiješio se i da je bio prekriven nečim crvenim, ne samo da je zapamtila, već je bila čvrsto uvjerena da je već tada rekla i vidjela da je on bio prekriven ružičastim, upravo ružičastim, ćebetom i da su mu oči bile zatvorene.
    „Da, da, baš u ružičastom“, rekla je Nataša, koja se sada takođe sjećala onoga što je rečeno u ružičastom i u tome je vidjela glavnu neobičnost i misteriju predviđanja.
    – Ali šta ovo znači? – rekla je Nataša zamišljeno.
    - Oh, ne znam koliko je sve ovo neobično! - rekla je Sonya, hvatajući se za glavu.
    Nekoliko minuta kasnije, knez Andrej je nazvao, a Nataša je došla da ga vidi; a Sonya, doživljavajući emociju i nježnost koju je rijetko iskusila, ostala je na prozoru, razmišljajući o neobičnoj prirodi onoga što se dogodilo.
    Na ovaj dan se pojavila prilika da se pošalju pisma vojsci, a grofica je napisala pismo svom sinu.
    „Sonja“, rekla je grofica, podižući glavu od pisma dok je njena nećakinja prolazila pored nje. – Sonja, nećeš li pisati Nikolenki? - reče grofica tihim, drhtavim glasom, a u pogledu njenih umornih očiju, gledajući kroz naočare, Sonja je pročitala sve što je grofica razumela u ovim rečima. Ovaj pogled izražavao je molbe, strah od odbijanja, stid što se mora tražiti i spremnost na nepomirljivu mržnju u slučaju odbijanja.
    Sonya priđe grofici i, klečeći, poljubi joj ruku.
    „Pisaću, maman“, rekla je.
    Sonya je bila smekšana, uzbuđena i dirnuta svime što se tog dana dogodilo, a posebno misterioznim izvođenjem proricanja sudbine koje je upravo vidjela. Sada kada je znala da povodom obnove Natašine veze sa princem Andrejem, Nikolaj nije mogao da se oženi princezom Marijom, radosno je osetila povratak onog raspoloženja samopožrtvovanja u kojem je volela i navikla da živi. I sa suzama u očima i sa radošću što je shvatila velikodušno delo, ona je, nekoliko puta prekidana suzama koje su zamaglile njene baršunaste crne oči, napisala to dirljivo pismo čije je primanje toliko zadivilo Nikolaja.

    U stražarnici u koju je Pjer odveden, oficir i vojnici koji su ga odveli su se prema njemu odnosili neprijateljski, ali u isto vreme i s poštovanjem. U njihovom odnosu prema njemu još se osjećala sumnja ko je on (da li je vrlo važna osoba), te neprijateljstvo zbog njihove još svježe lične borbe s njim.
    Ali kada je ujutro drugog dana došla smjena, Pjer je osjetio da za novu gardu - za oficire i vojnike - to više nema značenje koje je imalo za one koji su ga odveli. I zaista, u ovom velikom, debelom čoveku u seljačkom kaftanu, stražari sutradan više nisu videli onog živog čoveka koji se tako očajnički borio sa pljačkašem i pratećim vojnicima i rekao svečanu frazu o spasavanju deteta, ali je video samo sedamnaesti od onih koji su iz nekog razloga, po nalogu najviših vlasti, zadržani, zarobljeni Rusi. Ako je bilo nešto posebno u vezi sa Pjerom, to je bio samo njegov plašljiv, pažljivo zamišljen izgled i francuski jezik, na kojem je, za Francuze iznenađujuće, dobro govorio. Uprkos činjenici da je Pjer istog dana bio povezan sa ostalim osumnjičenim, pošto je posebna prostorija koju je on zauzimao bila potrebna službeniku.
    Svi Rusi koji su držani uz Pjera bili su ljudi najnižeg ranga. I svi su ga, prepoznavši Pjera kao majstora, klonili, pogotovo što je govorio francuski. Pjer je sa tugom čuo ismevanje samog sebe.
    Sljedeće večeri, Pjer je saznao da će se svim ovim zatvorenicima (a vjerovatno i njemu samom) suditi za podmetanje požara. Trećeg dana, Pjer je sa drugima odveden u kuću u kojoj su sedeli francuski general sa belim brkovima, dva pukovnika i drugi Francuzi sa šalovima na rukama. Pjeru su, zajedno sa drugima, postavljana pitanja o tome ko je on sa preciznošću i sigurnošću s kojom se obično postupa prema optuženima, navodno prevazilazeći ljudske slabosti. gde je bio? u koju svrhu? i tako dalje.
    Ova pitanja, ostavljajući po strani suštinu životne stvari i isključujući mogućnost otkrivanja te suštine, kao i sva pitanja koja se postavljaju na sudovima, imala su za cilj samo da postave žlijeb kojim su sudije htjele da okrivljeni odgovori teku i dovedu ga do željeni cilj, odnosno optužba. Čim je počeo da govori nešto što nije odgovaralo svrsi optužbe, oni su uzeli brazdu, i voda je mogla da teče gde je htela. Osim toga, Pjer je iskusio isto što i optuženi doživljava na svim sudovima: zbunjenost zašto su mu postavljena sva ova pitanja. Smatrao je da se ovaj trik ubacivanja žlijeba koristio samo iz snishodljivosti ili, takoreći, iz pristojnosti. Znao je da je on u vlasti tih ljudi, da ga je samo vlast dovela ovamo, da im je samo vlast dala pravo da traže odgovore na pitanja, da je jedini cilj ovog sastanka da ga optuže. I stoga, pošto je postojala moć i postojala je želja za optuživanjem, nije bilo potrebe za trikom pitanja i suđenja. Bilo je očigledno da svi odgovori moraju dovesti do krivice. Na pitanje šta je radio kada su ga odveli, Pjer je s nekom tragedijom odgovorio da je nosio dete svojim roditeljima, qu"il avait sauve des flammes [koje je spasao od plamena]. - Zašto se borio sa pljačkašem Pjer je odgovorio, da je branio ženu, da je zaštita uvređene žene dužnost svakog čoveka, da... Zaustavljen je: ovo nije išlo u stvar. Zašto je on bio u dvorištu kuće u plamenu ,gde su ga videli svedoci?On je odgovorio da ide da vidi šta se dešava u Moskvi.Opet su ga zaustavili:nisu ga pitali gde ide i zašto je blizu vatre?Ko je on?Ponavljali su prvo mu pitanje na koje je rekao da ne zeli da odgovori.Opet je odgovorio da to ne moze da kaze.
    - Zapiši, ovo nije dobro. „Vrlo je loše“, strogo mu je rekao general sa belim brkovima i crvenim, rumenim licem.
    Četvrtog dana izbili su požari na Zubovskom valu.
    Pierre i još trinaest drugih odvedeni su u Krimski Brod, u kočiju jedne trgovačke kuće. Šetajući ulicama, Pjer se gušio od dima, koji kao da je stajao nad cijelim gradom. Požari su bili vidljivi iz različitih pravaca. Pjer još nije shvatio značaj paljenja Moskve i sa užasom je gledao na ove požare.
    Pjer je još četiri dana ostao u kočiji jedne kuće u blizini Krimskog Broda, a ovih dana je iz razgovora francuskih vojnika saznao da su svi ovdje držani svaki dan očekivali maršalovu odluku. Koji maršal, Pjer nije mogao saznati od vojnika. Za vojnika je, očigledno, maršal izgledao kao najviša i pomalo misteriozna karika na vlasti.
    Ovi prvi dani, do 8. septembra, dana kada su zatvorenici odvedeni na sekundarno ispitivanje, bili su za Pjera najteži.

    X
    U štalu je 8. septembra ušao veoma važan oficir da vidi zarobljenike, sudeći po poštovanju sa kojim su se stražari odnosili prema njemu. Ovaj oficir, verovatno štabni oficir, sa spiskom u rukama, napravio je prozivku svih Rusa, prozvavši Pjera: celui qui n "avoue pas son nom [onaj koji ne kaže svoje ime]. I ravnodušno i lijeno gledajući sve zarobljenike, naredio je stražari da ih oficir obuče i sredi prije nego što ih odvede do maršala.Sat vremena kasnije stigla je četa vojnika, a Pjer i još trinaest drugih odvedeni su na Djevojačko polje .Dan je bio vedar,sunčan posle kiše,a vazduh neobično čist.Dim se nije slegnuo kao onog dana kada je Pjer izveden iz stražarnice Zubovskog vala, dim se dizao u kolonama u čistom vazduhu.Vatre vatri se nigde nije videlo, ali stubovi dima su se dizali sa svih strana, a cela Moskva, sve što je Pjer mogao da vidi, bila je jedan požar.Sa svih strana su se mogli videti prazni prostori sa pećima i dimnjacima, a povremeno i ugljenisani zidovi kamenih kuća.Pjer je pomno gledao u vatru i nije prepoznao poznate kvartove grada.Ponegde su se videle preživele crkve.Kremlj,nerazrušen,izdaleka se belio sa svojim kulama i Ivanom Velikim. U blizini je veselo blistala kupola Novodevičkog samostana, a odatle se posebno glasno čulo zvono jevanđelja. Ova objava podsjetila je Pjera da je nedjelja i praznik Rođenja Djevice Marije. Ali, činilo se da nema ko da proslavi ovaj praznik: svuda je bilo pustošenja od požara, a od ruskog naroda samo je povremeno bilo odrpanih, uplašenih ljudi koji su se sakrili na pogled Francuza.
    Očigledno, rusko gnijezdo je opustošeno i uništeno; ali iza uništenja ovog ruskog poretka života, Pjer je nesvesno osećao da je nad ovim razorenim gnezdom uspostavljen njegov, sasvim drugačiji, ali čvrst francuski poredak. Osjetio je to od pogleda na one vojnike koji su hodali veselo i veselo, u pravilnim redovima, koji su ga pratili s drugim zločincima; osetio je to u vidu nekog važnog francuskog zvaničnika u dvokrevetnoj kočiji, koju je vozio vojnik, koji je vozio prema njemu. Osjetio je to po veselim zvucima pukovske muzike koji su dopirali sa lijeve strane polja, a posebno je to osjetio i razumio iz spiska koji je jutros pročitao gostujući francuski oficir, prozivajući zarobljenike. Pjera su odveli neki vojnici, odveli na jedno ili drugo mjesto sa desetinama drugih ljudi; činilo se da mogu zaboraviti na njega, pomiješati ga s drugima. Ali ne: njegovi odgovori dati tokom ispitivanja vratili su mu se u obliku njegovog imena: celui qui n "avoue pas son nom. I pod ovim imenom, kojeg se Pjer plašio, sada su ga vodili nekamo, sa nesumnjivim poverenjem na licima ispisano da su svi ostali zarobljenici i on ti koji su potrebni i da ih vode tamo gde su bili potrebni.Pjer se osećao kao beznačajni komadić uhvaćen u točkovima njemu nepoznate, ali ispravne mašine.
    Pjer i drugi kriminalci odvedeni su na desnu stranu Djevojačkog polja, nedaleko od manastira, do velike bijele kuće sa ogromnom baštom. Ovo je bila kuća kneza Ščerbatova, u kojoj je Pjer ranije često posjećivao vlasnika i u kojoj je sada, kako je saznao iz razgovora vojnika, bio stacioniran maršal, vojvoda od Eckmuhl-a.
    Odvedeni su na trem i jedan po jedan uvedeni u kuću. Pierre je doveden kao šesti. Kroz staklenu galeriju, predvorje i predsoblje, koje je Pjer poznavao, uveden je u dugu, nisku kancelariju, na čijim vratima je stajao ađutant.
    Davout je sjedio na kraju sobe iznad stola, s naočalama na nosu. Pjer mu se približio. Davout se, ne podižući oči, očito nosio s nekim papirom koji je ležao ispred njega. Ne podižući oči, tiho je upitao:
    – Qui etes vous? [Ko si ti?]
    Pjer je ćutao jer nije mogao da izgovori reči. Za Pjera, Davout nije bio samo francuski general; za Pierrea Davouta, on je bio čovjek poznat po svojoj okrutnosti. Gledajući hladno lice Davouta, koji je, poput strogog učitelja, pristao da zasad ima strpljenja i čeka odgovor, Pjer je osetio da bi ga svaka sekunda odlaganja mogla koštati života; ali nije znao šta da kaže. Nije se usudio da kaže ono što je rekao na prvom ispitivanju; otkrivanje nečijeg čina i položaja bilo je i opasno i sramotno. Pjer je ćutao. Ali pre nego što je Pjer uspeo da se odluči na bilo šta, Davo je podigao glavu, podigao naočare na čelo, suzio oči i pažljivo pogledao Pjera.
    „Poznajem ovog čoveka“, rekao je odmerenim, hladnim glasom, očigledno sračunatim da uplaši Pjera. Hladnoća koja je prethodno tekla niz Pjerova leđa zgrabila mu je glavu poput poroka.
    – Mon generale, vous ne pouvez pas me connaitre, je ne vous ai jamais vu... [Nisi me mogao poznavati, generale, nikad te nisam vidio.]
    "C"est un espion russe, [Ovo je ruski špijun,"] Davout ga je prekinuo, obraćajući se drugom generalu koji je bio u prostoriji i kojeg Pjer nije primetio. I Davout se okrenuo. Sa neočekivanim bukom u glasu, Pjer odjednom brzo progovori.
    "Ne, monseigneur", rekao je, iznenada se sjetivši da je Davout vojvoda. - Non, Monseigneur, vous n"avez pas pu me connaitre. Je suis un officier militianaire et je n"ai pas quitte Moscow. [Ne, Vaše Visočanstvo... Ne, Vaše Visočanstvo, ne biste me mogli poznavati. Ja sam policajac i nisam napustio Moskvu.]
    - Votre nom? [Vaše ime?] - ponovio je Davout.
    - Besouhof. [Bezuhov.]
    – Qu"est ce qui me prouvera que vous ne mentez pas? [Ko će mi dokazati da ne lažeš?]
    - Monseigneur! [Vaše Visočanstvo!] - Pjer je povikao ne uvrijeđenim, ali molećivim glasom.
    Davout je podigao oči i pažljivo pogledao Pjera. Gledali su se nekoliko sekundi, a ovaj pogled je spasio Pjera. U tom pogledu, pored svih uslova rata i suđenja, između ove dvije osobe uspostavljen je ljudski odnos. Obojica su u tom minutu nejasno doživjeli bezbroj stvari i shvatili da su obojica djeca čovječanstva, da su braća.
    Na prvi pogled za Davouta, koji je samo podigao glavu sa svoje liste, na kojoj se ljudski poslovi i život nazivaju brojevima, Pjer je bio samo okolnost; i, ne uzimajući u obzir loše djelo na svojoj savjesti, Davout bi ga upucao; ali sada je u njemu već vidio osobu. Razmislio je na trenutak.
    – Comment me prouverez vous la verite de ce que vous me dites? [Kako ćeš mi dokazati istinitost svojih riječi?] - hladno je rekao Davout.
    Pjer se sjetio Rambala i nazvao svoj puk, svoje prezime i ulicu u kojoj se kuća nalazila.
    "Vous n"etes pasce que vous dites, [Nisi ono što kažeš.]", rekao je Davout ponovo.
    Pjer je drhtavim, isprekidanim glasom počeo da pruža dokaze o istinitosti svog svedočenja.
    Ali u to vrijeme uđe ađutant i nešto prijavi Davoutu.
    Davout je iznenada zasjao na vesti koje je preneo ađutant i počeo da se zakopčava. Očigledno je potpuno zaboravio na Pjera.
    Kada ga je ađutant podsjetio na zatvorenika, on se namrštio, klimnuo prema Pjeru i rekao da ga odvedu. Ali Pjer nije znao kuda su ga trebali odvesti: nazad u separe ili na pripremljeno stratište, koje su mu drugovi pokazali dok je šetao Djevojačkim poljem.
    Okrenuo je glavu i vidio da ađutant opet nešto pita.
    - Oui, sans doute! [Da, naravno!] - rekao je Davout, ali Pjer nije znao šta je "da".
    Pjer se nije sjećao kako, koliko je hodao i gdje. On je, u stanju potpune besmislenosti i tuposti, ne videći ništa oko sebe, pomerao noge zajedno sa ostalima dok svi nisu stali, a on je stao. Za sve to vreme, jedna misao je bila u Pjerovoj glavi. Bila je to pomisao ko ga je konačno osudio na smrt. To nisu bili isti ljudi koji su ga ispitivali u komisiji: niko od njih to nije htio i, očigledno, nije mogao. Nije ga Davout pogledao tako ljudski. Još jedan minut i Davout bi shvatio da nešto rade pogrešno, ali ovaj trenutak je prekinuo ađutant koji je ušao. A ovaj ađutant, očigledno, nije htio ništa loše, ali možda nije ni ušao. Ko mu je konačno pogubio, ubio, oduzeo život - Pjera sa svim njegovim sjećanjima, težnjama, nadama, mislima? ko je ovo uradio? I Pjer je osećao da to nije niko.

    19.04.2005. Natalya Dubova

    Zajednica otvorenog koda ima nekoliko ključnih projekata, uključujući, uz Linux OS, stvaranje razvojne platforme Eclipse. Objavljena prije nekoliko godina od IBM Corporation, danas se ova otvorena platforma za integraciju alata za razvoj aplikacija slobodno distribuira širom svijeta. open source i razvija ga zajednica korisnika.

    Ne ulazeći u raspravu o pitanju da li je programiranje umjetnost ili zanat, priznajemo: u oba slučaja programer ne može bez alata za kreiranje programa. Uporedo sa evolucijom procesa programiranja (od "čarolija" preko mašinskih komandi do upotrebe jezika visokog nivoa), poboljšale su se i mogućnosti automatizacije napornog rada programera. Rana razvojna okruženja bila su ograničena na izvršavanje kompajlera, linkera, učitavača i debagera uzastopno koristeći interfejs komandna linija. Osamdesetih godina, zajedno sa personalni računari Pojavilo se tržište softverskih proizvoda nove klase - integrisanih razvojnih okruženja (IDE) za algoritamske (Pascal, itd.), a zatim objektno orijentisane (Smalltalk, C++) programske jezike. Pravi procvat ovo područje postignuto zahvaljujući aktivnom prilagođavanju programera Java jezika; Najpoznatija integrisana okruženja za kreiranje programa na ovom jeziku su Borland JBuilder, Symantec Visual Cafe, Microsoft J++, IBM VisualAge i Oracle JDeveloper.

    Glavna svrha IDE-a je povećanje produktivnosti programera. Prva razvojna okruženja, koja su kombinovala funkcionalnost programskih uređivača teksta, kompajlera i debagera, prvenstveno su oslobodila potrošače rutinskih operacija. Vremenom je IDE-ov skup funkcija postao bogatiji. Uključuje kompajlere korak po korak, pretraživače za logičniju prezentaciju programa, alate za automatsko generiranje koda i vizuelni urednici za kreiranje grafičkih korisničkih interfejsa. Prateći trendove vremena, razvojna okruženja su se transformisala od alata za povećanje produktivnosti programera u sredstva za podršku svim fazama kolektivnog rada na softverski projekat. Najnoviji trend je transformacija IDE-a u ALM (upravljanje životnim ciklusom aplikacije), integrisani sistem upravljanja životnim ciklusom aplikacije - od definisanja zahteva i modeliranja do upravljanja konfiguracijom i verzijama softvera, implementacije i održavanja gotovog rešenja.

    Svaka nova faza u evoluciji IDE-a čini razvojno okruženje složenijim. Međutim, korisnici takvih proizvoda i dalje su bili primorani da pribjegavaju alatima koji nisu integrirani u IDE, makar samo zato što kreiranje aplikacije nije ograničeno na pisanje i otklanjanje grešaka u programima u jednom programskom jeziku. Potreba za korištenjem, na primjer, HTML stranica, shema relacijskih baza podataka ili dijelova koda na drugim jezicima (kao što su Cobol ili PL/1) u aplikacijskom sistemu prisiljava programere da koriste odgovarajuće alate koji izvorno nisu bili uključeni u IDE.

    Zbog toga mnogi dobavljači komercijalnog razvojnog okruženja nastoje da ih učine što otvorenijim i obezbede posebne mehanizme za integraciju eksternih alata. Ali nijedno okruženje ne može zadovoljiti sve moguće zahtjeve korisnika. Da biste to učinili, mora biti potpuno neutralan prema programskom jeziku i podržavati maksimalan skup funkcija. Eclipse nije takvo okruženje, ali je baza, platforma sa kojom možete graditi multifunkcionalna i višejezična razvojna okruženja.

    Platforma

    Kako objašnjavaju inicijatori Eclipse projekta, njegova ideja je bila da se napravi “Apache za razvojne alate” – otvorena platforma koja pruža maksimalan osnovne sposobnosti za razvojna okruženja i obezbjeđivanje mehanizama za integraciju različitih alata. Prvu verziju ove platforme razvio je IBM i objavljen kao open source krajem 2001. Ubrzo su počele da se pojavljuju komercijalne implementacije zasnovane na Eclipse-u, a pionir je bio WebSphere Studio Application Developer 4.0. Sada postoji čitav razvojni ekosistem otvorenog koda oko Eclipse-a, koji okuplja dobavljače alata i korisnike, istraživačke organizacije i individualne programere.

    U službenim dokumentima Eclipse Foundation ( www.eclipse.org Eclipse platforma je definisana kao neutralna, otvorena razvojna platforma koja pruža okvir i primerne mogućnosti kao i proširive alate. Komplet alata u okviru Eclipse platforme je standardan u smislu da provjerava primjenjivost osnovnih mogućnosti platforme, ilustruje tipične situacije njihovog korištenja i podržava razvoj i održavanje same Eclipse platforme. Komplet alata je proširiv jer je njegovoj funkcionalnosti dostupan preko dokumentovanih softverskih interfejsa. Osnovni principi koji su vodili kreatore Eclipse platforme i prema kojima se ona nastavlja razvijati su sljedeći:

    • podrška za izgradnju alata za razvoj aplikacija;
    • podrška za neograničen broj dobavljača alata, uključujući nezavisne programere softvera;
    • podrška za alate za rad sa proizvoljnim tipovima sadržaja, uključujući HTML, Java, C, JavaServer Pages, EJB, XML, GIF, itd.;
    • obezbeđivanje „bešavne“ integracije alata za rad sa njima razne vrste sadržaj različitih proizvođača;
    • podrška za razvojna okruženja aplikacija sa redovnim i grafičkim korisničkim interfejsima;
    • pružanje mogućnosti pokretanja razvojnog okruženja zasnovanog na različitim operativni sistemi(danas su alati bazirani na Eclipse implementirani za Linux, HP-UX, IBM AIX, Sun Solaris, QNX, Mac OS X, Windows);
    • uzimajući u obzir popularnost Java jezika prilikom kreiranja razvojnih alata u interesu razvoja platforme.

    Eclipse platforma je razvojno okruženje napisano u Javi za opće namjene, čija arhitektura omogućava integraciju različitih alata i programskih jezika za rješavanje različitih problema. Mehanizmi takve integracije vam omogućavaju da koristite Eclipse platformu za izgradnju naprednih razvojnih okruženja, oslobađajući vas od rutine pisanja osnovnih alata u korist kreiranja složenih, specijalizovanih funkcija. Time se ne rješava samo problem podrške multifunkcionalnim i višejezičnim razvojnim okruženjima, već se postavlja i temelj za pojednostavljenje prelaska iz jednog tipa okruženja u drugi u procesu njihove evolucije. Razvijena od strane zajednice programera, Eclipse platforma će akumulirati najnovija dostignuća, čineći ih dostupnim programerima određenih proizvoda i eliminirajući potrebu za fundamentalnim redizajniranjem njihovih sistema.

    Eclipse razvojno okruženje

    Osnova arhitekture Eclipse platforme je princip korištenja dodataka. Platforma implementira mehanizme za otkrivanje, integraciju i izvršavanje takvih modula (vidi sliku). Programer koji želi da iskoristi mogućnosti Eclipse Platforme piše svoj komplet alata u Javi kao poseban plug-in modul. Ovaj modul će raditi sa datotekama u radnom prostoru, koji je implementiran pomoću komponente radnog prostora. A njegovo korisničko sučelje je bazirano na komponenti radnog stola, koja definira opću strukturu sučelja i mogućnost njegovog proširenja.

    Tipično, jedan dodatak implementira najjednostavniju funkcionalnost IDE-a zasnovanog na Eclipse platformi, dok se složeniji alati sastoje od više modula. Istovremeno, skoro sva ugrađena funkcionalnost Eclipse platforme je takođe implementirana pomoću takvih modula - sa izuzetkom malog jezgra Platform Runtime. Svaki dodatak ima svoju datoteku manifesta, koja opisuje veze ovog modula sa drugima. Kada pokrenete razvojno okruženje zasnovano na Eclipse platformi, komponenta Platform Runtime određuje skup dostupnih dodataka, čita njihove datoteke manifesta i gradi registar dodataka. Nakon pokretanja sistema dodatni moduli se više ne može dodati. Projekat Eclipse implementirao je posebno okruženje za kreiranje dodataka - Plug-In Development Environment (PDE).

    Pomoću posebnih modula implementirane su komponente radnog prostora i korisničkog interfejsa (workbench) Eclipse platforme. Radni prostor sadrži datoteke koje kreiraju korisnici alata implementiranih pomoću dodataka. Komponenta radnog stola pruža opštu strukturu i alate koji vam omogućavaju da proširite mogućnosti korisničkog interfejsa razvojnog okruženja zasnovanog na Eclipse platformi, i uključuje dve komponente za implementaciju alata za pružanje informacija korisniku.

    • Standard Widget Toolkit (SWT) je skup elemenata interfejsa i grafičke biblioteke koji imaju mehanizme za integraciju sa prozorskim sistemom određene operativne platforme, ali implementiraju API-je koji su nezavisni od OS-a. Ovo omogućava izgradnju korisničkih interfejsa razvojnog okruženja prema jedinstvenim principima, koji odgovaraju prozorskom okruženju poznatom potrošaču, ali su namenjeni najširem mogućem spektru operativnih sistema;
    • JFace je komplet alata za implementaciju brojnih uobičajenih zadataka vezanih za programska sučelja pomoću SWT alata.

    Na osnovu API-ja koje obezbeđuju komponente SWT i JFace, izgrađen je personalizovani korisnički interfejs koji određuje strukturu interakcije korisnika sa razvojnim alatima. Sučelje Eclipse platforme organizirano je pomoću uređivača, pogleda i perspektive.

    Svrha uređivača je otvaranje, uređivanje i spremanje objekata radnog prostora. Platforma ima ugrađen uređivač za tekstualne resurse, a ostale karakteristike moraju biti implementirane kao dodaci. Pogledi pružaju informacije o objektu s kojim korisnik radi ovog trenutka. Konačno, mehanizam perspektive vam omogućava da odaberete i organizirate željene uređivače i prikaze koji će biti prikazani na ekranu.

    Organizacija

    Postoje brojne prednosti pokretanja projekata otvorenog koda. Dakle, jedan od zadataka takve platforme je da programerima obezbedi alate sa zajedničke baze, nepromenljive za različita razvojna okruženja. Zašto svaki proizvođač mora ponovo napisati nešto što se može jednom napisati? Ali da bi izgradili svoj razvoj na takvoj platformi, proizvođač mora u potpunosti vjerovati onome tko ju je stvorio. A to je moguće samo ako je u mogućnosti isprobati sve što je uključeno u to, odnosno nabaviti platformu otvorenog koda.

    Razvoj proizvoda u skladu sa principima otvorenog koda poboljšava kvalitet koda, budući da ga zajedno poliraju mnogi zainteresovani programeri. Otklanjanje grešaka postaje lakše i bolje - zahvaljujući pristupu izvornom kodu programa i, opet, uključivanju distribuiranog tima u rad. Zajednički rad nam omogućava da podijelimo rizike stvaranja složenih tehnologija. A kolektivno razvojno tijelo platforme osigurava svoju podršku bez obzira na peripetije koje se mogu dogoditi sa dobavljačima specifičnih razvojnih okruženja. Konačno, korištenje platforme za razvoj otvorenog koda sa fleksibilnim plug-in mehanizmom za implementaciju dodatne funkcionalnosti otvara neograničene mogućnosti za njeno poboljšanje.

    Arhitektura Eclipse platforme

    Međutim, shvatite prednosti modela razvoja otvorenog koda tako što ćete ga jednostavno pustiti „u divljinu“ tehnička platforma, neće raditi. Moramo organizovati proces. Izdavanjem prve verzije Eclipse-a 2001. godine, konzorcij koji je organizirao IBM zajedno s brojnim vodećim tržišnim igračima preuzeo je ovu odgovornost, a u februaru 2004. Upravni odbor Eclipse odlučio je transformirati Eclipse Foundation u ne- profit, nezavisna korporacija.

    Eclipse fondacija, konzorcij od više od 60 kompanija, koordinira napore za poboljšanje Eclipse platforme i drugih projekata otvorenog koda.

    Projekat Eclipse je potpuno otvoren i u njemu može učestvovati svaki zainteresovani developer, koji ne mora biti zaposlenik nijedne kompanije. U principu, svi mogu biti zainteresovani ne samo za detalje razvoja i doprinijeti identifikaciji grešaka, već i sudjelovati u pisanju koda i cjelokupnom dizajnu sljedeće verzije platforme. Međutim, Eclipse slijedi princip stavljanja profesionalizma na prvo mjesto. Programer sa dokazanom profesionalnom reputacijom može računati na dodatnu odgovornost i priliku da aktivno implementira svoje vještine u Eclipse projektima. Neki programeri su definirani kao “učinitelji” jer su odgovorni za izvorni kod i samo oni imaju pravo kreirati nove verzije u spremištu otvorenog izvornog koda. Obično su ovi programeri zaposleni u kompanijama koje ih plaćaju za njihov rad na Eclipse projektima.

    Proces razvoja je iterativan, sa ciljem maksimiziranja uključenosti članova Eclipse zajednice u rad na projektu. Izlasku sljedećeg izdanja prethodi nekoliko faza fiksnog trajanja (oko nekoliko sedmica), od kojih svaka predstavlja potpuni ciklus, uključujući planiranje, razvoj, testiranje i srednje izdanje verzije. Završetak narednog ciklusa prati i otvorena publikacija opisa novih mogućnosti sistema, što stimuliše članove zajednice da diskutuju, koriste i daju preporuke za poboljšanje. Kao rezultat toga, u sljedećim fazama razvoja postaje moguće uzeti u obzir reakciju zajednice na privremeno oslobađanje. Ovo je otvoren proces za kontinuirano poboljšanje Eclipse platforme i razvoj drugih inicijativa zasnovanih na njoj.

    Misija Eclipse tehnološkog projekta je da koordinira napore programera, istraživača, članova naučnih i obrazovnih organizacija kako bi utvrdili izglede za Eclipse platformu i drugi razvoj otvorenog koda. Neki od najznačajnijih istraživačkih podprojekata u ovoj oblasti uključuju razvoj aspektno orijentisanog softvera (AspectJ i AJDT), stvaranje alternativnog kernela za Eclipse Runtime (Equinox), stvaranje platforme za kolaborativni razvoj (Koi), softver upravljanje konfiguracijom (Stellation), alati za definiciju XML šeme i za razvoj zasnovan na modelu (Generative Model Transformer).

    Zajednica

    Upotreba svih materijala generisanih Eclipse projektima podliježe zajedničkoj javnoj licenci (CPL) koju je odobrila Open Source Initiative. Prema CPL-u, svako može besplatno koristiti i distribuirati Eclipse u komercijalne i nekomercijalne svrhe. Sljedeće je besplatno dostupno na eclipse.org:

    • trenutne verzije Eclipse platforme za direktnu upotrebu (u binarnom obliku);
    • spremište izvornog koda u kojem svako može da vidi sadržaj i istoriju revizija bilo koje izvorne datoteke, kao i da dobije skripte za ponovno kompajliranje i izgradnju Eclipse platforme iz izvornih kodova;
    • otvorene forume za diskusiju za diskusiju o Eclipse platformi;
    • baza podataka o greškama za praćenje nedostataka i problema u trenutnim verzijama platforme. Koristeći ovu bazu podataka, korisnici mogu identificirati poznate nedostatke u svojim razvojima zasnovanim na Eclipse-u i objaviti nove probleme koje otkriju;
    • razvojni planovi i kontakti za programere uključene u Eclipse projekte.

    Danas dalje eclipse.org slobodno dostupno - više od stotinu dodataka u izvornom kodu za Eclipse platformu. Eclipse projekti otvorenog koda ukupno imaju više od 2 miliona linija koda.

    Ključ razvoja tržišta softver razvoj ima učešće u Eclipse projektu komercijalnih kompanija. Sa Eclipse platformom, oni imaju unapred izgrađene usluge osnovnog razvojnog okruženja koje su neutralne na jezik i operativnu platformu i mogu da usmere svoje napore i ulaganja na razvoj kompleksne funkcionalnosti koja će njihova rešenja učiniti konkurentnim. Postoje primjeri implementacije zasnovane na Eclipse-u i potpuno opremljenih razvojnih okruženja koje promovišu najnaprednija rješenja u ovoj oblasti, kao i specijaliziranih alata usmjerenih na specifičan niz zadataka.

    Dakle, svi proizvodi iz porodice IBM Rational rade na Eclipse platformi. Borland namjerava da migrira sve svoje alate za podršku na Eclipse životni ciklus aplikacije. Postoji Eclipse verzija QNX-ovih ugrađenih alata za razvoj aplikacija; Wind River implementira sličan projekat. Zauzvrat, Hewlett-Packard nudi okruženje za razvoj komponenti zasnovano na Eclipse-u za svoj sistem Internet Usage Manager, ciljana publika koji su telekom operateri. Nokia je najavila podršku za Eclipse kao razvojnu platformu mobilne aplikacije. IBM je implementirao poseban komplet alata, Autonomic Computing Toolkit, zasnovan na Eclipse-u, dizajniran da podrži tehnologije autonomnog računara u razvijenim aplikacijama. Od svih vodećih svjetskih proizvođača softvera, samo Sun Microsystems i Microsoft ne sarađuju sa Eclipse fondacijom.

    Prodavci komercijalnih okruženja zasnovanih na Eclipse-u dozvoljavaju nezavisnim razvojnim kompanijama da prodaju dodatke za svoj IDE, a uobičajeno je da kompanije prodaju isti vlasnički plug-in za različita okruženja zasnovana na Eclipse-u. Ovo nije samo metod razvoja novih tržišta, već i drugi način da se poveća značaj projekta. Korisnici cijene slobodu izbora: ako nisu zadovoljni postojećom funkcionalnošću okruženja zasnovanog na platformi otvorenog koda, mogu je proširiti kroz samorazvoj ili kupovinom komercijalnih rješenja istog formata.

    Ove grupe koriste Eclipse razvoj na različite načine, ali svi oni doprinose njihovom razvoju. Trend je korištenje Eclipse platforme za izgradnju ne-IDE aplikacija. Ovo je moguće jer nema mnogo elemenata specifičnih za razvojno okruženje u tehnološkom rješenju Eclipse Platforme. U trećoj verziji Eclipse-a, postoji evolucija od platforme za razvojna okruženja do platforme za implementaciju potpuno opremljenih klijentskih radnih stanica (Rich Client Platform). Nije slučajno što IBM implementira svoje obećavajuće radno okruženje za saradnju zasnovano na Eclipse-u.

    Književnost

    1. Marc R. Erickson, Angus McIntyre. , 2001, novembar.
    2. J. dea Rivieres, J. Wiegand. Eklipsa. Platforma za integraciju razvojnih alata. IBM Systems Journal, 2004, br. 2.

    Eclipse organizacijska struktura

    Koordinaciju razvoja Eclipsea i učešće u projektima otvorenog koda različitih organizacija i pojedinačnih programera vrši neprofitni nezavisni konzorcij Eclipse Foundation

    Upravni odbor Eclipse fondacije sastoji se od četiri glavne kategorije članova:

    • strateški programeri (Strategic Developers) - kompanije Actuate, Borland, IBM, Computer Associates, Intel, QNX, Wind River, Sybase, Scapa Technologies, BEA Systems;
    • strateški potrošači (Strategic Consumers) - HP, Montavista Software, SAP, Serena Software;
    • uključeni dobavljači (Add-in Providers);
    • Open Source projekat vodi.

    Svi strateški programeri i strateški potrošači su u upravnom odboru, a druge dvije grupe delegiraju svoje predstavnike u njega. Strateški članovi konzorcijuma takođe imaju određena prava da učestvuju u odborima za upravljanje projektima i savetima koji koordiniraju razvojne procese.

    Konzorcij vodi nekoliko osnovnih projekata otvorenog koda, koji uključuju različit broj potprojekata. Osnovnim projektom upravlja Odbor za upravljanje projektima (PMC). Za upravljanje razvojem u cjelini, formiraju se tri glavna vijeća - Vijeće za zahtjeve, Vijeće za arhitekturu i Vijeće za planiranje.

    Odbor za zahtjeve analizira i strukturira zahtjeve projekta. Kombiniraju zahtjeve usmjerene na postizanje općih ciljeva Eclipse fondacije i specifičnih ciljeva projekta, rješavanje problema ključnih članova konzorcijuma i razvoj Eclipse ekosistema. Na osnovu analize formuliše se lista tema i prioriteta koji će odrediti tok razvoja. Odbor za arhitekturu je odgovoran za razvoj arhitekture Eclipse platforme, jasno je definira, komunicira razvojnim timovima i štiti ih od nenamjernog lažnog predstavljanja. Vijeće za planiranje kreira koordinirani plan objavljivanja platforme.

    Projekte provode razvojni timovi koje predvode projektni menadžeri i uključuju programere i odgovorne programere. Prvi se bave pisanjem koda, identifikacijom grešaka, testiranjem i dokumentovanjem programa, a obavljaju i druge poslove u okviru projekta. Odgovorni programeri imaju pravo dodavanja u repozitorijum izvornog koda i moraju uticati na napredak razvoja unutar projekta. Kompanije koje je Eclipse Foundation odredila kao strateške programere su obavezne da vode najmanje jedan projekat. Takođe se ohrabruju da vode komitete.



    Eclipse je Java-bazirana, open source, proširiva razvojna platforma. U suštini, to je jednostavno razvojno okruženje i skup usluga za izgradnju aplikacija zasnovanih na ugrađenim komponentama (plugins). Na sreću, Eclipse dolazi sa standardnim skupom dodataka, uključujući dobro poznate Java razvojne alate (JDT).

    Iako je većina korisnika koji koriste Eclipse kao Java integrisano razvojno okruženje (IDE) zadovoljna njime, postoji mnogo više od toga. Eclipse takođe uključuje okruženje za razvoj dodataka (PDE), koje će prvenstveno biti od interesa za one koji žele da prošire sam Eclipse, jer vam omogućava da kreirate sopstvene alate koji su ugrađeni u Eclipse okruženje. Budući da je Eclipse u potpunosti napravljen od dodataka, svi programeri alata imaju priliku ponuditi vlastita proširenja za Eclipse i pružiti korisnicima dosljedno i besprijekorno integrirano razvojno okruženje (IDE).

    Ovaj integritet i konzistentnost nisu jedinstveni za Java razvojne alate. Iako je Eclipse napisan u Javi, može se koristiti sa drugim jezicima. Na primjer, dodaci su već dostupni (ili se razvijaju) koji podržavaju programske jezike kao što su C/C++ i COBOL. Eclipse framework se takođe može koristiti kao osnova za druge vrste aplikacija koje nisu povezane sa razvojem softvera, kao što su sistemi za upravljanje sadržajem.

    Odličan primjer aplikacije zasnovane na Eclipse-u je IBM-ov Rational Software Architect, koji čini osnovu IBM-ove porodice Java razvojnih alata.

    Eclipse je open source

    Softver otvorenog koda se izdaje pod licencom osmišljenom da garantuje određena prava korisnicima. Najočigledniji od njih je, naravno, da izvorni kod mora biti dostavljen korisnicima, a oni imaju svako pravo da sami modificiraju i distribuiraju softver. Ova zaštita korisničkih prava postiže se putem mehanizma koji se zove "copyleft": softverska licenca je zaštićena autorskim pravima i zabranjuje distribuciju softvera osim ako korisniku nisu odobrena takva prava. Copyleft licenca također zahtijeva da sav softver koji distribuiraju korisnici bude pokriven originalnom licencom bez izmjena. Dakle, značenje autorskog prava je u suštini okrenuto naglavačke, a copyleft licenca, koja koristi autorska prava da bi dala prava korisniku, a ne da bi ih zadržala za programera softvera, često se u šali kaže "sva prava su izopačena" (sva prava su obrnuta ).

    Veliki dio uobičajenog straha, nesigurnosti i sumnji u vezi sa softverom otvorenog koda zasniva se na takozvanoj virusnoj prirodi nekih licenci s autorskim lijevom. Ideja je da ako koristite softver otvorenog koda kao dio programa koji sami razvijate, izgubit ćete svoje intelektualno vlasništvo jer će licenca kontaminirati vaše privatne dijelove programa. Drugim riječima, licenca može zahtijevati da se sav softver otvorenog koda, uključujući bilo koji novostvoreni softver, distribuira pod istom licencom. Iako ovo vrijedi za najpoznatiju copyleft licencu, GNU General Public License (pod kojom se, na primjer, distribuira Linux), postoje i druge licence koje pružaju drugačiji balans komercijalnih i javnih interesa.

    Inicijativa otvorenog softvera - OSI (Open Software Initiative) je neprofitna organizacija koja jasno definiše šta je open source i sertifikuje licence koje ispunjavaju njene kriterijume. Eclipse se distribuira pod EPL - Eclipse Public License V1.0, licencom odobrenom od OSI-ja dizajniranom da olakša komercijalno prihvaćanje Eclipsea uz zadržavanje zasluga autorima originalnog koda.

    Oni koji kreiraju dodatke za Eclipse ili koriste Eclipse kao osnovu za razvoj softvera moraju objaviti bilo koji Eclipse kod koji koriste ili modificiraju prema EPL-u, ali su slobodni da licenciraju vlastite dodatke kako žele. Izvorni kod u paketu sa softverom iz Eclipse-a ne mora biti licenciran kao open source, a sam izvorni kod ne mora biti javno dostupan.

    Iako većina programera ne bi koristila Eclipse za razvoj dodataka ili kreiranje novih proizvoda na osnovu njih, priroda otvorenog koda Eclipsea je značajna ne samo zato što čini Eclipse dostupnim potpuno besplatno (i uprkos njegovoj komercijalno orijentiranoj prirodi). Licenca podrazumijeva da dodaci mogu koštati novac). Otvoreni kod promovira inovacije i stvara poticaj za programere (čak i one komercijalne) da doprinesu svojim izvornim kodom zajednici. Postoji nekoliko razloga za to, ali je možda najznačajniji da što više programeri doprinose projektu, on postaje značajniji za sve. A kada projekat postane koristan, više programera će ga koristiti i oko njega stvoriti zajednicu, sličnu onima koja su nastala oko Apache-a i Linuxa.

    Šta je Eclipse?

    Eclipse je zajednica programera otvorenog koda čiji projekti imaju za cilj izgradnju otvorene razvojne platforme koja se sastoji od proširivog razvojnog okruženja, alata i runtime biblioteka za izgradnju, implementaciju i upravljanje softverom tokom njegovog životnog ciklusa. Eclipse fondacija je neprofitna organizacija koju podržavaju članovi i koja ugošćuje Eclipse projekte i pomaže u poboljšanju zajednice otvorenog koda i ekosistema komplementarnih proizvoda i usluga.

    Projekat Eclipse je kreirao IBM u novembru 2001. godine i podržan od strane konzorcijuma dobavljača softvera. Eclipse fondacija je stvorena u januaru 2004. godine kao nezavisna, neprofitna organizacija koja služi kao upravitelj Eclipse zajednice. Stvoren je kako bi pomogao da se u Eclipse-u razvije neutralna, otvorena i transparentna zajednica prema dobavljačima. Današnja Eclipse zajednica se sastoji od pojedinaca i organizacija koje predstavljaju softversku industriju.

    Eclipse fondacija nadgleda i usmjerava tekući razvoj Eclipse-a. Fondacija služi zajednici, ali programeri otvorenog koda, koji se zovu komiteti, koji u suštini rade na Eclipse projektima, nisu u njenom osoblju. Tipično, Eclipse izvršioci su članovi neke organizacije ili su nezavisni programeri koji dobrovoljno daju svoje vrijeme za rad na projektu otvorenog koda.

    Sada kada smo pogledali teorijske, istorijske i političke aspekte Eclipse-a, pogledajmo sam proizvod.

    Eclipse radni prostor

    Kada prvi put pokrenete Eclipse, vidjet ćete stranicu dobrodošlice unutar radnog prostora (pogledajte sliku 1). Eclipse korisnik ima nekoliko opcija za navigaciju do stranice sa pregledom, što je ono što preporučujem da uradi (vidi sliku 2). Zatim se možete upoznati s informacijama o novim funkcijama, proučiti neke primjere ili pohađati kurs obuke.

    Slika 2. Pregledna stranica Eclipse

    Radni prostor Eclipse sastoji se od nekoliko panela koji se nazivaju prikazi, kao što su navigacijski ili okvirni prikazi. Skup takvih reprezentacija naziva se perspektiva. Jedna od najčešćih perspektiva je perspektiva resursa, koja je osnovni skup pogleda za upravljanje projektima i pregled i uređivanje projektnih datoteka.

    Preporučujem da većina korisnika koji prvi put započnu sa preglednom stranicom prikazanom na slici 2 i saznaju više o Eclipseu. Odjeljak sa osnovama radnog stola sadrži mnogo korisnih početnih informacija o različitim komponentama Eclipse-a i načinu na koji one međusobno djeluju. Odvojite nekoliko minuta da ovo pročitate, a zatim zaronimo u Eclipse Java razvojne alate (JDT). Najbolji način da naučite nešto - pokušajte u praksi.

    Nastavljajući ovaj kratki obilazak Eclipse-a, kreiraćemo novi projekat u Javi. Odaberite Datoteka > Novo > Java projekat i unesite Hello kada se od vas zatraži ime projekta, a zatim kliknite Završi.

    Pogledajmo sada "Javu" perspektivu (ako već niste u njoj). U zavisnosti od toga kako želite da kontrolišete ekran, možete da promenite perspektivu u trenutnom prozoru tako što ćete izabrati Prozor > Otvori perspektivu > Java (Prozor > Otvori perspektivu > Java), ili otvorite novi prozor odabirom Prozor > Novi prozor, i odaberite novu perspektivu.

    Kao što možete očekivati, Java perspektiva ima skup pogleda dizajniranih da usmjeravaju razvoj Jave. Jedan od njih, koji se nalazi u gornjem levom uglu, je hijerarhija koja sadrži različite Java pakete, klase, JAR arhive i razne fajlove. Ovaj pogled se zove Package Explorer. Imajte na umu da su dvije nove stavke dodane u glavni meni: Izvor i Refaktor.

    Java razvojni alati (JDT)

    Da bismo isprobali Java razvojno okruženje, kreiraćemo i pokrenuti aplikaciju pod nazivom "Hello World". Dok ste u Java perspektivi, kliknite desnim tasterom miša na fasciklu sa izvornim testom projekta "Hello" (src) i izaberite Novo > Razred, kao što je prikazano na slici 3. U dijaloškom okviru koji se pojavi unesite Hello kao ime klase. Ispod je natpis Koju metodu biste željeli kreirati? (Koji metodski stubovi želite da kreirate?) Bilješka public static void main (args niza) i kliknite Završi.

    Slika 3. Kreiranje nove klase u Java perspektivi

    Ovo će kreirati .java fajl sa klasom Hello i praznim main() metodom u oblasti uređivača, kao što je prikazano na slici 4. Dodajmo sledeći kod metodi (imajte na umu da je opis za i namerno izostavljen).

    Slika 4. Hello klasa u Java editoru

    Dok kucate, primijetit ćete neke od funkcija Eclipse editora, uključujući provjeru sintakse i automatsko dovršavanje koda. Također, kada unesete početnu zagradu ili dvostruki navodnici, Eclipse automatski ubacuje završni par za njih i postavlja kursor u sredinu.

    U drugim slučajevima, pomoću kombinacije možete izazvati automatsko dovršavanje koda Ctrl+1. Funkcija dovršavanja koda pruža kontekstno osjetljivu listu opcija od kojih možete birati pomoću tipkovnice ili miša. Opcije mogu biti lista metoda specifičnih za određeni objekat ili dio koda zasnovanog na različitim ključne riječi, kao što je za ili dok .

    Provjera sintakse ovisi o inkrementalnoj kompilaciji. Dok čuvate kod, on se kompajlira u pozadini i provjerene sintaksičke greške. Podrazumevano, sintaktičke greške su podvučene crvenom bojom, a na levoj margini se pojavljuje crvena tačka sa belim X. Ostale greške su označene na margini uređivača simbolom sijalice; ovo su problemi koje uređivač može riješiti umjesto vas (funkcija koja se zove Quick Fix).

    U kodu iznad, znak sijalice se pojavljuje pored naredbe for jer je opis za i izostavljen. Dvostruki klik na sijalicu će uzrokovati da se pojavi lista predloženih popravki. U našem slučaju, od nas će se tražiti da kreiramo polje klase i, lokalnu varijablu i ili parametar i za metodu; odabirom bilo koje od ovih opcija mišem će se prikazati kod koji će biti generiran. Slika 5 prikazuje listu predloženih opcija i kod koji se predlaže u slučaju lokalne varijable.

    Slika 5: Opcije brzog popravka

    Dvostruki klik na rečenicu ubacuje kod na željeno mjesto u programu.

    Ako se program kompajlira bez grešaka, možete ga pokrenuti odabirom Trči u Eclipse meniju. (Imajte na umu da ne postoji poseban korak za kompilaciju jer se kompilacija događa dok čuvate kod. Ako vaš kod nema sintaksičkih grešaka, spreman je za pokretanje.) Pojavljuje se dijalog Konfiguracije pokretanja sa željenim zadanim vrijednostima; kliknite Trči dole desno. Pojavljuje se u donjem panelu novi panel sa karticama (Konzola), prikazujući rezultat programa, kao što je prikazano ispod.

    Slika 6. Rezultat programa

    Takođe možete pokrenuti program u Java debuggeru. Prvo morate postaviti tačku prekida u main() System.out.println() tako što ćete dvaput kliknuti na sivi okvir na lijevoj strani prozora za uređivanje pored poziva System.out.println(). Pojavit će se plava tačka. Na meniju Trči izaberite tim Otklanjanje grešaka. Kao što je ranije opisano, pojavit će se dijalog "Konfiguracije pokretanja". Odaberite tim Trči. Perspektiva će se automatski promijeniti u Debug perspektivu, koja sadrži niz zanimljivih novih pogleda, kao što je prikazano u nastavku.

    Slika 7. Perspektiva otklanjanja grešaka

    Obratite pažnju na prikaz Debug u gornjem lijevom uglu perspektive. Ovaj prikaz prikazuje stek poziva i sadrži traku sa alatkama u naslovnoj traci koja vam omogućava da kontrolišete izvršavanje programa. Panel ima dugmad za nastavak, pauziranje ili završetak programa, prelazak na sljedeću naredbu, prelazak preko sljedećeg izraza ili povratak iz metode. Panel u gornjem desnom uglu sadrži nekoliko prikaza sa karticama, uključujući varijable, tačke prekida, izraze i prikaz. Kartica Variables je sada odabrana, tako da možemo vidjeti trenutnu vrijednost varijable i.

    Više detaljne informacije bilo koji od pogleda se može dobiti pomoću kontekstnih tragova; Da biste to učinili, kliknite na naslov prikaza i pritisnite F1.

    Dodatni dodaci

    Pored dodataka tipa JDT za uređivanje, kompajliranje i otklanjanje grešaka u aplikacijama, postoje dodaci koji podržavaju čitav razvojni proces: modeliranje, automatizaciju izgradnje, testiranje jedinica, testiranje performansi, verzioniranje i upravljanje konfiguracijom.

    Eclipse uključuje dodatak za rad sa sistemom istovremenih verzija (CVS) za upravljanje izvornim kodom. Timski dodatak se povezuje sa CVS serverom, omogućavajući članovima razvojnog tima da rade sa skupom fajlova koji sadrže izvorni kod bez mešanja u promene koje su napravili drugi. Ovdje nećemo detaljnije istraživati ​​upravljanje izvornim kodom iz Eclipse-a jer bi to zahtijevalo instaliranje CVS servera, iako je mogućnost podrške timu programera, a ne samo samorazvoj, važan i sastavni dio Eclipse-a.

    Dodaci koje održava i distribuira Eclipse Foundation mogu se naći na Eclipse web stranici. Većina puna lista Dostupni dodaci dostupni su na Eclipse Plug-in Central stranici, koja služi kao direktorij dodataka.

    Arhitektura Eclipse platforme

    Eclipse platforma sadrži moćan skup dodataka (pogledajte sliku 8) koji podržavaju projekte kao što su JDT i PDE.

    Slika 8. Pojednostavljena arhitektura Eclipse platforme

    Tamnoplavi blokovi predstavljaju komponente koje su centralne za Rich Client Platform (RCP) u Eclipseu. Sam koncept RCP-a je izvan okvira ovog članka, ali razmotrimo RCP kao jednostavno skup dodataka iz Eclipse-a koje ljudi mogu koristiti u razvoju aplikacija kao što je Lotus Notes® 8. Svijetloplavi blokovi predstavljaju opciono (iako se preporučuje) komponente koje treba uključiti u RCP-bazirane aplikacije. A sivi blokovi su potpuno opcioni. Platforma se sastoji od nekoliko komponenti, a mi ćemo pogledati neke od njih:

    Runtime Runtime je kod koji definira Eclipse plugin model, baziran na OSGi specifikaciji i ideji proširenja i točaka proširenja. Runtime također pruža dodatne usluge kao što su syslogging i istovremenost. JFace/SWT Standardni komplet alata za vidžete (SWT) je kolekcija widgeta koji pružaju korisničko sučelje i funkcionalnost Eclipse-a. JFace je jednostavno superskup SWT-a koji pruža nekoliko klasa Model-View-Controller (MVC) kako bi se olakšao razvoj grafičkih aplikacija. Workbench Radni prostor daje Eclipse-u njegovu ličnost. Na ovom nivou se implementira koncept pogleda, perspektiva i stvari poput uređivanja prozora. Pomoć (korisnička podrška) Ova Eclipse komponenta vam omogućava da pružite podršku svojim korisnicima. Ovo se može uraditi putem sistema pomoći, koji korisnicima omogućava da traže dokumentaciju pomoći, ili putem "cheat sheets", koji se mogu predstaviti kao interaktivne liste zadataka krajnjim korisnicima. Ažuriraj Komponenta ažuriranja omogućava Eclipse da ažurira aplikacije s jedne verzije na drugu. Tim Timska komponenta je infrastruktura koja omogućava razvojnim kompanijama da povežu sopstvene sisteme kontrole verzija. Primjer implementacije dobavljača je CVS dodatak ugrađen u Eclipse.

    Zaključak

    Od početnog koda koji je napisao IBM, Eclipse je izrastao u ekosistem otvorenog koda sa puno mogućnosti sa više od 100 kompanija koje učestvuju. Prenosiva, proširiva infrastruktura otvorenog koda - više ne nova ideja, ali zahvaljujući svom dobro osmišljenom, robusnom i elegantnom dizajnu, Eclipse poprima potpuno novu dinamiku.

    Dobrodošli u Eclipse ekosistem. Naš cilj je bio da vam pomognemo da napredujete na platformi Eclipse. To smo postigli kroz uvodni tekst i jednostavnu vježbu. Iskoristite znanje koje ste stekli čitajući ovaj članak i postanite aktivni član Eclipse ekosistema.

    Projekat Eclipse je projekat web stranice otvorenog koda, koji nadgleda Odbor za upravljanje projektima (PMC) i voditelji projekta. Rad se obavlja u potprojektima koji rade protiv . Eclipse Project Charter opisuje organizaciju projekta, uloge i odgovornosti učesnika, kao i proces razvoja projekta na najvišem nivou. JDT i PDE su plug-in alati za Eclipse platformu. Zajedno, ova tri dijela čine Eclipse SDK, kompletno razvojno okruženje za alate zasnovane na Eclipse-u i za razvoj samog Eclipse-a.

    • Razvoj projekta Eclipse
      Planovi izdanja i druge informacije o procesu razvoja Eclipse projekta.

    • Preuzmite Eclipse SDK, Eclipse RCP, SWT, Eclipse Java kompajler i još mnogo toga. Aktuelno izdanje možete pronaći ovdje. Ili preuzmite najnovije stabilne i integracijske verzije ako želite isprobati najnovije funkcije u razvoju ili započeti s doprinosom projektu.

    • Pregledajte dokumentaciju uključenu u izdanja projekta Eclipse.

    Potprojekti


    • Platforma definiše skup okvira i zajedničkih usluga koji zajedno čine "integracioni softver" potreban za podršku upotrebe Eclipse-a kao komponentnog modela, kao bogate klijentske platforme () i kao sveobuhvatne platforme za integraciju alata. Ove usluge i okviri uključuju standardni model korisničkog sučelja radnog stola i prenosivi izvorni widget alat, projektni model za upravljanje resursima, automatsko upravljanje deltama resursa za inkrementalne kompajlere i graditelje, infrastrukturu za otklanjanje grešaka nezavisnu od jezika i infrastrukturu za distribuirano višekorisničko verzijsko upravljanje resursima .

    • JDT pruža dodatke alata za platformu koja implementira Java IDE za napredne korisnike, koji podržava razvoj bilo koje Java aplikacije, uključujući Eclipse dodatke. JDT dodaje pojam Java projekata i Java perspektivu platformi Eclipse, kao i niz pogleda, urednika, čarobnjaka, graditelja i alata za spajanje i refaktoriranje koda. JDT omogućava da Eclipse bude razvojno okruženje za sebe. Sami JDT dodaci također mogu biti dodatno prošireni drugim proizvođačima alata.

    • PDE projekat pruža brojne preglede i uređivače koji olakšavaju izgradnju dodataka za Eclipse. Koristeći PDE, možete kreirati datoteku manifesta dodatka (plugin.xml), odrediti vrijeme izvođenja dodatka i druge potrebne dodatke, definirati točke proširenja, uključujući njihove specifične oznake, povezati datoteke XML sheme s oznakama točke proširenja tako da se ekstenzije mogu potvrditi, kreirati ekstenzije na drugim tačkama proširenja dodataka, itd. PDE čini integraciju dodataka jednostavnom i zabavnom.

    • Projekt e4 je inkubator za razvoj sljedeće generacije Eclipse platforme. Misija projekta e4 je izgradnja platforme sljedeće generacije za sveprisutne aplikacije i alate bazirane na komponentama.