Eclipse je razvojno okolje za modularne medplatformske aplikacije. Predstavljamo lupino Eclipse. Osnove sintakse JAVA

V tem članku sem želel govoriti o tem, kako ustvariti aplikacije z uporabo Eclipse RCP (Rich Client Platform). Razlog za pisanje je bilo dejstvo, da na Habréju ni prav nobenega članka, ki bi opisoval to platformo. Kot primer bomo ustvarili obrazec za vnos po meri; Pravilnost podatkov bo preverjena z ogrodjem JFace Data Binding. Za začetek bom spodaj dal posnetek zaslona, ​​​​kaj bi morali dobiti.

Kaj je Eclipse RCP

Za začetek je še vedno treba povedati, kaj je Eclipse RCP. Mrk je razvojno okolje, napisano v Javi, ki ga razvija in podpira Eclipse Foundation (katere člani so IBM, SAP, Oracle, podjetja, ki ponujajo izdelke, ki temeljijo na Eclipse RCP in sodelujejo pri razvoju ekosistema Google, RedHat, Adobe, Cisco, Intel) . Eclipse RCP je nabor vtičnikov za ustvarjanje tako imenovanih obogatenih odjemalskih aplikacij. Vse, kar uporabnik vidi, ko odpre Eclipse IDE, je vtičnik, ustvarjen na podlagi te platforme. Uporabnik lahko ustvari lastne vtičnike na podlagi ogromnega števila obstoječih, po potrebi pa lahko v obliki vtičnikov najdete najbolj priljubljena ogrodja, kot so Hibernate, Google Guice, Google Guava, JUnit, TestNG. Prav tako je treba omeniti, da arhitektura izvajalnega okolja temelji na specifikaciji storitvene platforme OSGI, ta specifikacija opisuje, kako je mogoče ustvariti in izvajati modularne aplikacije. Eclipse, kot je navedeno zgoraj, je napisan v Javi in ​​je postavljen kot večplatformni izdelek (v 90% primerov bo aplikacija RCP zgrajena v sistemih Windows, Linux in Mac). Vsi vtičniki, ki sestavljajo jedro platforme, in večina vtičniki tretjih oseb distribuirajo pod EPL (javna licenca Eclipse). Uporabniški vmesnik aplikacij RCP temelji na vizualnih komponentah ogrodij SWT in JFace ter izvornih gradnikih Eclipse. Spodnje slike prikazujejo, iz katerih komponent je sestavljena aplikacija, ki temelji na platformi RCP, in strukturo same platforme Eclipse.


Slika 1 – Komponente, uporabljene v aplikaciji RCP (slika vzeta s tega mesta)


Slika 2 – Eclipse Architecture (slika posneta s tega mesta)

Prednosti in slabosti platforme
Glavno vprašanje je, zakaj je ta platforma tako dobra in zakaj jo uporabljati za razvoj namiznih aplikacij (mimogrede, mogoče je razvijati spletne aplikacije in aplikacije za mobilne platforme). Modularnost, večplatformnost, večjezična podpora, brezplačno, ogromno število obstoječih vtičnikov, knjižnic in ogrodij. Vse to vam omogoča ustvarjanje aplikacij komercialnega razreda (povezava do seznama obstoječih aplikacij, razvitih na tej platformi, je na koncu članka). Pomanjkljivosti vključujejo dokaj visoko raven vstopa, saj morate za razvoj resne aplikacije vsaj na splošno poznati, kako deluje ogrodje OSGI, in znati delati s komponentami in pripomočki SWT in JFace. Prav tako bo za rusko govoreče razvijalce težava najti materiale ali knjige o zgoraj omenjenih ogrodjih in knjižnicah (povezave do najdenih virov, vključno z viri v ruskem jeziku, so navedene na koncu članka), čeprav so konference občasno potekajo v Evropi in ZDA, organizirajo pa jih udeleženci Eclipse Foundation v Nemčiji izdaja posebno revijo, ki govori o novih vtičnikih in vsebuje veliko primerov njihove uporabe, obstaja pa tudi cela serija knjig v nemščini, ki opisujejo vse nianse in tankosti razvoja. V angleščini najdete posebno serijo knjig, eclipse series, od Addison-Wesley, najdete pa tudi nekaj knjig od Apress. A gradiva in knjig v našem maternem jeziku je zanemarljivo malo.

Začnimo

Namestitev potrebnih vtičnikov
Pojdimo k ustvarjanju naše prve RCP aplikacije. Za delo moramo prenesti sklop: Eclipse za RCP in RAP razvijalce z uradne spletne strani. Če je Eclipse IDE že nameščen, lahko uporabite upravitelja posodobitev. V glavnem meniju izberite Pomoč->Namesti novo programsko opremo. V oknu za namestitev, ki se prikaže na vrhu, s spustnega seznama izberite spletno mesto s posodobitvami, ki jih potrebujemo - download.eclipse.org/releases/indigo, če na seznamu ni takega mesta, kliknite gumb Dodaj na desni, v polje Ime vpišite - Indigo Update Site, v polje Lokacija - naslov, ki je naveden zgoraj, kliknite V redu (če se pri dodajanju naslova prikaže sporočilo se pojavi - Podvojena lokacija, potem naslov že obstaja na seznamu mest za posodobitev programske opreme, seznam mest za posodobitev si lahko ogledate v prejšnjem oknu za namestitev s klikom na povezavo Spletna mesta za programsko opremo, ki je na voljo, pod spustnim seznamom). Ko izberete mesto posodobitve, se spodaj prikaže drevesni seznam (če je potrjeno potrditveno polje Združi elemente po kategoriji), odprite element Orodja za splošne namene in izberite Razvojno okolje vtičnika Eclipse, nato odprite element EclipseRT Target Platform Components in označite vtičnik - Viri za razvijalce vtičnika Eclipse RCP, to sta dva vtičnika, ki ju potrebujemo za ustvarjanje našega projekta. Nato dvakrat kliknite Naprej, sprejmite licenčna pogodba in kliknite na gumb Dokončaj; To je to, začela se bo namestitev potrebnih vtičnikov. Po namestitvi bomo morali znova zagnati Eclipse, kar bomo tudi storili.


Slika 3 – Okno za namestitev vtičnika

Ustvarjanje projekta
Po ponovnem zagonu v glavnem meniju izberite File->New->Other, izberite Plug-in Development in nato v spustnem meniju izberite Plug-in Project.


Slika 4 – Meni za izbiro vrste projekta, ki ga želite ustvariti

Kliknite Naprej, našemu projektu moramo dati ime, naj se imenuje first.rcp.application, znova kliknite Naprej. V naslednjem oknu moramo določiti ime aplikacije, v polje Name bomo zapisali First RCP Application. Počistite polje Generate an activator, razred Java, ki nadzira življenjski cikel vtičnika; za naš preprosta aplikacija razred aktivatorja ni potreben. Pustimo potrditveno polje na elementu – ta vtičnik bo prispeval k uporabniškemu vmesniku, saj bo naša aplikacija vsebovala Uporabniški vmesnik. Pustimo tretji element Enable API Analysis neoznačen. Na vprašanje - Ali želite ustvariti obogateno odjemalsko aplikacijo? Odgovorimo Da.


Slika 5 – Okno za ustvarjanje vtičnika

Kliknite Naprej, pozvani bomo, da izberemo predlogo za prihodnjo aplikacijo, izberite - Pozdravljeni RCP in kliknite Naprej.


Slika 6 - Okno za izbiro predloge projekta RCP

V zadnjem oknu v polje Naslov okna aplikacije napišite - Uporabniški obrazec, v polje Razred aplikacije - Moja aplikacija. Potrditveno polje Dodaj blagovno znamko pustite neaktivno. Kliknite gumb Dokončaj. Pozvani bomo, da preklopimo na perspektivo razvoja vtičnikov, s tem predlogom se bomo strinjali.


Slika 7 – Konfiguracijsko okno predloge projekta RCP

Struktura projekta
Tako imamo strukturo novonastalega projekta.


Slika 8 – Struktura projekta

Vsebina petih razredov v paketu first.rcp.application v ta trenutek nas ne zanima, rekel bom samo, da je super Moja aplikacija To je na nek način main() metoda običajnega programa Java, ta razred je odgovoren za to, kako bo naš vtičnik zagnan in kako bo ustavljen. V razredu ApplicationWorkbenchWindowAdvisor, lahko nastavimo velikost okna aplikacije z naslednjo vrstico kode:
configurer.setInitialSize(nova točka(400, 300));
Vidimo lahko tudi, da orodna vrstica in vrstica stanja privzeto ne bosta prikazani:
configurer.setShowCoolBar(false);
configurer.setShowStatusLine(false);
Zadnja vrstica nastavi naslov glavnega okna:
configurer.setTitle("Uporabniški obrazec");
Razred ApplicationActionBarAdvisor je odgovoren za prilagajanje menijske vrstice naše aplikacije. Razred Perspektiva je odgovoren za lokacijo in velikost urejevalnikov in pogledov, ki se nahajajo v dani perspektivi; aplikacija RCP mora imeti vsaj eno perspektivo.

Začetek projekta
Za zagon aplikacije, ki smo jo pravkar ustvarili, moramo iti v mapo META-INF in odpreti datoteko MANIFEST.MF, če ste jo nenadoma zaprli (ta datoteka se pri ustvarjanju projekta privzeto odpre).


Slika 9 – Urejevalnik lastnosti aplikacije RCP

Ta datoteka nam omogoča spreminjanje številnih nastavitev projekta, povezovanje dodatnih vtičnikov, povezovanje in upravljanje razširitev, konfiguriranje gradnje našega vtičnika in še veliko več. Smo na zavihku Pregled, v razdelku Testiranje kliknemo na povezavo - Zaženi aplikacijo Eclipse, čez trenutek se na zaslonu prikaže okno naše aplikacije, ga zapremo in nadaljujemo na naslednjo stopnjo.


Slika 10 – Okno naše aplikacije

Dodajanje pogleda

Dodajanje razširitve
Naša naloga je ustvariti pogled, na katerega lahko postavimo elemente grafičnega vmesnika. Vrnimo se k datoteki MANIFEST.MF, izberite zavihek na dnu – Razširitve. Vidimo lahko, da imamo privzeto dve razširitvi: org.eclipse.core.runtime.applications in org.eclipse.ui.perspectives. Prva razširitev je povezana z našim razredom aplikacije Moja aplikacija, če izberemo to razširitev in razširimo drevesni seznam na vozlišče first.rcp.application.MyApplication (run), bomo videli, da polje razreda vsebuje ime tega določenega razreda. Vrnitev na korensko vozlišče ta seznam, bomo na desni strani v razdelku Podrobnosti razširitve videli dve polji, katerih vrednosti lahko tudi spreminjamo (tega zdaj ne bomo): ID – identifikator aplikacije in Ime – ime aplikacije.

Druga razširitev je odgovorna za nastavitev perspektive naše aplikacije. mapa MANIFEST.MF omogoča, da brez vpogleda v kodo razreda Perspective določimo, katere poglede in/ali urejevalnike bo vsebovala ta perspektiva, njihov položaj, velikost in razmerje. S klikom na to razširitev in odhodom na podrejeni element lahko vidimo, da lahko v razdelku Podrobnosti elementa razširitve določimo razred perspektive, ID in ime. Upoštevati je treba, da je takšne spremembe, kot je navedeno zgoraj, mogoče izvesti z neposrednim urejanjem kode razreda, ki je povezana s to razširitvijo, in urejanjem datoteke plugin.xml, vendar ne bi želel komplicirati ustvarjanja našega prvega projekta.


Slika 11 – Zavihek z razširitvami našega projekta

Za ustvarjanje pogleda moramo dodati novo razširitev. To naredimo tako, da kliknemo na gumb Dodaj in v oknu, ki se prikaže, v polje Extension Point filter vpišemo poglede, ostane naj samo ena razširitev - org.eclipse.ui.views, jo izberemo in kliknemo Dokončaj.


Slika 12 – Okno za izbiro nove razširitve

Na seznamu razširitev bi morali imeti še eno, tretjo razširitev.

Nastavitev pogleda
Z desno miškino tipko kliknemo razširitev, ki smo jo dodali, pojavi se kontekstni meni, v njem izberemo Novo->pogled, s čimer bomo dodali element naši razširitvi (ta element je pogled, ki ga potrebujemo). Nastavitve za ta element se bodo prikazale na desni strani. Najprej ustvarimo razred za naš pogled. To lahko storimo s klikom na povezavo razreda*.


Slika 13 – Ogled nastavitev

Odpre se standardno pogovorno okno za ustvarjanje razreda Java, poimenujte ga – MainView; kot lahko vidimo, ta razred deduje od razreda org.eclipse.ui.part.ViewPart, nadrejeni razred za vse vrste. Zaključimo izdelavo razreda s klikom na gumb Dokončaj. Ostalo je zelo malo, po ustvarjanju razreda za naš pogled se bo pred nami odprla njegova koda, ustvarili bomo statično spremenljivko, ki bo vsebovala identifikator tega pogleda, nastavili bomo kanonično ime tega razreda kot identifikator . Zapišimo naslednje:

javni razred MainView razširja ViewPart (
javni statični končni ID niza = MainView.class.getCanonicalName();

}
Vrnimo se k datoteki MANIFEST.MF, odprite zavihek Razširitev, kopirajte vsebino polja razreda* in jo prilepite v polje ID. Zdaj sta ime razreda in identifikator te vrste enaka; ta tehnika je dobra praksa, saj vedno omogoča hitro iskanje želene vrste in njen identifikator. V polje ime* bomo zapisali – Uporabniški obrazec. Celoten pogled je ustvarjen, ostane ga še povezati z našo perspektivo, saj samega pogleda ni mogoče uporabiti, z drugimi besedami, pripadati mora neki perspektivi.

Nastavitev položaja pogleda
Izvajamo lahko nadaljnje manipulacije, medtem ko ostanemo v urejevalniku razširitev ali odpremo kodo razreda perspektive - Perspective.java, kar bomo tudi storili. V razredu Perspektiva, pojdimo na metodo – createInitialLayout(), ta metoda določa začetni položaj pogledov in urejevalnikov. V metodi bomo napisali naslednji dve vrstici kode:
layout.setEditorAreaVisible(false);
layout.addStandaloneView(MainView.ID, true, IPageLayout.LEFT, 1.0f, layout.getEditorArea());
Prva vrstica sporoča objektu postavitve, da ne potrebujemo območja za urejanje, ker imamo samo en pogled in nobenega urejevalnika. Druga vrstica doda naš pogled in to kot samostojnega. Prvi parameter je naš ID pogleda. Drugi parameter je logična vrednost, ki je odgovoren za to, ali bo naslov našega pogleda (Uporabniški obrazec) prikazan ali ne. Tretji parameter je namenjen označevanju orientacije perspektivnega pogleda, saj imamo en pogled in bo zasedel celoten perspektivni prostor, potem dano vrednost lahko karkoli. Četrti parameter določa položaj tega pogleda glede na druge poglede ali urejevalnike, saj naj bi v našem primeru en pogled zasedel celoten prostor perspektive. Zadnji peti parameter je identifikator območja urejevalnika. Shranimo spremembe.
Zagon aplikacije z dodanim pogledom
Vrnimo se k datoteki MANIFEST.MF in znova zaženite našo aplikacijo, za to pojdite na zavihek Pregled, v razdelku Testiranje kliknite povezavo Zaženi aplikacijo Eclipse. Ne bomo opazili velike razlike glede na to, kako je obrazec izgledal ob prejšnji predstavitvi, dodan je le zavihek z našim pogledom – Uporabniški obrazec.


Slika 14 – Okno naše aplikacije z dodanim pogledom

To je vse za danes, nadaljevanje v naslednjem članku.

Eclipse je odprtokodna, razširljiva razvojna platforma, ki temelji na Javi. V bistvu je preprosto razvojno okolje in nabor storitev za gradnjo aplikacij na osnovi vgrajenih komponent (vtičnikov). Na srečo ima Eclipse standardni nabor vtičnikov, vključno z dobro znanimi orodji za razvoj Java (JDT).

Medtem ko je večina uporabnikov, ki uporabljajo Eclipse kot integrirano razvojno okolje Java (IDE), zadovoljnih z njim, je veliko več kot to. Eclipse vključuje tudi razvojno okolje vtičnikov (PDE), ki bo zanimivo predvsem za tiste, ki želijo razširiti sam Eclipse, saj omogoča ustvarjanje lastnih orodij, ki so vgrajena v okolje Eclipse. Ker je Eclipse v celoti sestavljen iz vtičnikov, imajo vsi razvijalci orodij možnost ponuditi lastne razširitve za Eclipse in uporabnikom zagotoviti dosledno in brezhibno integrirano razvojno okolje (IDE).

Ta celovitost in doslednost nista edinstveni za razvojna orodja Java. Čeprav je Eclipse napisan v Javi, ga je mogoče uporabljati z drugimi jeziki. Na primer, vtičniki so že na voljo (ali se razvijajo), ki podpirajo programske jezike, kot sta C/C++ in COBOL. Ogrodje Eclipse se lahko uporablja tudi kot osnova za druge vrste aplikacij, ki niso povezane z razvojem programske opreme, kot so sistemi za upravljanje vsebine.

Odličen primer aplikacije, ki temelji na Eclipse, je IBM-ov Rational Software Architect, ki tvori osnovo IBM-ove družine razvojnih orodij Java.

Eclipse je odprtokoden

Odprtokodna programska oprema je izdana pod licenco, ki uporabnikom zagotavlja določene pravice. Najbolj očitna med njimi je seveda ta, da je treba izvorno kodo zagotoviti uporabnikom, ti pa imajo vso pravico, da sami spreminjajo in distribuirajo programsko opremo. Ta zaščita uporabniških pravic je dosežena z mehanizmom, imenovanim "copyleft": Licenca programsko opremo se zavzema za zaščito avtorskih pravic in prepoveduje distribucijo programske opreme, če uporabniku te pravice niso podeljene. Licenca copyleft prav tako zahteva, da je vsa programska oprema, ki jo distribuirajo uporabniki, zajeta z izvirno licenco brez sprememb. Tako je pomen avtorskih pravic v bistvu obrnjen na glavo in za licenco copyleft, ki uporablja avtorske pravice za podelitev pravic uporabniku, namesto da bi jih obdržala za razvijalca programske opreme, se pogosto v šali reče, da so "vse pravice sprevržene" (vse pravice obrnjene ).

Velik del običajnega strahu, negotovosti in dvomov glede odprtokodne programske opreme temelji na tako imenovani virusni naravi nekaterih licenc za avtorsko pravo. Ideja je, da če uporabljate odprtokodno programsko opremo kot del programa, ki ga razvijate sami, boste izgubili svojo intelektualno lastnino, ker bo licenca onesnažila vaše zasebne dele programa. Z drugimi besedami, licenca lahko zahteva, da se vsa odprtokodna programska oprema, vključno z vsako novo ustvarjeno programsko opremo, distribuira pod isto licenco. Čeprav to velja za najbolj znano licenco za kopiranje, GNU General Public License (pod katero se na primer distribuira Linux), obstajajo druge licence, ki zagotavljajo drugačno ravnovesje komercialnih in javnih interesov.

Iniciativa za odprto programsko opremo – OSI (Open Software Initiative) je neprofitna organizacija, ki jasno definira, kaj je odprtokodni program, in potrjuje licence, ki ustrezajo njenim kriterijem. Eclipse se distribuira pod EPL (javno licenco Eclipse) V1.0, licenco, ki jo je odobril OSI in je zasnovana za lažjo komercialno sprejemljivost Eclipse, hkrati pa ohranja zasluge avtorjem izvirne kode.

Tisti, ki ustvarjajo vtičnike za Eclipse ali uporabljajo Eclipse kot osnovo za razvoj programske opreme, morajo objaviti katero koli kodo Eclipse, ki jo uporabljajo ali spreminjajo v skladu z EPL, vendar lahko licencirajo lastne dodatke, kot želijo. Izvorne kode, ki je priložena programski opremi iz Eclipse, ni treba licencirati kot odprtokodno in ni treba, da je izvorna koda sama javno dostopna.

Medtem ko večina programerjev ne bi uporabljala Eclipsa za razvoj vtičnikov ali ustvarjanje novih izdelkov, ki temeljijo na njem, je odprtokodna narava Eclipse pomembna ne le zato, ker omogoča, da je Eclipse na voljo popolnoma brezplačno (in kljub njegovi komercialni naravi). licenca pomeni da lahko vtičniki stanejo denar). Odprta koda spodbuja inovacije in ustvarja spodbudo za razvijalce (tudi komercialne), da prispevajo svojo izvorno kodo skupnosti. Razlogov za to je več, a morda najpomembnejši je ta, da več kot razvijalci prispevajo k projektu, bolj pomemben postane za vse. In ko projekt postane uporaben, ga bo uporabilo več razvijalcev in okoli njega ustvarilo skupnost, podobno tistim, ki so se oblikovale okoli Apache in Linux.

Kaj je Eclipse?

Eclipse je odprtokodna skupnost razvijalcev, katerih projekti so namenjeni izgradnji odprte razvojne platforme, sestavljene iz razširljivega razvojnega okolja, orodij in izvajalnih knjižnic za gradnjo, uvajanje in upravljanje programske opreme med izvajanjem. življenski krog. Fundacija Eclipse je neprofitna organizacija, ki jo podpirajo člani in gosti projekte Eclipse ter pomaga izboljšati odprtokodno skupnost in ekosistem komplementarnih izdelkov in storitev.

Projekt Eclipse je novembra 2001 ustvaril IBM, podprl pa ga je konzorcij prodajalcev programske opreme. Fundacija Eclipse je bila ustanovljena januarja 2004 kot neodvisna, neprofitna organizacija, ki deluje kot skrbnik skupnosti Eclipse. Ustvarjen je bil za pomoč do prodajalca nevtralne, odprte in pregledne skupnosti pri rasti okoli Eclipse. Današnjo skupnost Eclipse sestavljajo posamezniki in organizacije, ki predstavljajo industrijo programske opreme.

Fundacija Eclipse nadzira in usmerja nenehen razvoj Eclipse. Fundacija služi skupnosti, vendar odprtokodni razvijalci, imenovani komiterji, ki v bistvu delajo na projektih Eclipse, niso njeni zaposleni. Običajno so izvajalci Eclipse člani neke organizacije ali neodvisni razvijalci, ki prostovoljno namenijo svoj čas delu na odprtokodnem projektu.

Zdaj, ko smo si ogledali teoretične, zgodovinske in politične vidike Eclipse, si poglejmo sam izdelek.

Delovni prostor Eclipse

Ko prvič zaženete Eclipse, boste znotraj delovnega prostora videli pozdravno stran (glejte sliko 1). Uporabnik Eclipse ima več možnosti za navigacijo do strani s pregledom, kar priporočam (glejte sliko 2). Nato se lahko seznanite z informacijami o novih funkcijah, preučite nekaj primerov ali se udeležite tečaja usposabljanja.

Slika 2. Stran s pregledom Eclipse

Delovni prostor Eclipse je sestavljen iz več plošč, imenovanih pogledi, kot so navigacijski ali orisni pogledi. Skupek takih pogledov imenujemo perspektiva. Ena najpogostejših perspektiv je perspektiva virov, ki je osnovni nabor pogledov za upravljanje projektov ter pregledovanje in urejanje projektnih datotek.

Priporočam, da večina novih uporabnikov začne s pregledno stranjo, prikazano na sliki 2, in izve več o Eclipse. Razdelek o osnovah delovne mize vsebuje veliko uporabnih začetnih informacij o različnih komponentah Eclipse in njihovem medsebojnem delovanju. Vzemite si nekaj minut in preberite to, nato pa se poglobimo v razvojna orodja Java (JDT) Eclipse. Najboljši način da se nekaj naučiš - poskusi v praksi.

Če nadaljujemo s tem kratkim ogledom Eclipse, bomo ustvarili nov projekt v Javi. Izberite Datoteka > Novo > Projekt Java in ob pozivu za ime projekta vnesite Pozdravljeni, nato kliknite Končaj.

Zdaj pa poglejmo perspektivo "Java" (če še niste v njej). Odvisno od tega, kako želite upravljati zaslon, lahko spremenite perspektivo v trenutnem oknu tako, da izberete Okno > Odpri perspektivo > Java (Okno > Odpri perspektivo > Java) ali odprite novo okno z izbiro Okno > Novo okno in izberite novo perspektivo.

Kot lahko pričakujete, ima perspektiva Jave nabor pogledov, zasnovanih za vodenje razvoja Jave. Eden od njih, ki se nahaja v zgornjem levem kotu, je hierarhija, ki vsebuje različne pakete Java, razrede, arhive JAR in različne datoteke. Ta pogled se imenuje Raziskovalec paketov. Upoštevajte, da sta bila v glavni meni dodana dva nova elementa: Source in Refactor.

Razvojna orodja Java (JDT)

Za preizkus razvojnega okolja Java bomo izdelali in zagnali aplikacijo z imenom "Hello World". Ko ste v perspektivi Java, z desno miškino tipko kliknite mapo s izvornim testom projekta »Hello« (src) in izberite Novo > Razred, kot je prikazano na sliki 3. V pogovornem oknu, ki se prikaže, vnesite Hello kot ime razreda. Spodaj je napis Katere škrbine metod bi radi ustvarili? (Katere škrbine metod želite ustvariti?) Opomba public static void main(String args) in kliknite Končaj.

Slika 3. Ustvarjanje novega razreda v perspektivi Java

To bo ustvarilo datoteko .java z razredom Hello in prazno metodo main() v območju urejevalnika, kot je prikazano na sliki 4. Metodi dodamo naslednjo kodo (upoštevajte, da je bil opis za i namenoma izpuščen).

Slika 4. Pozdravljeni razred v urejevalniku Java

Med tipkanjem boste opazili nekatere funkcije urejevalnika Eclipse, vključno s preverjanjem sintakse in samodejnim dokončanjem kode. Prav tako, ko vnesete začetni oklepaj oz dvojni narekovaji, Eclipse samodejno vstavi zaključni par zanje in postavi kazalec na sredino.

V drugih primerih lahko s kombinacijo povzročite samodejno dokončanje kode Ctrl+1. Funkcija dokončanja kode nudi kontekstno občutljiv seznam možnosti, med katerimi lahko izbirate s tipkovnico ali miško. Možnosti so lahko seznam metod, značilnih za določen predmet, ali del kode, ki temelji na različnih ključne besede, na primer za ali medtem ko .

Preverjanje sintakse je odvisno od inkrementalnega prevajanja. Ko shranite kodo, se prevede v ozadje in preveril sintaksne napake. Sintaksne napake so privzeto podčrtane z rdečo, na levem robu pa se prikaže rdeča pika z belim X. Druge napake so na robu urednika označene s simbolom žarnice; to so težave, ki bi jih urejevalnik lahko popravil namesto vas (funkcija, imenovana Quick Fix).

V zgornji kodi se znak žarnice pojavi poleg stavka for, ker je bil opis za i izpuščen. Dvakrat tapnite z miško na žarnici se prikaže seznam predlaganih popravkov. V našem primeru bomo morali ustvariti razredno polje i, lokalno spremenljivko i ali parameter i za metodo; če z miško izberete katero koli od teh možnosti, se prikaže koda, ki bo ustvarjena. Slika 5 prikazuje seznam predlaganih možnosti in predlagano kodo v primeru lokalne spremenljivke.

Slika 5: Možnosti hitrega popravka

Dvoklik na stavek vstavi kodo na želeno mesto v programu.

Če se program prevede brez napak, ga lahko zaženete tako, da izberete Teči v meniju Eclipse. (Upoštevajte, da ni ločenega koraka za prevajanje, ker prevajanje poteka, ko shranite kodo. Če vaša koda nima sintaktičnih napak, je pripravljena za izvajanje.) Prikaže se pogovorno okno Launch Configurations z želenimi privzetimi vrednostmi; kliknite Teči spodaj desno. Pojavi se na spodnji plošči nova plošča z zavihki (konzola), ki prikazujejo rezultat programa, kot je prikazano spodaj.

Slika 6. Rezultat programa

Program lahko zaženete tudi v razhroščevalniku Java. Najprej morate nastaviti prekinitveno točko v main() System.out.println() tako, da dvokliknete sivo polje na levi strani okna za urejanje poleg klica System.out.println(). Pojavila se bo modra pika. Na jedilniku Teči izberite ekipo Odpravljanje napak. Kot je opisano prej, se prikaže pogovorno okno "Zagon konfiguracij". Izberite ekipo Teči. Perspektiva se bo samodejno spremenila v perspektivo za odpravljanje napak, ki vsebuje številne zanimive nove poglede, kot je prikazano spodaj.

Slika 7. Perspektiva odpravljanja napak

Opazite pogled Debug v zgornjem levem kotu perspektive. Ta pogled prikazuje sklad klicev in vsebuje orodno vrstico v naslovni vrstici, ki vam omogoča nadzor nad izvajanjem programa. Plošča ima gumbe za nadaljevanje, premor ali konec programa, premik na naslednji stavek, korak čez naslednji stavek ali vrnitev iz metode. Plošča zgoraj desno vsebuje številne poglede z zavihki, vključno s spremenljivkami, prelomnimi točkami, izrazi in prikazom. Zavihek Spremenljivke je zdaj izbran, tako da lahko vidimo trenutno vrednost spremenljivke i.

Podrobnejše informacije o katerem koli pogledu je mogoče pridobiti s kontekstnim opisom orodja; Če želite to narediti, kliknite na naslov pogleda in pritisnite F1.

Dodatni vtičniki

Poleg vtičnikov tipa JDT za urejanje, prevajanje in razhroščevanje aplikacij obstajajo vtičniki, ki podpirajo celoten razvojni proces: modeliranje, avtomatizacija gradnje, testiranje enot, testiranje zmogljivosti, urejanje različic in upravljanje konfiguracije.

Eclipse vključuje vtičnik za delo s sistemom sočasnih različic (CVS) za upravljanje izvorne kode. Vtičnik Team se poveže s strežnikom CVS, kar omogoča članom razvojne ekipe, da delajo z nizom datotek, ki vsebujejo izvorno kodo, ne da bi posegali v spremembe, ki jih naredijo drugi. Tukaj ne bomo podrobneje raziskali upravljanja z viri iz Eclipsa, ker bi to zahtevalo namestitev strežnika CVS, čeprav je zmožnost podpore skupini razvijalcev in ne samo samorazvoja pomemben in sestavni del Eclipse.

Vtičnike, ki jih vzdržuje in distribuira Eclipse Foundation, lahko najdete na spletnem mestu Eclipse. večina celoten seznam Razpoložljivi vtičniki so na voljo na strani Eclipse Plug-in Central, ki služi kot imenik vtičnikov.

Arhitektura platforme Eclipse

Platforma Eclipse vsebuje močan nabor vtičnikov (glejte sliko 8), ki podpirajo projekte, kot sta JDT in PDE.

Slika 8. Poenostavljena arhitektura platforme Eclipse

Temno modri bloki predstavljajo komponente, ki so osrednjega pomena za Rich Client Platform (RCP) v Eclipsu. Sam koncept RCP je izven obsega tega članka, vendar menimo, da je RCP preprosto nabor vtičnikov iz Eclipse, ki jih ljudje lahko uporabljajo pri razvijanju aplikacij, kot je Lotus Notes® 8. Svetlo modri bloki predstavljajo neobvezne (čeprav priporočljive) komponent za vključitev v aplikacije, ki temeljijo na RCP. In sivi bloki so popolnoma neobvezni. Platforma je sestavljena iz več komponent, nekaj jih bomo pogledali:

Runtime Runtime je koda, ki definira model vtičnika Eclipse, ki temelji na specifikaciji OSGi in ideji o razširitvah in razširitvenih točkah. Runtime ponuja tudi dodatne storitve, kot sta sistemski dnevnik in sočasnost. JFace/SWT Standard Widget Toolkit (SWT) je zbirka gradnikov, ki zagotavljajo uporabniški vmesnik in funkcionalnost Eclipse. JFace je preprosto nadnabor SWT, ki ponuja več razredov Model-View-Controller (MVC) za lažji razvoj grafične aplikacije. Delovna miza Delovni prostor daje Eclipsu osebnost. Na tej ravni je implementiran koncept pogledov, perspektiv in stvari, kot je urejanje oken. Pomoč (Uporabniška podpora) Ta komponenta Eclipse vam omogoča zagotavljanje podpore vašim uporabnikom. To je mogoče storiti s pomočjo sistema pomoči, ki uporabnikom omogoča iskanje po dokumentaciji pomoči, ali s pomočjo "goljufalnih listov", ki jih je mogoče končnim uporabnikom predstaviti kot interaktivne sezname opravil. Nadgradnja Komponenta za posodabljanje zagotavlja Eclipse sredstvo za posodabljanje aplikacij iz ene različice v drugo. Ekipa Komponenta ekipe je infrastruktura, ki razvojnim podjetjem omogoča povezovanje lastnih sistemov za nadzor različic. Vzorčna implementacija ponudnika je vtičnik CVS, vgrajen v Eclipse.

Zaključek

Od začetne kode, ki jo je napisal IBM, je Eclipse prerasel v odprtokodni ekosistem s polnimi funkcijami z več kot 100 sodelujočimi podjetji. Prenosna, razširljiva, odprtokodna infrastruktura - ne več nova ideja, a zahvaljujoč dobro premišljeni, robustni in elegantni zasnovi prevzame Eclipse povsem novo dinamiko.

Dobrodošli v ekosistemu Eclipse. Naš cilj je bil, da vam pomagamo priti do hitrosti na platformi Eclipse. To smo dosegli z uvodnim besedilom in preprosto vajo. Uporabite znanje, ki ste ga pridobili z branjem tega članka, in postanite aktivni član ekosistema Eclipse.

Uporaba vtičnikov Eclipse za urejanje, prevajanje, odpravljanje napak in kot osnova za vaše aplikacije

Ta posodobitev članka Davida Gallarda ponuja nove informacije o Eclipse V3.3.

Kaj je Eclipse?

Eclipse je odprtokodna, razširljiva razvojna platforma, ki temelji na Javi. V bistvu je preprosto razvojno okolje in nabor storitev za gradnjo aplikacij na osnovi vgrajenih komponent (vtičnikov). Na srečo ima Eclipse standardni nabor vtičnikov, vključno z dobro znanimi orodji za razvoj Java (JDT).

Medtem ko je večina uporabnikov, ki uporabljajo Eclipse kot integrirano razvojno okolje Java (IDE), zadovoljnih z njim, je veliko več kot to. Eclipse vključuje tudi razvojno okolje vtičnikov (PDE), ki bo zanimivo predvsem za tiste, ki želijo razširiti sam Eclipse, saj omogoča ustvarjanje lastnih orodij, ki so vgrajena v okolje Eclipse. Ker je Eclipse v celoti sestavljen iz vtičnikov, imajo vsi razvijalci orodij možnost ponuditi lastne razširitve za Eclipse in uporabnikom zagotoviti dosledno in brezhibno integrirano razvojno okolje (IDE).

Ta celovitost in doslednost nista edinstveni za razvojna orodja Java. Čeprav je Eclipse napisan v Javi, ga je mogoče uporabljati z drugimi jeziki. Na primer, vtičniki so že na voljo (ali se razvijajo), ki podpirajo programske jezike, kot sta C/C++ in COBOL. Ogrodje Eclipse se lahko uporablja tudi kot osnova za druge vrste aplikacij, ki niso povezane z razvojem programske opreme, kot so sistemi za upravljanje vsebine.

Odličen primer aplikacije, ki temelji na Eclipse, je IBM® Rational® Software Architect (glejte ), ki tvori osnovo IBM-ove družine razvojnih orodij Java.

Eclipse je odprtokoden

Odprtokodna programska oprema je izdana pod licenco, ki uporabnikom zagotavlja določene pravice. Najbolj očitna med njimi je seveda ta, da je treba izvorno kodo zagotoviti uporabnikom, ti pa imajo vso pravico, da sami spreminjajo in distribuirajo programsko opremo. Ta zaščita uporabniških pravic je dosežena z mehanizmom, imenovanim "copyleft": Licenca programske opreme je zaščitena z avtorskimi pravicami in prepoveduje distribucijo programske opreme, razen če so uporabniku podeljene takšne pravice. Licenca copyleft prav tako zahteva, da je vsa programska oprema, ki jo distribuirajo uporabniki, zajeta z izvirno licenco brez sprememb. Tako je pomen avtorskih pravic v bistvu obrnjen na glavo in za licenco copyleft, ki uporablja avtorske pravice za podelitev pravic uporabniku, namesto da bi jih obdržala za razvijalca programske opreme, se pogosto v šali reče, da so "vse pravice sprevržene" (vse pravice obrnjene ).

Velik del običajnega strahu, negotovosti in dvomov glede odprtokodne programske opreme temelji na tako imenovani virusni naravi nekaterih licenc za avtorsko pravo. Ideja je, da če uporabljate odprtokodno programsko opremo kot del programa, ki ga razvijate sami, boste izgubili svojo intelektualno lastnino, ker bo licenca onesnažila vaše zasebne dele programa. Z drugimi besedami, licenca lahko zahteva, da se vsa odprtokodna programska oprema, vključno z vsako novo ustvarjeno programsko opremo, distribuira pod isto licenco. Čeprav to velja za najbolj znano licenco za kopiranje, GNU General Public License (pod katero se na primer distribuira Linux®), obstajajo druge licence, ki zagotavljajo drugačno ravnovesje komercialnih in javnih interesov.

Iniciativa za odprto programsko opremo – OSI (Open Software Initiative) je neprofitna organizacija, ki jasno definira, kaj je odprtokodni program, in potrjuje licence, ki ustrezajo njenim kriterijem. Eclipse se distribuira pod EPL (javno licenco Eclipse) V1.0, licenco, ki jo je odobril OSI in je zasnovana za lažjo komercialno sprejemljivost Eclipse, hkrati pa ohranja zasluge avtorjem izvirne kode.

Tisti, ki ustvarjajo vtičnike za Eclipse ali uporabljajo Eclipse kot osnovo za razvoj programske opreme, morajo objaviti katero koli kodo Eclipse, ki jo uporabljajo ali spreminjajo v skladu z EPL, vendar lahko licencirajo lastne dodatke, kot želijo. Izvorne kode, ki je priložena programski opremi iz Eclipse, ni treba licencirati kot odprtokodno in ni treba, da je izvorna koda sama javno dostopna.

Medtem ko večina programerjev ne bi uporabljala Eclipsa za razvoj vtičnikov ali ustvarjanje novih izdelkov, ki temeljijo na njem, je odprtokodna narava Eclipse pomembna ne le zato, ker omogoča, da je Eclipse na voljo popolnoma brezplačno (in kljub njegovi komercialni naravi). licenca pomeni da lahko vtičniki stanejo denar). Odprta koda spodbuja inovacije in ustvarja spodbudo za razvijalce (tudi komercialne), da prispevajo svojo izvorno kodo skupnosti. Razlogov za to je več, a morda najpomembnejši je ta, da več kot razvijalci prispevajo k projektu, bolj pomemben postane za vse. In ko projekt postane uporaben, ga bo uporabilo več razvijalcev in okoli njega ustvarilo skupnost, podobno tistim, ki so se oblikovale okoli Apache in Linux. (Za pridobitev Dodatne informacije o licencah glejte razdelek.)

Kaj je Eclipse?

Eclipse je odprtokodna skupnost razvijalcev, katerih projekti so namenjeni izgradnji odprte razvojne platforme, sestavljene iz razširljivega razvojnega okolja, orodij in izvajalnih knjižnic za gradnjo, uvajanje in upravljanje programske opreme skozi njen življenjski cikel. Fundacija Eclipse je neprofitna organizacija, ki jo podpirajo člani in gosti projekte Eclipse ter pomaga izboljšati odprtokodno skupnost in ekosistem komplementarnih izdelkov in storitev.

Projekt Eclipse je novembra 2001 ustvaril IBM, podprl pa ga je konzorcij prodajalcev programske opreme. Fundacija Eclipse je bila ustanovljena januarja 2004 kot neodvisna, neprofitna organizacija, ki deluje kot skrbnik skupnosti Eclipse. Ustvarjen je bil za pomoč do prodajalca nevtralne, odprte in pregledne skupnosti pri rasti okoli Eclipse. Današnjo skupnost Eclipse sestavljajo posamezniki in organizacije, ki predstavljajo industrijo programske opreme.

Fundacija Eclipse nadzira in usmerja nenehen razvoj Eclipse. Fundacija služi skupnosti, vendar so jo poklicali odprtokodni razvijalci zavezanci in kot taki tisti, ki delajo na projektih Eclipse, niso v njegovem osebju. Običajno so izvajalci Eclipse člani neke organizacije ali neodvisni razvijalci, ki prostovoljno namenijo svoj čas delu na odprtokodnem projektu.

Zdaj, ko smo si ogledali teoretične, zgodovinske in politične vidike Eclipse, si poglejmo sam izdelek.

Delovni prostor Eclipse

Ko prvič zaženete Eclipse, boste znotraj delovnega prostora videli pozdravno stran (glejte sliko 1). Uporabnik Eclipse ima več možnosti za navigacijo do strani s pregledom, kar priporočam (glejte sliko 2). Nato se lahko seznanite z informacijami o novih funkcijah, preučite nekaj primerov ali se udeležite tečaja usposabljanja.

Slika 1. Pozdravna stran Eclipse
Slika 2. Stran s pregledom Eclipse

Delovni prostor Eclipse je sestavljen iz več panelov, imenovanih predstavništva, kot sta navigacija ali orisni pogled. Množica takih predstavitev se imenuje perspektiva. Ena najpogostejših perspektiv je perspektiva virov, ki je osnovni nabor pogledov za upravljanje projektov ter pregledovanje in urejanje projektnih datotek.

Priporočam, da večina novih uporabnikov začne s pregledno stranjo, prikazano na sliki 2, in izve več o Eclipse. Razdelek o osnovah delovne mize vsebuje veliko uporabnih začetnih informacij o različnih komponentah Eclipse in njihovem medsebojnem delovanju. Vzemite si nekaj minut in preberite to, nato pa se poglobimo v razvojna orodja Java (JDT) Eclipse. Najboljši način, da se nečesa naučite, je, da to preizkusite v praksi.

Če nadaljujemo s tem kratkim ogledom Eclipse, bomo ustvarili nov projekt v Javi. Izberite Datoteka > Novo > Projekt Java in ob pozivu za ime projekta vnesite Pozdravljeni, nato kliknite Končaj.

Zdaj pa poglejmo perspektivo "Java" (če še niste v njej). Odvisno od tega, kako želite upravljati zaslon, lahko spremenite perspektivo v trenutnem oknu tako, da izberete Okno > Odpri perspektivo > Java (Okno > Odpri perspektivo > Java) ali odprite novo okno z izbiro Okno > Novo okno in izberite novo perspektivo.

Kot lahko pričakujete, ima perspektiva Jave nabor pogledov, zasnovanih za vodenje razvoja Jave. Eden od njih, ki se nahaja v zgornjem levem kotu, je hierarhija, ki vsebuje različne pakete Java, razrede, arhive JAR in različne datoteke. Ta pogled se imenuje Raziskovalec paketov. Upoštevajte, da sta bila v glavni meni dodana dva nova elementa: Source in Refactor.

Razvojna orodja Java (JDT)

Za preizkus razvojnega okolja Java bomo izdelali in zagnali aplikacijo z imenom "Hello World". Ko ste v perspektivi Java, z desno miškino tipko kliknite mapo s izvornim testom projekta »Hello« (src) in izberite Novo > Razred, kot je prikazano na sliki 3. V pogovornem oknu, ki se prikaže, vnesite Hello kot ime razreda. Spodaj je napis Katere škrbine metod bi radi ustvarili? (Katere škrbine metod želite ustvariti?) Opomba public static void main(String args) in kliknite Končaj.

Slika 3. Ustvarjanje novega razreda v perspektivi Java

To bo ustvarilo datoteko .java z razredom Hello in prazno metodo main() v območju urejevalnika, kot je prikazano na sliki 4. Metodi dodamo naslednjo kodo (upoštevajte, da je opis za jaz je bil namerno izpuščen).

Slika 4. Pozdravljeni razred v urejevalniku Java

Med tipkanjem boste opazili nekatere funkcije urejevalnika Eclipse, vključno s preverjanjem sintakse in samodejnim dokončanjem kode. Poleg tega, ko vnesete začetni oklepaj ali dvojne narekovaje, Eclipse samodejno vstavi zaključni par zanje in postavi kazalec na sredino.

V drugih primerih lahko s kombinacijo povzročite samodejno dokončanje kode Ctrl+1. Funkcija dokončanja kode nudi kontekstno občutljiv seznam možnosti, med katerimi lahko izbirate s tipkovnico ali miško. Možnosti so lahko seznam metod, značilnih za določen predmet, ali del kode, ki temelji na različnih ključnih besedah, na primer for ali while.

Preverjanje sintakse je odvisno od inkrementalnega prevajanja. Ko shranite svojo kodo, se prevede v ozadju in preveri, ali so sintaksne napake. Sintaksne napake so privzeto podčrtane z rdečo, na levem robu pa se prikaže rdeča pika z belim X. Druge napake so na robu urednika označene s simbolom žarnice; to so težave, ki bi jih urejevalnik lahko popravil namesto vas (funkcija, imenovana Quick Fix).

V zgornji kodi se znak žarnice pojavi poleg stavka for, ker je bil opis za i izpuščen. Z dvojnim klikom na žarnico se prikaže seznam predlaganih popravkov. V našem primeru bomo morali ustvariti razredno polje i, lokalno spremenljivko i ali parameter i za metodo; če z miško izberete katero koli od teh možnosti, se prikaže koda, ki bo ustvarjena. Slika 5 prikazuje seznam predlaganih možnosti in predlagano kodo v primeru lokalne spremenljivke.

Slika 5: Možnosti hitrega popravka

Dvoklik na stavek vstavi kodo na želeno mesto v programu.

Če se program prevede brez napak, ga lahko zaženete tako, da izberete Teči v meniju Eclipse. (Upoštevajte, da ni ločenega koraka za prevajanje, ker prevajanje poteka, ko shranite kodo. Če vaša koda nima sintaktičnih napak, je pripravljena za izvajanje.) Prikaže se pogovorno okno Launch Configurations z želenimi privzetimi vrednostmi; kliknite Teči spodaj desno. Na spodnji plošči se prikaže nova plošča z zavihki (Konzola), ki prikazuje rezultate programa, kot je prikazano spodaj.

Slika 6. Rezultat programa

Program lahko zaženete tudi v razhroščevalniku Java. Najprej morate nastaviti prekinitveno točko v main() System.out.println() tako, da dvokliknete sivo polje na levi strani okna za urejanje poleg klica System.out.println(). Pojavila se bo modra pika. Na jedilniku Teči izberite ekipo Odpravljanje napak. Kot je opisano prej, se prikaže pogovorno okno "Zagon konfiguracij". Izberite ekipo Teči. Perspektiva se bo samodejno spremenila v perspektivo za odpravljanje napak, ki vsebuje številne zanimive nove poglede, kot je prikazano spodaj.

Slika 7. Perspektiva odpravljanja napak

Opazite pogled Debug v zgornjem levem kotu perspektive. Ta pogled prikazuje sklad klicev in vsebuje orodno vrstico v naslovni vrstici, ki vam omogoča nadzor nad izvajanjem programa. Plošča ima gumbe za nadaljevanje, premor ali konec programa, premik na naslednji stavek, korak čez naslednji stavek ali vrnitev iz metode. Plošča zgoraj desno vsebuje številne poglede z zavihki, vključno s spremenljivkami, prelomnimi točkami, izrazi in prikazom. Zavihek Spremenljivke je zdaj izbran, tako da lahko vidimo trenutno vrednost spremenljivke i.

Podrobnejše informacije o katerem koli pogledu je mogoče pridobiti s kontekstnim opisom orodja; Če želite to narediti, kliknite na naslov pogleda in pritisnite F1.

Dodatni vtičniki

Poleg vtičnikov tipa JDT za urejanje, prevajanje in razhroščevanje aplikacij obstajajo vtičniki, ki podpirajo celoten razvojni proces: modeliranje, avtomatizacija gradnje, testiranje enot, testiranje zmogljivosti, urejanje različic in upravljanje konfiguracije.

Eclipse vključuje vtičnik za delo s sistemom sočasnih različic (CVS) za upravljanje izvorne kode. Vtičnik Team se poveže s strežnikom CVS, kar omogoča članom razvojne ekipe, da delajo z nizom datotek, ki vsebujejo izvorno kodo, ne da bi posegali v spremembe, ki jih naredijo drugi. Tukaj ne bomo podrobneje raziskali upravljanja z viri iz Eclipsa, ker bi to zahtevalo namestitev strežnika CVS, čeprav je zmožnost podpore skupini razvijalcev in ne samo samorazvoja pomemben in sestavni del Eclipse.

Vtičnike, ki jih vzdržuje in distribuira Eclipse Foundation, lahko najdete na spletnem mestu Eclipse. Najobsežnejši seznam razpoložljivih vtičnikov je na voljo na strani Eclipse Plug-in Central, ki služi kot imenik vtičnikov.

Arhitektura platforme Eclipse

Platforma Eclipse vsebuje močan nabor vtičnikov (glejte sliko 8), ki podpirajo projekte, kot sta JDT in PDE.

Slika 8. Poenostavljena arhitektura platforme Eclipse

Temno modri bloki predstavljajo komponente, ki so osrednjega pomena za Rich Client Platform (RCP) v Eclipsu. Sam koncept RCP je izven obsega tega članka, vendar menimo, da je RCP preprosto nabor vtičnikov iz Eclipse, ki jih ljudje lahko uporabljajo pri razvijanju aplikacij, kot je Lotus Notes® 8. Svetlo modri bloki predstavljajo neobvezne (čeprav priporočljive) komponent za vključitev v aplikacije, ki temeljijo na RCP. In sivi bloki so popolnoma neobvezni. Platforma je sestavljena iz več komponent, nekaj jih bomo pogledali:

Runtime Runtime je koda, ki definira model vtičnika Eclipse, ki temelji na specifikaciji OSGi in ideji o razširitvah in razširitvenih točkah. Runtime ponuja tudi dodatne storitve, kot sta sistemski dnevnik in sočasnost. JFace/SWT Standard Widget Toolkit (SWT) je zbirka gradnikov, ki zagotavljajo uporabniški vmesnik in funkcionalnost Eclipse. JFace je preprosto nadnabor SWT, ki ponuja več razredov Model-View-Controller (MVC) za lažji razvoj grafičnih aplikacij. Delovna miza Delovni prostor daje Eclipsu osebnost. Na tej ravni je implementiran koncept pogledov, perspektiv in stvari, kot je urejanje oken. Pomoč (Uporabniška podpora) Ta komponenta Eclipse vam omogoča zagotavljanje podpore vašim uporabnikom. To je mogoče storiti s pomočjo sistema pomoči, ki uporabnikom omogoča iskanje po dokumentaciji pomoči, ali s pomočjo "goljufalnih listov", ki jih je mogoče končnim uporabnikom predstaviti kot interaktivne sezname opravil. Nadgradnja Komponenta za posodabljanje zagotavlja Eclipse sredstvo za posodabljanje aplikacij iz ene različice v drugo. Ekipa Komponenta ekipe je infrastruktura, ki razvojnim podjetjem omogoča povezovanje lastnih sistemov za nadzor različic. Vzorčna implementacija ponudnika je vtičnik CVS, vgrajen v Eclipse.

Zaključek

Od začetne kode, ki jo je napisal IBM, je Eclipse prerasel v odprtokodni ekosistem s polnimi funkcijami z več kot 100 sodelujočimi podjetji. Prenosna, razširljiva, odprtokodna infrastruktura ni več nova ideja, ampak z dobro premišljeno, robustno in elegantno zasnovo prevzame Eclipse povsem novo dinamiko.

Dobrodošli v ekosistemu Eclipse. Naš cilj je bil, da vam pomagamo priti do hitrosti na platformi Eclipse. To smo dosegli z uvodnim besedilom in preprosto vajo. Uporabite znanje, ki ste ga pridobili z branjem tega članka, in postanite aktivni član ekosistema Eclipse.

Kaj vam pomeni IBM-ov prispevek k odprtokodni skupnosti?

Marc Erickson in Angus McIntyre
Objavljeno 11/01/2001

Platforma Eclipse je zasnovana za gradnjo integriranih razvojnih okolij (IDE). Uporablja se lahko za ustvarjanje različnih računalniških rešitev od konca do konca za različna okolja izvajanja. Pri izbiri arhitekture potrebujejo ustvarjalci orodij:

  • Enaki konkurenčni pogoji in popolno razkritje brez skritih API-jev ali vmesnikov od orodja do orodja. Eclipse za ta namen ponuja odprtokodno platformo. Da bi zagotovili kakovost kode, prenosljivost in zmogljivost, objavljene API-je testira konzorcij sorodnih industrij.
  • Svoboda pri razširitvi platforme za doseganje novih možnosti. Eclipse ponuja možnost ustvarjanja izpeljanih del, vključno s prerazporeditvijo platforme. Uporaba Eclipse omogoča razvijalcem orodij, da se osredotočijo na svoje temeljne naloge in nove modele razvojne tehnologije.
  • Prejmite pravočasne odgovore na zahteve po spremembah in izboljšavah izdelkov, dostavljene na nadzorovan in organiziran način. Razvijalci lahko naredijo različne spremembe prek www.eclipse.org. To dosežemo s sodelovanjem in vso možno pomočjo razvijalcev pri razvoju platforme.

Vprašanja in odgovori

    Kaj je Eclipse.org?

    Eclipse.org je odprt konzorcij ponudnikov orodij za razvoj programske opreme, ki temelji na skupnosti. Skupnost je zainteresirana za sodelovanje pri izboljšanju razvojnih okolij in integracije izdelkov. Skupnost si deli skupen interes pri ustvarjanju izdelkov, ki lahko z uporabo tehnologije vtičnikov zlahka delujejo v različnih okoljih. S sodelovanjem in deljenjem ključne integracijske tehnologije se lahko prodajalci orodij, združljivih z Eclipse, osredotočijo na lastna strokovna področja in ustvarjanje novih razvojnih tehnologij.

    Kaj je platforma Eclipse?

    Glavna ideja projekta Eclipse je ustvariti "Apache za orodja za razvijalce." To pomeni ustvarjanje odprtokodne infrastrukture, ki zagotavlja številne osnovne storitve, ki jih razvijalci programske opreme potrebujejo. To bi moral biti "zbirka orodij za razvoj kompletov orodij". Več kot le zbirka API-jev bo ogrodje Eclipse sestavljeno iz dejanske kode, napisane za opravljanje resničnega dela.

    Platforma Eclipse zagotavlja osnovo za izdelavo in izvajanje integriranih orodij za razvoj programske opreme od konca do konca. Platforma je sestavljena iz odprtokodnih komponent, ki jih ponudniki orodij uporabljajo za izdelavo rešitev, ki so vgrajene v integrirano delovno območje. Platforma Eclipse integrira tehnologijo v dobro zasnovano okolje za načrtovanje in implementacijo.

    Zakaj IBM izdaja Eclipse kot odprtokodno?

    Odprtokodni je edina pot zagotoviti odprto platformo za integracijo orodij. Poleg tega obstajajo druge prednosti uporabe odprte kode.

    Glavna med temi prednostmi je ponovna uporaba izdelkov. Zakaj bi nekaj obnavljali, če že obstaja v delujočem formatu? Z uporabo odprte platforme Eclipse se lahko ustvarjalci orodij osredotočijo na lastna razvojna področja z zagotavljanjem orodne infrastrukture za gradnjo integriranih razvojnih okolij (IDE). Ne glede na to začne uporaba kode nekoga drugega pridobivati ​​zaupanje.

    Zaupanje v vsako novo arhitekturo ali platformo se pridobi dolgo časa. Na primer, težko je pridobiti zaupanje razvijalcev pri ustvarjanju orodij, ki vsebujejo lastniške vmesnike, ki omejujejo uporabo aplikacije v določenem operacijskem sistemu (na primer Windows). Poleg tega je težko pridobiti zaupanje ustvarjalcev orodij, če so različne ravni API-jev dobavljene z različnimi nivoji orodij (na primer API-ji skupnosti, ki se razlikujejo od API-jev podjetij).

    Platforma Eclipse gradi zaupanje z zagotavljanjem izvorne kode platforme.

    Odprta koda je na voljo za vse API-je, brez notranjih, lastniških ali skritih vmesnikov. Razvijalci, katerih zaupanje si je potrebno pridobiti, si lahko ogledajo kodo in naredijo ustrezne zaključke. Zaupajte viru in inovirajte!

    Združevanje odprtokodnih razvijalcev lahko pomaga tudi pri ustvarjanju boljše kode. Ko sodelujejo pri ustvarjanju kode, se ustvarjalci vanjo še dodatno potrudijo. Takšen kodeks postane odraz njihovega dela, produkt ugleda posameznika in podjetja. Zaupajte virom in utrdite svoj položaj na trgu!

    Odprtokodni projekt, ki temelji na čistih specifikacijah, lahko zagotovi kodo, ki je lažje razumljiva. Vmesnik opisuje (v smislu črne skrinjice) abstraktno obnašanje komponente. S preučevanjem izvorne kode lahko razvijalci analizirajo delovanje kode vrstico za vrstico. Težko je zaupati vmesniku nekoga drugega. Zaupajte virom in raziščite tehnologijo!

    Lažje je odpravljati napake v odprti kodi. Ko je napaka najdena, bo ogled izvorne kode pomagal pospešiti identifikacijo njenega vzroka. To je lahko vaša napaka ali napaka platforme in okolja. Dostop do izvorne kode odpravi delo ugibanja vzroka napake. Skupna razprava o težavah na forumih vam omogoča, da zapiske delite z drugimi, ki so seznanjeni s podobnimi težavami. Če se težava pojavi v pogosto uporabljeni odprtokodni kodi, jo je lažje popraviti ali zaobiti. Zanašajte se na vire, da dobite informacije, ki jih potrebujete.

    Samo delo na kompleksni tehnologiji je precej težko. Več izdelovalcev orodij se lahko loti skupnega raziskovanja nova tehnologija. Zaupajte virom, da zmanjšate tveganje!

    Dobavitelji orodja prihajajo in gredo. Podjetniški razvijalci želijo biti prepričani v dolgoročno podporo platforme. Z izvorno kodo lahko korporacije začnejo delovati v kratkem času in vzdržujejo poslovanje za dolgo obdobje: Zaupajte izvorni kodi za rast vašega podjetja!

    Prilagodljivost je glavna značilnost Eclipse. Z Platforma Eclipse komponento, ki vas ne zadovolji, lahko spremenite glede na vaše zahteve. Če na primer z urejevalnikom niste zadovoljni, ustvarite svojega ali povežite enega od priljubljenih urejevalnikov, ustvarjenih na odprtokodnem trgu, ki ga ponuja platforma Eclipse. Želite povezati novo platformo za gostovanje z vašo obstoječo podporo od konca do konca? Zaupajte virom in ustvarite vtičnike!

    Odprta koda, odprta skupnost in odprta platforma torej postavljajo enake konkurenčne pogoje, ki jih majhni in veliki ustvarjalci orodij potrebujejo za podporo razvojnih projektov od konca do konca in raziskovanje novih meja.

    Še vedno niste prepričani? Hvala Franku Heckerju za njegovo odlično delo pri ustvarjanju odprtokodne trgovine (glejte povezavo v virih).

    Na katerih platformah je na voljo Eclipse?

    Eclipse je implementiran in preizkušen za Windows NT, Windows XP (Beta), Windows 2000, Windows 98, Windows ME in Red Hat Linux različice 7.1. Tehnologija Eclipse je bila napisana v Javi, kar omogoča enostavno uporabo na številnih različnih platformah.

    Bo Eclipse prenesen na druge platforme?

    To je težava, ki jo je treba rešiti, a to je lepota platforme Eclipse. Ustvarjalci orodij lahko sprejmejo tehnologijo Eclipse in raziskujejo meje novih možnosti z zaupanjem v industriji preizkušeno platformo odprtih orodij.

    Kakšna je cena platforme Eclipse?

    Platforma Eclipse je na voljo pod licenco Common Public License. Podrobnosti o licenci so navedene na http://www.eclipse.org.

    Kaj pa dejstvo, da se razvijalci orodij pravzaprav nočejo ukvarjati z izvorno kodo in od nje ne morejo imeti veliko koristi?

    Dostop do izvorne kode pogosto omogoča hitro odkrivanje težav, odpravlja dvojno delo in pospešuje dokončanje nove združljive tehnologije.

    Ali bo to na koncu pomenilo razdelitev izdelka na nezdružljive različice?

    Skupnost Eclipse ima pravico definirati in odobriti "uradne" različice platforme Eclipse. Člani skupnosti lahko tudi spreminjajo in dopolnjujejo za svoje potrebe. Vendar se osnove kode razlikujejo in ustvarjanje različice po meri zunaj projekta Eclipse postaja vse težje. Povečajo se tudi stroški prenosa izboljšav iz "uradne" različice vanjo. Tako so vsi člani skupnosti Eclipse zainteresirani za skupno delo na skupni jedrni tehnologiji in infrastrukturi Eclipse.

    Ali bodo sprejeti ukrepi za opredelitev "uradne" različice v odposlanih izdelkih (na primer kot del blagovne znamke, kot je "Eclipse Inside")?

    To vprašanje obravnava upravni odbor Eclipse.

    Kakšno je tveganje potrošnika pri uporabi različic po meri?

    Običajno je "uradna" različica platforme Eclipse po testiranju in pregledu objavljena na www.eclipse.org. To različico podpira Eclipse.org. Različice po meri mora v celoti podpirati prodajalec, tako da so prednosti, pridobljene s sodelovanjem s člani skupnosti, izgubljene.

    Ali bodo ustvarjalci orodij zaskrbljeni zaradi odprtokodne tehnologije Eclipse, ki bo "omazala" drugo kodo, če jo bodo uporabljali v svojih projektih?

    Eclipse je licenciran pod licenco Common Programming License, ki vam preprečuje, da bi poškodovali drugo kodo, ki kliče kodo Eclipse z uporabo javnih API-jev.

    Kaj pa moteče stvari, ki bi jih uporabniki lahko našli v izvorni kodi Eclipse, kot so hrošči?

    Odprtokodni razvoj poveča možnosti za iskanje in odpravo manjših in večjih napak. Odkrije in popravi jih izvirni razvijalec ali člani skupnosti.

    Ali bi lahko razkritje izvorne kode konkurentom razkrilo zaupne načrte in strategije?

    Da, v bistvu si delimo strategije z našimi konkurenti. Nedvomno obstaja pomembnejše mnenje. Razvijalci so naveličani integracije orodij samo v svoje aplikacije. Utrujeni so od zapravljanja časa za ugotavljanje, kako omogočiti, da orodja delujejo skupaj v računalniškem okolju od konca do konca. S platformo Eclipse lahko vsi izkoristijo temeljito razumevanje, kako integrirati IDE na produkcijski ravni. To delamo izključno zato, da končnemu razvijalcu olajšamo delo.

    Ali lahko uporabniki preprosto uporabljajo izvorno kodo Eclipse in se za podporo zanesejo na člane skupnosti brez ustreznega povračila?

    Potencialno da, vendar bo prej ali slej zmožnost interakcije končnemu uporabniku zagotovila večjo vrednost, kot bi jo lahko zagotovila uporaba sama. Neodvisni izolirani razvijalci bodo postopoma zbledeli v pozabo.

    Kaj pa, če konkurenti poskušajo "ukrasti" odprtokodni izdelek za svoje namene?

    Tak poskus je možen, vendar je skupnost zaščitena s skupno javno licenco. Uradne različice platforme Eclipse bodo izhajale tudi v prihodnje. Licenca je strukturirana tako, da si noben dobavitelj ne more pridobiti nezakonite koristi od uporabe izdelka. S sodelovanjem pri projektu Eclipse želimo pomagati doseči smiselne enake konkurenčne pogoje za razvijalce orodij.

    Kje lahko najdem informacije o integraciji orodij v tehnologijo Eclipse?

    Na spletni strani http://www.eclipse.org je več tehničnih opisov.

    Kako deluje platforma Eclipse in katere funkcije ponuja?

    Platforma Eclipse je bila zgrajena na naslednjih načelih:

    • Omogočite brezhibno integracijo notranjih orodij in med njimi različne vrste ponudniki vsebin in orodij.
    • Podpora za ustvarjanje različnih orodij.
    • Podpira neomejeno število prodajalcev orodij, vključno z neodvisnimi prodajalci programske opreme (ISV).
    • Podpira orodja za delo s katerim koli formatom (vključno s HTML, Javo, C, JSP, EJB, XML in GIF).
    • Podpira okolja za razvoj aplikacij z in brez grafičnega uporabniškega vmesnika (GUI).
    • Deluje na številnih operacijskih sistemih, vključno z Windows in Linux.
    • Izkoriščanje priljubljenosti jezika Java za pisanje orodij.
  • Bo IBM izdal izvorno kodo platforme Eclipse odprti skupnosti? Kdaj se bo to zgodilo?

    Da, izvorna koda je zdaj na voljo pod skupno javno licenco. Zelo kmalu bo IBM preusmeril Eclipse v začasni upravni odbor, ki bo nadziral platformo Eclipse.

    Kdo je v začasnem upravnem odboru?

    Začasni svet bo znan naknadno.

    Želim se pridružiti skupnosti. Kako narediti?

    Obiščite www.eclipse.org.

    Kako postati član sveta?

    Sodelujte, prispevajte, pomagajte: ponudite kodo, ideje, izdelke, popravke napak, izmenjujte znanje in izkušnje.

    Kako je podprta platforma Eclipse?

    Podpora je na voljo prek foruma in e-pošte na prostovoljni osnovi z uporabo virov, ki jih priznava skupnost. podrobne informacije ki se nahaja na www.eclipse.org

    Ali obstaja podpora 24/7?

    Na podlagi česa je izvoljen začasni upravni odbor?

    Z omejenim številom osebja lahko ekipa Eclipse komunicira le z nekaj izbranimi podjetji, izbranimi za izgradnjo platforme. Člani začasnega upravnega odbora so izbrani izmed podjetij, ki so prispevala k razvoju platforme, za zdaj poskusno. Obstajajo trije kriteriji za izbor: člani uprave morajo uporabljati Eclipse v svojem podjetju; za ustvarjanje narekovajev morajo uporabljati tudi Eclipse; morajo odkrito podpirati Eclipse.org.

    Zakaj ste tako dolgo odlašali z objavo izvorne kode Eclipse?

    Ko so bili načrti podjetja za dostavo izvorne kode natančno preučeni, je razvojna ekipa želela zagotoviti, da je bila prva platforma temeljito razvita in temeljito testirana. Preizkusili smo več alternativnih konceptov gradnje, nekateri so že na trgu. Pozneje smo te ideje delili z drugimi ponudniki orodij in jih izboljšali. Platforma Eclipse je zdaj pripravljena za prvo izdajo.

    Ko IBM izda tehnologijo za brezplačno distribucijo, ali to pomeni, da IBM ni več zavezan tej tehnologiji?

    IBM se zavezuje, da bo sprejel platformo Eclipse in jo uporabil kot osnovo za celotno IBM-ovo družino orodij za razvoj programske opreme od konca do konca, ki je družina WebSphere Studio. Ti izdelki imajo koristi od integriranega zagotavljanja kakovosti, legendarne IBM-ove podpore za izdelke in naše zavezanosti blagovni znamki IBM. Uporabljajo podobne vmesnike in so zgrajeni na tehnologiji, ki je skupna platformi Eclipse.

    Kje lahko najdem dokumentacijo in informacije o Eclipsu?

    Na www.eclipse.org.

    Kako drugačen je Eclipse od .NET?

    Tehnologija .NET je bila ustvarjena izključno za uporabo na Microsoftove platforme prek lastnega vmesnika, ki ga vsiljuje Microsoft. Razvijalci se morajo odzvati na spremembe v .NET. V svetu, ki je označen kot več kot tehnologija "wintel", je platforma .NET precejšnja nevšečnost. Računalniški projekti od konca do konca, ki morajo integrirati strežnike, delovne postaje, vdelane naprave in dlančnike, se izvajajo v različnih drugih zelo zrelih in naprednih okoljih izvajanja. To vodi do uporabe številnih zmogljivih procesorskih arhitektur in operacijskih platform, kot so OS/390, Linux in QNX.

    Platforma Eclipse je na voljo pod odprto javno licenco z vsemi jasno dokumentiranimi API-ji in razširitvenimi točkami, tako da razvijalcem orodij omogoča podporo poljubnemu številu namiznih okolij, vključno z Microsoftovimi izdelki.

    Kako se Eclipse primerja z odprtokodno pobudo Sun Microsystems?

    Vizija projekta Eclipse je ustvariti "Apache za orodja za razvijalce." To pomeni ustvarjanje odprtokodne infrastrukture, ki zagotavlja številne osnovne storitve, ki jih razvijalci programske opreme potrebujejo. To bi moral biti "zbirka orodij za razvoj kompletov orodij". Več kot le zbirka API-jev bo ogrodje Eclipse sestavljeno iz dejanske kode, napisane za opravljanje resničnega dela.

    Kot pravi Erich Gamma: »Vse v Eclipsu je vtičnik. Java IDE nima posebnega statusa, je le še en nabor vtičnikov, ki prikazujejo enostavno integrirano razširljivost platforme. Če platformo Eclipse naredite odprtokodno, lahko ustvarjalci orodij naredijo isto "in ne samo za ustvarjanje novih vtičnikov, ampak tudi za pomoč pri izboljšanju obstoječih. Posledično imajo velika podjetja in predstavniki podjetij enake konkurenčne pogoje za integracijo orodij."

    Kakšne so razlike med WebSphere Studio Workbench in platformo Eclipse?

    WebSphere Studio Workbench uporablja Eclipse kot osnovo za zagotavljanje integracij izdelkov, ki podpirajo programska platforma WebSphere. WebSphere Studio Workbench je primer uporabe tehnologije Eclipse iz platforme Eclipse.

    Eclipse je odprtokodna platforma za integracijo orodij, ki je na voljo za uporabo v katerem koli delovnem okolju.

    Razlikujejo se na štiri glavne načine:

    1. Podpora

      Podpora za platformo Eclipse je na voljo prek konzorcija Eclipse.org, medtem ko je podpora za WebSphere na voljo prek IBM-ove standardne podporne strukture (PartnerWorld).

      Licenciranje

      Platforma Eclipse je na voljo pod licenco Common Public License, medtem ko je WebSphere Studio Workbench na voljo pod licenco IBM PartnerWorld.

      Stranski proizvodi/spremembe izvorne kode

      Platforma Eclipse razvijalcem orodij omogoča raziskovanje novih meja, ciljanje na nove platforme in OS z razširitvijo in spreminjanjem kode, izpeljane iz projekta Eclipse. WebSphere Studio Workbench mora biti integriran in distribuiran tako, kot ga je prvotno dobavil IBM.

      Znamčenje

      Tehnologija Eclipse ni centralno označena. kako komponento blagovno znamko, jo lahko prevzamejo člani skupnosti, ko izdajo združljive izdelke. WebSphere Studio Workbench vključuje lastno individualno blagovno znamko, partnerske programe in ponudbe podpore.

  • Kdaj izbrati Eclipse in kdaj WebSphere Studio Workbench?

    Da bi orodjarjem pomagali pri izbiri tehnologije, morajo odgovoriti na nekaj preprostih vprašanj:

    Določite podprto delovno okolje orodja:

    • Če je samo WebSphere, morate izbrati WebSphere Studio Workbench.
    • Druga okolja ali razširitve za prihodnje tehnologije? Izbrati morate platformo Eclipse.
    • Obe okolji. Odločitev je treba sprejeti po oceni obsega sodelovanja med IBM-om in IBM-ovimi partnerskimi programi.
  • Ali boste ohranili celotno ponudbo, tako kodo Eclipse kot svojo?

    • Če ne, potem je WebSphere Studio Workbench bolj primeren za vas.
  • Ali nudite orodja za platforme, ki jih IBM ne podpira?

    • Če da, potem morate izbrati platformo Eclipse.
    • Če ne, potem je treba izbrati na podlagi prejšnjih dveh meril.
  • Ali želite imeti na voljo uradno podporo in sodelovanje pri pridruženi programi IBM.

    • Če da, potem morate izbrati WebSphere Studio Workbench.
    • Če ne, potem morate izbrati platformo Eclipse.

IT tehnologije ne stojijo na mestu, ampak se razvijajo vsak dan. Ustvarjajo se novi programski jeziki, ki nam omogočajo uporabo vseh zmožnosti, ki nam jih daje računalnik. Eden najbolj prilagodljivih, zmogljivih in zanimivih jezikov je Java. Za delo z Javo morate imeti okolje za razvoj programske opreme. Ogledali si bomo Eclipse.

Eclipse je razširljivo integrirano razvojno okolje, ki je prosto dostopno. Eclipse je glavni tekmec in vprašanje je: "Kateri je boljši?" še vedno ostaja odprta. Eclipse je zmogljiv IDE, ki ga uporabljajo številni razvijalci Java in Android za pisanje različnih aplikacij za kateri koli OS.

Pozor!
Eclipse zahteva veliko dodatnih datotek, najnovejše različice ki ga lahko prenesete z uradne strani Java. Brez njih Eclipse sploh ne bo začel namestitve.

Seveda je Eclipse zasnovan za pisanje programov. Po izdelavi projekta lahko programsko kodo vnesete v urejevalnik besedil. Če pride do napake, bo prevajalnik izdal opozorilo, označil vrstico, v kateri je nastala napaka, in razložil njen vzrok. Toda prevajalnik ne bo mogel zaznati logičnih napak, to je napak pogojev (nepravilne formule, izračuni).