Eclipse
Från Rilpedia
Eclipse är enligt Eclipse egen definition [1] "an open extensible IDE for anything and nothing in particular", vilket på svenska betyder ungefär: en öppen utbyggbar utvecklingsmiljö för vad som helst, men ingenting särskilt. Med öppen avses möjligheten att för vem som helst hämta källkoden till Eclipse och använda den enligt de regler som specificeras i Eclipse Public License, den licens som gäller för Eclipse. Vem som helst kan även bidra till utvecklingen av Eclipse.
I praktiken är Eclipse ett vanligt verktyg för att utveckla programvara i programmeringsspråket Java. Utvecklingsverktyget är med sina egna moduler för olika användningsområden det näst populäraste i världen, efter Microsoft Visual Studio [2]. Eclipse går att köra på ett flertal olika operativsystem, t.ex. Windows, Linux, Mac OS X och Solaris [3] och finns tillgängligt till ett flertal olika språk, bland annat Svenska.
Innehåll |
Historia
Från början var Eclipse ett projekt inom IBM för att ta fram en efterföljare till IBM:s föråldrade utvecklingsplattform Visual Age for Java. Projektet knoppades efter en tid av från IBM och släpptes som öppen programvara. Samtidigt bildades ett fristående oberoende konsortium (Eclipse Foundation) som har nått stora framgångar med att knyta stora programvaruaktörer som Rational (numera en del av IBM), BEA och Borland till projektet.
Användargränssnitt
För att förstå sig på och på ett bra sätt arbeta i Eclipse är det viktigt att känna till dess grafiska uppbyggnad. Två av de mest centrala begreppen är vy (eng. view) och perspektiv (eng. perspective). En vy är ett fönster i Eclipse med syftet att presentera en specifik aspekt av programvaran så att användaren av programvaran kan lösa en viss uppgift. T.ex. finns det en vy för att visa en programvaras hierarkiska uppbyggnad (vid utveckling i Java kallas denna för paketstruktur). Ett annat exempel på en vy är det fönster som visar vilka fel som för närvarande finns i programvaran. Detta är dock bara två av de vyer som finns definierade som standard i Eclipse. Vyer kan flyttas runt och ordnas efter egna önskemål. En uppsättning vyer tillsammans med dess storlek och position kallas för ett perspektiv. Olika perspektiv finns definierade som standard där syftet är att framhäva de vyer som behövs för att utföra en viss uppgift, som t.ex. avlusning (eng. debugging) av programvaran. En användare kan både skapa nya och förändra befintliga perspektiv genom att ta bort, lägga till, ändra storlek och flytta på vyer och sedan välja att spara resultatet som ett befintligt eller nytt perspektiv.
Funktionalitet
Eclipse innehåller redan vid en standardinstallation en stor uppsättning funktionalitet som underlättar vid utveckling av programvara. Några av dessa är:
- Trädstruktur över paket och klasser separerade efter projekt.
- Översikt över de delar som utgör en klass, så som variabler och metoder.
- En lista över i koden definierade uppgifter som kvarstår att göra.
- Möjlighet att inifrån Eclipse interagera med ett program i textläge.
- En lista över möjliga fel (eng. warnings) och fel som omöjliggör kompilering av programvaran (eng. errors).
- Textbehandling med stöd för färgmarkering, automatisk indentering, kodassistering (eng. code assist), möjlighet att dölja kod (eng. code folding), understrykning av kod beroende på olika villkor, och förslag på lösningar vid problem (eng. quick fix).
- Automatisk generering av viss kod t.ex. konstruktorer och get* och set*-metoder.
- Refaktorisering av befintlig kod, t.ex. möjlighet att byta namn på samtliga instanser av en variabel eller flytta en metod.
- Navigering genom källkoden, t.ex. navigera till en metods deklaration, eller lista en klass position i en typhierarki. Precis som i en webbläsare går det att gå fram och tillbaka bland tidigare platser i navigationshistoriken.
- Kraftfull sökfunktion med inbyggd cache, t.ex. går det att få fram en lista över från vilka metoder som en annan metod anropas.
- Möjlighet att nå mycket funktionalitet via tangentbordet.
- Guider (eng. wizards) för att skapa nya artefakter såsom klasser och testklasser.
- Hämta och uppdatera källkod via inbyggd klient för CVS.
- Stöd att arbeta efter paradigmet testdriven utveckling (eng. Test Driven Development) via JUnit.
- Förenklad paketering och distribution med byggverktyget Ant.
Notera att eftersom en standardinstallation av Eclipse avser programvaruutveckling i programmeringsspråket Java så reflekterar listan över funktionalitet ovan funktionalitet för att utveckla programvara med just Java.
Moduler
Även om programvaran har störst stöd från Javautvecklare så är fullt möjligt att utveckla programvara i andra språk än Java, t.ex. C++ eller PHP [4]. Det är också fullt möjligt att att använda Eclipse till något annat än att skriva källkod, som t.ex. arbeta med modeller eller utföra testning. Denna möjlighet finns eftersom Eclipse är utbyggbart genom s.k. moduler (eng. plug-in). Nya moduler lägger ofta till vyer och perspektiv till Eclipse för att lösa just de uppgifter modulen avser lösa. Moduler för att lösa olika uppgifter går att hitta på en mängd olika webbplatser på Internet. Eclipse själva tillhandahåller också en katalog för moduler. Vem som helst kan utveckla en modul för att lösa vilket problem som helst. Värt att notera är dock att moduler måste utvecklas i Java eftersom Eclipse i sig är utvecklat i Java [5].
Versionshistorik
Sedan 2006 släpper Eclipse Foundation, som styr utvecklingen av Eclipse, en stor release per år. Dessa sker normalt sett i slutet på juni och hittills så har varje release fått namnet efter en av Jupiters månar. Det sker dock kontinuerlig utveckling av Eclipse och nya versioner släpps med jämna mellanrum. Eclipse Foundation använder sig även av milstenar (t.ex. M1, M2, osv...) för att märka speciella versioner.
Kodnamn | Version | Datum |
---|---|---|
Callisto | 3.2 | 2006-06-30 |
Europa | 3.3 | 2007-06-29 |
Ganymede | 3.4 | 2008-06-25 |
Galileo | 3.5 | 2009-06-24 |
Källor
- ↑ Eclipse 3.2, Welcome, Overview
- ↑ http://www.linux-watch.com/news/NS4521261966.html
- ↑ http://www.aw-bc.com/catalog/academic/product/0,1144,0321288157,00.html
- ↑ http://www.aw-bc.com/catalog/academic/product/0,1144,0321288157,00.html
- ↑ http://www.aw-bc.com/catalog/academic/product/0,1144,0321288157,00.html