Gå til innhold

Hvilket Java editor bruker dere?


Anbefalte innlegg

Eg er heilt uenig med å bruke ein teksteditor aleine, spessielt når ein skal debugge. Verda er så mykje betre med ein skikkeleg IDE som har debugger enn å sitja med System.out.println()

 

Eg begynte å programmere Java med ein enkelt teksteditor og eg kan ikkje idag fatte at folk var så *slemme* å anbefalte meg noko sånt. Det er faktisk mykje meir lærerik å bruke ein IDE, veldig mykje meir og! Raude streker på det eg gjer feil er vanvittig tidsbesparandes og ikkje minst lærerikt på ein gøy måte. Ingenting slår ein skikkeleg forklaring på kor og kva som er feil istadenfor ein stygg exception.

Lenke til kommentar
Videoannonse
Annonse

Det å starte med en IDE tror jeg fort kan gjøre til vanskelig da du både må lære å programmere samtidig som du må lære deg en komplisert IDE. Greia med de exceptionene du får er jo at du skal få et innblikk i hva du har gjort feil. På den måten lærer du deg, med en laaaaaaaang feilmelding at det der skal gjøres på en annen måte. Da du da retter det er det også lettere å huske at ting ikke skal gjøres på den måten i senere tid. Er selv veldig glad jeg startet med en vanlig teksteditor og ikke en IDE. På den måten slipper jeg en del av de røde strekene i IDE'en som jeg ser andre får fordi jeg allerede har lært, the hard way, at det ikke er måten å gå frem på.

Lenke til kommentar
Eg er heilt uenig med å bruke ein teksteditor aleine, spessielt når ein skal debugge. Verda er så mykje betre med ein skikkeleg IDE som har debugger enn å sitja med System.out.println()

 

Poenget mitt var at om du er en svært uerfaren programmerer så har du ikke forutsetningene for å klare å debugge med noe annet en println. Jeg har vært gruppelærer mange ganger på UiO og min erfarning er at bare det å skjønne hvordan println-debugging kan gjøres faktisk er en utfordring for noen i starten. Svært få av de jeg har hatt som første/andre-års-studenter ville skjønt noe som helst av en debugger.

 

Så jeg mener fortsatt; lær å programmere før du lærer deg et IDE.

Lenke til kommentar
Gjest Slettet+1374861
Jeg har vært gruppelærer mange ganger på UiO og min erfarning er at bare det å skjønne hvordan println-debugging kan gjøres faktisk er en utfordring for noen i starten. Svært få av de jeg har hatt som første/andre-års-studenter ville skjønt noe som helst av en debugger.

 

Meget enig. Har vert studentassistent i programmering, og der kan selv de minste ting være vanskelige. For mange så er det å forstå feilmeldingene de får en utfordring (feil datatyper, null verdier...), men det er jo en naturlig del av ett hvert språk, og jeg synes det er viktig at de får lære å tyde disse tidlig, og ikke unngå dem ved at en IDE kan la dem hoppe over dem med enkle warning i selve IDE-en. Når man har knota en stund så kan man jo se på disse warningene og tenke "aha", rette opp og gå videre, men for helt ferske folk så blir det heller til at dem lar IDE-en rydde uten "aha"-opplevelsen.

Lenke til kommentar

Har vært veileder i java selv og merket meg at noen av de som viste vilje/interesse for faget drev å putlet rundt på egenhånd for å finne ut hvordan alt henger sammen. Og kommandolinjen var ofte i bruk da.

 

En ting er å sitte med stor IDE når man lager store programmer, en annen ting er å gjøre det når man ikke en gang skjønner hva objekter er. :)

 

Men igjen: Det kan selvsagt gjøres på mange måter, jeg har min erfaring med hva jeg mener jeg lærte best av, og andre mener sikkert at IDE er greiest.

Lenke til kommentar

Fordeler notepad++ o.l. har:

- Enkel

- Lett å sette seg inn i

 

Fordeler IDE'r har

- Du blir oppmerksom på syntaxfeil med en gang

- Du får se javadoc som tooltip/ved å trykke F1

- Det er enkelt å se kildekoden på biblioteker/objekter du bruker

- Hvis du får en feilmelding kan du trykke på hver linje i stack-tracen og se hvor feilen ligger

- Enkelt å implementere interfacer/legge til nye klasser

 

Kan illustrere hva jeg mener med hva jeg mener er fordelen med syntaxfeil highlighting:

 

La oss si at du har skrevet 100 linjer kode uten å kompilere, du har da kanskje 10 feil. Hvis du har har klusset til start slutt på (, [ eller { så er det nå faktisk ganske vanskelig å rette opp koden.

 

Hvis du hadde skrevet de samme 100 kodelinjene i en IDE med syntax highlighter så har du blitt obs på problemene underveis. Du har derfor kunnet takle ett og ett lite problem istedenfor mange på en gang. Du lærer deg f.eks at du skal skrive start og slutt på (, [ og { med en gang istedetfor å skrive starten, og så skrive koden du skal ha i mellom før du avslutter med ), ] eller }.

 

Problemet er vel snarere at man gjerne blir lært opp til å programmere uten å få noen opplæring i hvordan man faktisk skal programmere. Når man programmerer bruker man verktøy. Dette blir gjerne glemt av foreleserene.

Endret av blackbrrd
Lenke til kommentar
Gjest Slettet+1374861
...

- Du får se javadoc som tooltip/ved å trykke F1

...

Problemet er vel snarere at man gjerne blir lært opp til å programmere uten å få noen opplæring i hvordan man faktisk skal programmere. Når man programmerer bruker man verktøy. Dette blir gjerne glemt av foreleserene.

Dette kommer jo direkte av at man kan lære bort programmering universelt, imotsetning til IDE-er som vil variere. Når du sier man kan trykke F1 for å få frem en gitt funksjonalitet så er ikke det nødvendigvis tilfelle i alle IDE-er. Hvis du derimot forklarer noen hvordan man bygger opp en if-setning så vil ikke den se forskjellige ut avhengig av hvor du skriver den.

Endret av Slettet+1374861
Lenke til kommentar

Når du lærer programmering så lærer du hvordan if-setningen ser ut i ett spesifikt språk.

 

Tilsvarende blir det med ett IDE, du lærer funksjonene som det IDE har. Personlig mener jeg at det er noe som burde høre til undervisning i grunnleggende programmering. Det er mye som er selvfølgelig for den som lærer bort som aldri blir nevnt i undervisning i programmering. Det behøver ikke akkurat ta så veldig lang tid... kanskje et par timer to ganger? Skal vedde på at den tiden kjappt blir spart inn når de som skal lære å programmere slipper å knote med slike ting på egenhånd.

 

Har du først lært deg å bruke ett IDE så skjønner du stort sett hva slags funksjoner som burde være tilgjengelig i andre IDE-r. Tilsvarende som når du har lært å programmere i java, så behøver du ikke få forklart hva forskjellen på objekter og klasser er i C++.

Endret av blackbrrd
Lenke til kommentar

Ein IDE tar seg tid å lære, men eg var ikkje store programmeraren før eg begynte å bruke Eclipse. Eg kunne ikkje bruka debuggeren eller noko særleg anna funksjonalitet. Men programmene eg skreiv ville som regel kompilere og kjøre heilt fint. Ikkje minst var det enklare å lage *prosjekter*. Over tid med masse knoting så har eg lært meg å bruke fleire av verktøya til Eclipse og andre IDE'er og programmering har bare vore kjekkare.

 

Det er ikkje rart at norsk næringsliv forguder Visual Studio og omtrent ingen utdanningsinstutisjoner bruker tid på å lære studenter det verktøyet. Neida du skal lære deg å programmere på den *skikkelege* måten med Emacs (Sjølv om Emacs er skikkeleg bra for nokon så misliker eg sterkt å programmere i det, foretrekker langt meir gedit/notepad++)

Lenke til kommentar
  • 3 uker senere...

Har brukt Eclipse til nå, men har gått over til Java ME, og NetBeans er bare så mye bedre en noen av eclipse plugins. Både når det gjelder å lage kode, kjøre kode, bygge kode og pakke kode. Helt topp.

Eneste jeg ikke liker er at den legger til spaces istedet for tab i indents. Er det mulig å endre det?

Lenke til kommentar
Gjest Slettet+1374861
Eneste jeg ikke liker er at den legger til spaces istedet for tab i indents. Er det mulig å endre det?

Tools -> Options

Editor options (venstre kolonne)

Indentation Tab

Deselect "Expand Tabs to Spaces"

 

Programmer's editors usually default to having the tab key generate hard tabs, that is actual HT characters but some editors expand them to space (SP) characters instead, often referred to as soft tabs. Most programmer's editors can be configured to perform either.

 

There are many arguments for and against using hard tabs in code. The most incompatibility and conversion issues ensue when the tab key generates HT characters and the editor is configured for tab stops spaced anything but the de facto standard, which for Unix, Unix-derived systems and older systems is every 8 characters and for Windows programming, every 4 characters. Interesting possibilities include 2 and even 3. When deviating from the system's de facto standard, then inevitably some lines will be formatted with spaces, others with tabs or even both. As soon as the code ends up on someone else's screen it will look different and usually jumbled and untidy if their editor's tabstop width is set differently.

 

One early benefit of tabs, ie: compression is now considered less relevant as desktop storage has become cheaper and sophisticated compression algorithms can provide much greater benefits, albeit at the cost of greater complexity.

http://en.wikipedia.org/wiki/Tab_key#Tabs_in_programming

Lenke til kommentar

Bruker selv både eclipse, netbeans, jEdit og notepad++.

 

Er helt enige med de som forsvarer IDE. Tror man skal være ganske bestemt på å lære det hvis man skal orke å programmere noe særlig java uten verktøystøtte.

 

Mine vurderinger av de ulike editorene er slik:

Netbeans : Rå GUI-builder. God på Swing, JSF og JPA.

Eclipse : Hurtigtaster! Ctrl + Shift + T (og skriv starten på "class"-en du vil finne. Ctrl + F6 ->veksler mellom de sist brukte filene.

jEdit : Merkelig editor med uvante tastekobinasjoner, men langt mer stabil enn eclipse. Bruker den mest til php.

notepad++: Har den alltid installert, så kan jeg høgreklikke på en hvilken som helst fil og velge notepad++ for å vise/redigere den.

Lenke til kommentar
IntelliJ IDEA

I second that! Det koster penger, men er helt fantastisk til skikkelig utvikling, spesielt med tanke på Java EE.

 

Eclipse funker fett det, og har støtte for en zillion forskjellige språk og plugins. Men i og med at IntelliJ fokuserer mer eller mindre eksklusivt på Java-utvikling, kan det skilte med den beste og smarteste editoren på markedet. Hadde ikke hørt om IntelliJ før jeg på Javazone ble fortalt at det spiste både Eclipse og Netbeans til frokost, og etter noen måneders bruk må jeg si meg helt enig i det. Code assistingen er så omfattende at du rett og slett lærer mye god programmeringsskikk. Det er også autocomplete over alt, til og med i inline CSS i HTML-elementer. The list goes on.

 

Trenger du et "mindre" program vil jeg anbefale Emacs med JDEE (som er en java-plugin). Den har vel så høy inngangsterskel som en editor kan ha, men det er absolutt verdt å lære seg. Lærer du deg det sære, men geniale tastaturoppsettet, kan du forøvrig bruke det i stort sett alle IDE'er (Eclipse, IntelliJ, Visual Studio , støtter det i alle fall). Emacs kan også brukes i konsoller, noe som er praktisk når man bruker SSH og lignende.

Endret av Geofrank
Lenke til kommentar
Eclipse funker fett det, og har støtte for en zillion forskjellige språk og plugins. Men i og med at IntelliJ fokuserer mer eller mindre eksklusivt på Java-utvikling, kan det skilte med den beste og smarteste editoren på markedet.

 

Editoren i IntelliJ så rett og slett VELDIG imponerende ut. Foreleseren på et kurs jeg tok i januar brukte den og det jeg så av den så utrolig stilig ut. Den hadde en del editor-funksjonalitet som var enestående og imponerende.

Lenke til kommentar
Emacs er gratis ja, ikke bare gratis, men fri og helt åpen. Men vær obs: Emacs er ikke bare en Java-IDE, men en veldig kompleks og programmerbar editor.
Understatement of the year!

 

Eclipse er også fri programvare. Anbefaler alle å velge de frie programmene; Eclipse, Netbeans, Notepad2, Notepad++, Kwrite, osv. fremfor de ufrie alternativene.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...