Eclipse - en formørkelse af effektiviteten?

Nogle gange bør man prøve noget nyt selvom det betyder at man kommer til at arbejde mindre effektivt for en stund. Nogle gange kan man lave små ændringer i sin arbejdsgang og stille og roligt blive endnu mere effektiv, andre gange skal der en større revolution til.

I tirsdags installerede jeg Eclipse sammen med Perl-plug in'et EPIC og Subversion-plugin'et subclipse, en revolution i forhold til min ret spartansk opsatte vim. Mange af de features jeg forventede at få mulighed for kan sagtens laves med vim, men hidtil at det ikke lykkes mig at rent faktisk begynde at bruge dem.

Jeg må indrømme at jeg ikke forstår pointen med syntaksfarvning. Hvis man ikke kan kende forskel på keywords, operatore, funktionsnavne og variable, så er man ikke god nok til sit sprog. Jeg kan dog godt lidt se nytten af at fremhæve strenge og kommentar-blokke. Men syntaksfarvning af Perl er svært og Eclipse gør det ikke godt nok. Specielt har jeg flere steder oplevet at temlig simple regulære udtryk har ødelagt syntaksfarvningen af et halvthundrede linjers kode. Jeg kan måske lave et bedre farvevalg der netop fremhæver de ting jeg ønsker fremhævet, men jeg nægter at lave kommentare i min kode bare for at please syntaksfarvningen.

Automatisk syntakstjek af kode er en rar feature og det er rigtig fint at jeg kan klikke mig ned igennem navigator-vinduet og finde de filer der har syntaksproblemer. Det virker dog for tilfældigt hvordan ikonerne i filtræet bliver opdateret. Den lette adgang til at køre Perl::Critic på sin kode er også rar, men desvære skal det køres eksplicit og Perl::Critic-fejl optræder ikke i 'Explain Errors/Warnings'-vinduet. At systemet trækker kommentare der begynder med 'WARNING', 'TODO' eller lignende ud i et 'Tasks'-vindue er også fint, igen desvære kun for de filer man har åbnet og ikke for hele projektet. Alle ovenstående tjek bliver fint vist til højre for scrollbaren, så de er lette at finde i store filer.

Integrationen med subversion synes jeg virker lidt omstændigt. En del af det skyldes dog at jeg bruger Subversion over ssh og jeg insisterer på at bruge ssh-agent hvor jeg skal acceptere enhver brug af mine nøgler - og selv på kommandolinjen er der flere operationer der kræver en to-tre godkendelser. Jeg føler dog af Subclipse giver mig endnu mere meningsløs klikken rundt, muligvis fordi jeg ikke helt rigtig forstår processen.

Eclipses håndtering af filtyper er gammeldags og elendig. For at få genkendt filer som Perl-filer, insisterer Eclipse på at man skal bruge bestemte (konfigurerbart) filendelser. For ting der skal oversættes til binærkode er dette sikkert fint, men scripts skal ikke have nogen endelse (basta!). Den bedste måde at omgå dette er plug in'et 'Emacsish' hvor jeg i selve Editoren kan gennemtvinge en bestemt indholdstype, men valget bliver ikke gemt og påvirker kun editoren.

Jeg har på ingen måde nået at lære at bruge genvejstasterne effektivt. Når jeg kikker ned over listen over genvejstaster, kommer jeg dog let til at savne Emacs' enkle kombinationer. Eclipse har også fået mig til at genopleve andre Emacs-minder, nu åbner jeg min editor som det første om morgenen og lukker den igen som det sidste om eftermiddagen.

Jeg leger nok med Eclipse en uges tid endnu, men jeg savner min vim...

Kommentarer (7)
sortSortér kommentarer
  • Ældste først
  • Nyeste først
  • Bedste først
#2 Peter Makholm Blogger

Måske hvis man udvikler i Perl.

Det er rigtigt at kvaliteten af syntaksfarvningen afhænger af sprogmodulet og det er formodentlig også en EPIC-specifik ting der gør at Perl::Critic-fejl ikke optræder med forklaringer i Errors/Warnings-vinduet.

Det sidste er bare en mindre detalje, som jeg formodentlig ville gøre en indsats for at få rettet hvis jeg ønsker at bruge Eclipse på mere permanent basis.

Syntaksfarvning for perl er som sagt svært, men er det virkelig nødvendigt for nogle sprog overhovedet ud over at adskille kode fra ikke-kode?

  • 0
  • 0
#3 Thomas Jensen

Har man ikke altid prøvet at lave en eller anden form for identifikation af sine variable, keywords, funktioner osv. Jeg kan i hvert fald huske i mit første job som C/C++ udvikler, var der lavet nogle kodekonventioner som f.eks. Globale variable starter med g og lokale med l. Statiske variable skal altid skrives med versaler og hvem husker da ikke den ungarnske notation.

Nogle af notationsformerne hænger stadig ved, men andre kan/har man erstattet af syntax farvning og det virker langt mere overskueligt, synes jeg. Det giver et hurtigt overblik, specielt over kode man ikke selv har lavet.

Risikoen ved de nye moderne editorere er vel nærmest at man bliver "doven". Man skal ikke selv huske så meget mere, da alt næsten bliver serveret. F.eks. autocompletion osv. Lidt lige som man efter at have fået mobil telefon, overhovedet ikke kan huske ét eneste telefonnr. længere :o)

Alt i alt mener jeg dog selv at jeg er blevet langt mere effektiv med Java på Eclipse end jeg var med den gamle Borland C++ builder, vi og UltraEdit...om end en smule "doven" :o)

  • 0
  • 0
#5 Peter Makholm Blogger

syntax highlighting som den er i vim - har efter min mening en stor fordel- at man straks kan se hvis man f.ex. har glemt en slut ", ' eller lign.

Ja, og lige netop disse tilfælde kan jeg se fordelen af klart visulet at adskille hvad fortolkeren vil opfatte som kode og hvad den ikke vil opfatte som kode. For sprog det er let at syntaksfarve burde det også være rimelig let at kun farve disse to, tre tilfælde. Men når syntaksfravelægningen går i stykker, så hjælper det kun lidt bare at skrue ned på graden af farvelade.

Det er lidt forskellige ting der ødelægger de to syntaksfarvninger. I vim giver følgende for eksempel problemer for mig:

[code=perl]!!( defined($depth) && $depth eq 'infinity' )[/code]

Mens syntaksfarvningen i Eclipse ofter er død for mig på grund af simple regulære udtryk.

  • 0
  • 0
#6 Kasper Sørensen

Hej Peter,

I forhold til dine subclipse problemer kan jeg råde dig til at droppe subclipse og gå efter subversive plugin'et istedet. Sidstnævnte er også i incubation area på eclipse.org og har fungeret fejlfrit for mig. Jeg har også oplevet mange problemer med subclipse, bl.a. at der gik kuk i synkronisering hvis forskellige udviklere benyttede forskellige SVN klienter (vi benyttede henholdsvis subclipse, tortoiseSVN og commandline svn). Det eneste irriterende ved subversive er, at der er to forskellige update sites, da "connector" delen af plugin'et vist ikke er udgivet under samme licens som resten. Her er pluginets hjemmeside:

http://www.eclipse.org/subversive/downloads.php

  • 0
  • 0
#7 Jørgen Elgaard Larsen

Jeg er selv glad for Eclipse til Java og c. Men EPIC-modulet er desværre ikke helt modent endnu. Jeg prøver med jævne mellemrum at bruge det, for at se om det skulle være blevet modent. Men indtil nu er jeg hoppet tilbage til emacs hver gang. EPIC er dog snart ved at være en værdig konkurrent, tror jeg.

Ligesom dig har jeg ikke noget at bruge syntakshighlighting til, men det er altså rart, hvis IDE'et understøtter syntaktisk indrykning.

Jeg er dog endnu ikke stødt på en fejlfri perl-bevidst editor. Selv emacs' perl-mode kan have problemer med nogle regexp, og også af og til med dobbelt-kolon.

  • 0
  • 0
Log ind eller Opret konto for at kommentere