Kodning i Eclipse
Skapa ett nytt projekt
I den här kursens uppgifter använder man vanligtvis färdigt skapade projekt som redigeras eller utvidgas på något sätt. Ibland är det dock nödvändigt att skapa ett helt nytt projekt.
- Vi skapar ett testprojekt i Eclipse. Ett projekt motsvarar en mapp och varje övningsuppgift har oftast ett skilt projekt. Välj File -> New -> Project.
- Välj Pydev project i Pydev-mappen och klicka Next .
- Till näst måste projektet namnges. Ge det t.ex. namnet Testprojekt och klicka Finish.
- Nu syns projektet på Eclipse vänsterkant, dit alla projekt och deras filer är listade. Vi skapar en kodfil i projektet genom att högerklicka på projektet..
- Välj New och Pydev Module
- Modulen måste också få ett namn. Skriv t.ex. test i det nedre textfältet och klicka på Finish.
- Senare, när vi börjar skapa klasser, kan man under Template välja hurudan typs modul det är (Class eller Main), men nu räcker det med Empty.
- Modulen du nyss skapade borde synas i src-mappen. Om filen inte öppnades automatiskt, kan du dubbelklicka på den. I början av filen finns automatiskt skapade kommentarer, som du kan rader om du vill. Nedanför kommentarerna skriver man själva programkoden.
- Skriv t.ex. print "Hej mamma!" i kodfilen.
- När koden är klar, kan du köra programmet t.ex. genom att högerklicka på koden och välja Run as -> Python Run.
- Före programmet kan köras ber Eclipse att få spara de förändrade filerna. Du kan i detta fönster välja att alltid spara alla filer före programmet körs.
- Om allting gick som det borde, borde du nu se en konsol i nedre kanten av Eclipse, där det skrivits ut "Hej mamma!" eller vad du nu valde att skriva. Om du ser denna text, är allting redo för att göra övningsuppgifter!
Skrivning av kod
Det går ganska lätt att skriva själva koden i Pydev-editorn i Eclipse. Det är i princip en vanlig texteditor. Eclipse har dock några specialfunktioner, som underlättar skrivandet av kod. Några exempel:
- Eclipse kan (oftast) visa vilka instansvariabler och metoder ett objekt har, och kan snabbt skriva in referenser till dessa i koden. Du får fram katalogen genom att trycka Ctrl-Space (alltså Ctrl-knappen och mellanslag tillika). Exempel: Låt oss säga att variabeln
test
pekar på något objekt. Om du skrivertest.
och trycker Ctrl-Space, visar Eclipse en lista på alla metoder i objektet. När du väljer någon av dem, skrivs namnet automatiskt in och du behöver inte skriva in det för hand. - Om du skriver de första bokstäverna i av en variabel, klass, metod o.s.v. och trycker Ctrl-Space, fyller Eclipse i hela namnet så gott som det kan. Om objektet
test
i föregående exempel skulle ha en metodskivaKorv()
, kan du skrivatest.ski
och trycka Ctrl-Space, och Eclipse fyller automatiskt i resten av namnet. Om det finns flera alternativ (kanskeskivaOst
) visar Eclipse en lista på alternativen. - Det är ofta praktiskt att döpa om delar av programmet, om någon metod, variabel eller klass lite ändrar uppgift, eller namnet inte var bra från början. I ett lite större program är det här dock väldigt tröttsamt, eftersom man då borde ändra namnet överallt där det används i koden. Eclipse har som tur en funktion som underlättar detta: flytta kursorn till det namn som du vill ändra, välj från menyn Refactor -> Rename... eller tryck Alt-Shift-R, och skriv det nya namnet i rutan som kommer upp. Namnet ändrar nu på en gång överallt i koden. Notera att detta fungerar pålitligt endast om programmet inte innehåller grammatikfel, så eliminera dem först.
Fel i programkoden
Då man skriver programkod i Eclipse dyker det ofta upp röda eller gula understreckningar och andra symboler. De här är felmeddelanden eller varningar.
Eclipse märker om uttrycken bryter mot Pythons grammatikregler (syntax) och meddelar om dessa med röda understreckningar och symboler. Dessa fel hindrar programmet från att kunna kompileras, och därför också att utföras, så dessa fel måste rättas direkt. Mera information om felet får man genom att hålla muspekaren en stund över det understreckade stycket eller genom att titta i Problems-fliken.
Gul färg betyder däremot en varning. Varningar hindrar inte exekveringen av programmet, men de anmärker om suspekta saker i koden, som kanske får koden att fungera på fel sätt eller mot god stil. En nybörjare bör behandla varningar lika allvarligt som fel; ta reda på vad som är problemet och rätta det.
Notera att om ett felmeddelande dyker upp i koden, betyder det inte automatiskt att du gjort något fel. Det betyder bara att koden i detta ögonblick inte är helt i skick. Till exempel:
- Om du lägger till ett metodanrop till en metod som inte finns, meddelar Eclipse felet: the method is undefined. Det här är bara ett problem om metoden faktiskt aldrig kommer att finnas. Däremot, om du själv hade tänkt implementera metoden i fråga i ett senare skede, är allting OK.
- Ibland kan en röd felmarkering bli kvar och "spöka" även om felet är fixat, då hjälper det oftast att spara filen.
Fel- och varningsmeddelanden är inte programmerarens fiender, även om de nångång kan vara irriterande. Tvärtom; de ser till att man upptäcker fel redan innan programmet exekveras. Det skulle vara mycket jobbigt om alla fel (t.o.m. syntaxfel) bara skulle gå att upptäcka genom att utföra programmet.
Det är också viktigt att komma ihåg, att även om det inte finns fel- eller varningsmeddelanden så betyder det inte att programmet är felfritt. Själva algoritmerna kan såklart vara fel konstruerade, eller så har man missförstått någon specifikation. Dessa buggar hittar man först när man exekverar programmet, och är oftast svårare att laga. Som hjälp kan man använda debuggern.
Om felmeddelandena är så konstiga att du inte på något sätt kan klura ut vad de betyder, be om hjälp eller sök på nätet.
Mera vinkar finns på finska kursens utbildningsvideo (tyvärr endast på finska):



