A ToolGuide for Eclipse: En fördjupning i några av verktygen i Eclipse och hur de underlättar XP s practices
|
|
- Oliver Viklund
- för 8 år sedan
- Visningar:
Transkript
1 A ToolGuide for Eclipse: En fördjupning i några av verktygen i Eclipse och hur de underlättar XP s practices Mattias Jarheden och Thomas Forsström Sammanfattning Denna djupstudie försöker ge en inblick i två olika verktyg som finns tillgängliga i Eclipse. Skälet till att vi väljer att fördjupa oss i de verktygen är för vi tror att de kan vara till hjälp för team som använder Eclipse. Först ges en bakgrund till varför utvecklingsverktyg kan ha en avgörande roll i utvecklingsprocessen av programvara. Vi tar upp exempel på verktyg som stödjer practices i XP. Därefter behandlas verktygen debug, Ant och deras grundläggande funktioner. Slutligen redovisas huruvida Eclipse och dess verktyg underlättade för vårt team. 1 Inledning Att utveckla program från grunden kan vara en tidsödande process i Java. Detta beror bland annat på att logiken inuti en metod, interface eller en klass är unik, däremot behöver man göra importsatser och syntax för klasser och paket om och om igen. Detta resulterar i att samma typ av kod måste skrivas upprepade gånger, vilket ofta leder till förlorad tid och irriterande felstavningar som upptäcks först vid kompilering. Detta problem har man insett och Eclipse är ett verktyg som tagits fram för att underlätta och spara tid för utvecklaren. Eclipse är en open-source, utbyggbar plattform med en generell design och är för närvarande mest populär som en javaintegrerad utvecklingsmiljö. Eclipse innehåller funktioner för att skriva och debugga 1 javakod som standard men det ges även möjlighet att installera externa plugins för mer avancerade funktioner. Eftersom Eclipse tillhandahåller en stor mängd hjälpmedel och funktioner har vi i denna djupstudie beslutat oss för att titta närmare på två centrala funktioner i programvaruutveckling, nämligen debug och Ant. 2 Varför utvecklingsverktyg? Det råder ingen tvekan om att olika former av utvecklingsverktyg sparar tid för användaren. Det kan vara allt från påbyggda texteditorer såsom Emacs, jedit med flera till ett komplett system med CVS-hantering som Eclipse. För att tydliggöra vilka fördelar och effektiviseringar som kan göras med olika verktyg tar vi upp vilka XP-practices som underlättas med respektive verktyg. Refactor Mercilessly I Eclipse finns det hjälpmedel för att göra vanliga refaktoriseringar såsom byta namn på metod, klasser, variabler etc. Det finns även stöd för att bryta ut metoder och klasser, ändra inparametrar, då dessa operationer kan vara väldigt tidsödande när antalet samverkande klasser börjar bli många. 1 Felsöka i koden genom att t.ex. kontrollera variabelvärden.
2 Adopt Test-Driven Development Eftersom testverktyget junit är integrerat i Eclipse underlättas arbetet med att genomföra testdriven programvaruutveckling. XP förespråkar regelbunden testning och detta kan vara tidsödande om man istället har ett separat testverktyg. Adopt Collective Code Ownership Denna practice kräver CVS-hantering vilket för förstagångsanvändaren inte är helt trivialt. Med promptbaserad CVS måste man kunna flera långa kommandon vilket kan leda till att man undviker att använda verktyget effektivt. I Eclipse är detta inbyggt och istället för att behöva skriva långa kommandon, representeras detta med ett lättanvänt grafiskt gränssnitt. Integrate Continually Då det i Eclipse är enkelt att använda CVS-operationerna, enligt ovanstående practice, underlättas processen att integrera ny kod med repositoryt. Release Regularly Med hjälp av funktionen Ant i Eclipse kan releaseprocessen automatiseras och avsevärt underlättas. Vi kommer att titta närmare på denna funktion i den här djupstudien. Eclipse stora fördel märker man framförallt av då man är tvungen att köra flera verktyg parallellt. Generellt kan man säga att Eclipse samlar flera i verktyg i ett användargränssnitt och därmed slipper användaren ha flera separata program öppna. Det grafiska miljön i Eclipse förenklar användningen av de olika verktygen och textbaserade kommandon undviks. 3 Fördjupning av verktygen 3.1 Ant En väldefinierad releaseprocess är en av de viktigaste delarna i mjukvaruutveckling men det är sällan man använder verktyg för det. En välutvecklad paketeringsprocess försäkrar att programvaran i projektet byggs på exakt samma sätt varje gång en release ska göras. När byggnadsprocessen blir mer komplex kommer behovet av standardisering öka. Därför bör man sätta upp, dokumentera och automatisera tillvägagångssättet så mycket som möjligt. För att minska avståndet mellan utveckling, integrering, testning och produktionsmiljöerna så behövs en väldefinierad byggnadsprocess. Bara processen i sig kommer effektivisera övergången från ett steg till nästa i utvecklingen. Man minskar även problem rörande kompilering, classpath, eller egenskaper som kostar många projekt tid och pengar. Ant står för Another Neat Tool och är ett scriptverktyg för att skapa och köra filer som till exempel kan kompilera, kopiera och andra operationer som är nödvändiga vid en releaseprocess. Till skillnad från andra makefiler 2, så är Ant plattformsoberoende och är annorlunda från andra makeverktyg då javaklasser används istället för operativsystemets 2 Textfil som innehåller kommandon som kan skapa backupar, sätta ihop filer till ett komplett program eller köra program. Traditionellt så används makefiler till att specificera beroenden mellan målfiler och källfiler.
3 kommandon. XML-filer används för konfiguration där flera moment exekveras, varje moment körs av ett objekt som implementerar ett interface. Ant tar källkoden och bygger en applikation men kan också göra mycket mer, t ex manipulera filer och kataloger samt köra applikationer så som javac. Eftersom Ant också kan interagera med CVS så täcks det mesta som behöver göras till en release i verktygets repertoar. I Eclipse kan man enkelt konfigurera XML-filer då det finns en texteditor som stödjer färgkodning till syntaxen. För att skapa en ny Ant-fil i Eclipse gör man på följande vis: 1. File > New > File. 2. Skriv in valfritt namn på filen, men se till att den har.xml som filändelse. 3. Klicka på Finish. Precis som i den vanliga kodeditorn så hjälper Eclipse till med förslag på det man ska skriva in. Man kan exempelvis skriva <tar och sen trycka ctrl+space, då får man upp en lista med möjliga ifyllanden, i detta fall <target>. Då man väljer den så sätts både början och slut på taggen in. Bild 1 visar ett exempel på en liten XML-fil. Bild 1: En XML-fil där texten Hello skrivs ut. Det finns även en Outline-vy i Eclipse där man i detta fall enkelt ser vad filen innehåller för olika arbetsuppgifter och vad respektive target gör. Alla XML-filer kan köras som Ant-filer i Eclipse även om inte alla är det. Vi använder även här vårt HelloWorld-exempel. 1. Välj HelloWorld.xml i Navigator-vyn and och välj Run Ant... från innehållsmenyn. 2. Run Ant dialogrutan kommer fram. Se bild 2.
4 Bild 2: Dialogruta för Ant. 3. Den här dialogrutan gör det möjligt att ställa in de sätt som Ant buildfiler kan köras men vi koncentrerar oss på Targets fliken. Där kan de Ant targets man vill köra väljas och i vilken ordning. 4. Klicka på Run. 5. Filen körs och resultatet skickas till Console-vyn. Det går också att spara en sådan konfiguration så man kan ha flera uppsättningar. Man slipper då ställa in den enligt ovanstående varje gång. Möjligheten finns också att skapa flera olika konfigurationer på samma fil. T ex kan man ändra exekveringsordningen så att World körs före Hello. För att underlätta ännu mer så finns i Eclipse en Ant-vy där man kan visa de XML-filer man vill. Från vyn kan man välja olika targets i filerna och exekverar dem enbart. Vyn ger en överblick över alla filer och innehåll samt ett lätt sätt att komma åt filerna för att modifiera dem på olika sätt. 3.2 Debug Att debugga eller inte debugga, det är frågan. Hur mycket man än försöker att koda perfekt och använda omfattande testning så kommer det ändå uppstå buggar som är svåra att hitta. Det finns många sätt att debugga eller fixa buggar och det första måste göra är att hitta raden med kod som orsakar felet. När raden i fråga har hittats underlättar det att veta lite om omgivningen runt buggen, t ex variabelvärden, metoder och dylikt. Att försöka leta buggar kan vara en tidsödande och frustrerande process speciellt om man gör det med det traditionella println() där möjligheterna är begränsade. Koden blir full med extra rader som efteråt måste hittas och plockas bort igen.
5 Med en debugger är det tämligen enkelt att ta reda på denna information. Eclipse har en inbyggd debugmiljö vilken erbjuder verktyg som behövs för att hitta och åtgärda de buggar som kan uppstå. Dock begränsas debug-möjligheten till vad vanliga javaobjekt kan hantera. Här följer ett enkelt exempel på hur man använder debuggern i Eclipse. 1. Till att börja med måste koden vara kompilerad och vara exekverbar. 2. Verktyget erbjuder många möjligheter men det vanligaste är att sätta ut breakpoints. Detta gör man för att få reda på värden på variabler, villkor och loopar. För att sätta en breakpoint dubbelklickar man på listen till vänster om raden med kod man vill undersöka. 3. Därefter behöver man göra inställningar för hur debuggern ska användas. I Run>Debug ställer man in de eventuella argument som behövs samt den main-klass som debuggern ska köra. 4. När ovanstående inställningar har gjorts, klickar man på knappen Debug och ett nytt perspektiv öppnas i Eclipse. Bild 3: Debuggerns Perspektiv. 5. Nu är vi redo att köra debuggern. Detta gör man enklast genom att klicka på play-knappen i övre vänstra hörnet i debugperspektivet. 6. Koden körs och debuggern stannar upp vid de breakpoints man angivit. Se bild 4.
6 Bild 4: Debuggern visar vilken rad med kod som körs. När man har hittat var felet uppstår vill man oftast se vad programmet gör precis innan det kraschar. Ett sätt att göra detta är att gå igenom programmet stegvis med hjälp av den stepfunktion som finns tillgänglig. Denna funktion gör det möjligt att se hur enskilda klasser körs rad för rad, hoppa över rader samt se hur hela programmet exekveras rad för rad. I den högra delen av debugperspektivet kan man få reda på vilka värden variabler och uttryck har genom att klicka på respektive flik, se bild 3. En användbar funktion som finns i de senare versionerna av JVM och Eclipse är Hotswap Bug Fixing. Denna innebär helt enkelt att man kan ändra och rätta till fel i koden samtidigt som man debuggar. Detta gör att man slipper stänga applikationen, ändra koden, kompilera och starta igen. Det är användbart när det tar lång tid att starta programmet eller att komma till den punkt där programmet kraschar. Eclipse erbjuder även en intressant funktion som kallas Remote debugging. Då körs en debuggserver samt applikationen på servern och så kopplar man upp en debuggklient mot den. Detta kan vara användbart då man vill debugga virus, trojaner etcetera då den drabbade datorn kan isoleras väl. Ett annat tillfälle kan vara när det uppstår fel som förekommer på en specifik dator och inte på några andra datorer. I framtiden vill man även öka möjligheten att debugga på flera operativsystem och arkitekturer. Debugging bör inte användas som ett substitut för tester. Försök istället tänka på det som ett utvecklingsverktyg för att hålla testerna fungerande och inte som ett verktyg för att hålla koden fungerande. 4 Utvärdering av hjälpmedlen i vårt team Under projektets gång blev teamet mer vana vid att använda Eclipse och dess funktioner. Debug-funktionen är fortfarande något som är svårt att få folk att prova och använda regelbundet. Den praxis som man ofta använder är att köra programmet och se om det fungerar. De fallen då programmet kraschar och man börjar leta efter fel så känns debugverktyget ofta omständigt och man tar till standardförfarandet med att lägga till koden System.out.println(). Detta kan bero på att omfattningen av kod i detta projekt ändå är relativt liten och man klarar sig väl med att göra enkla systemutskrifter. Teamet fick i uppgift att testa och utvärdera debug-verktyget. Slutsatsen, som vi coacher också delar, är att det kan vara användbart vid större projekt då det kan bli rörigt med osammanhängande systemutskrifter och då man måste vara mer strukturerad i sitt felsökande. Det råder ingen tvekan om att debug är ett kraftfullt och effektivt verktyg, dock får man i detta projekt inte användning för dess fulla potential. Ant användes desto mer effektivt under projektet. Vi lät teammedlemmar tidigt i projektet lära sig hur man skriver script som genererar en komplett release från repositoryt. Detta har visat sig spara mycket tid till exempel då det uppträder fel strax innan release. Med ett Ant-script så får man, efter att ha korrigerat felet, en komplett release igen på några sekunder. Införandet av Ant i releaseprocessen gick väldigt smärtfritt och det blev redan
7 efter första iterationen en naturlig del i projektet. Slutsatsen från teamet är att Ant är något som underlättat och sparat mycket tid i releaseprocessen och det är ett verktyg som man definitivt kommer använda igen om man skulle genomföra liknande projekt. 5 Slutsats Programvaruutveckling är en komplicerad process eftersom det innehåller många olika moment som ska fungera tillsammans. Utvecklingsverktyg har tagits fram för att underlätta denna process genom att spara värdefull tid och därmed pengar. Verktygen kan göra skillnaden mellan att sitta och leta kompileringsfel och andra irriterande problem till att låta programmerarna koncentrera sig på att lösa de väsentliga problem som för programvaran framåt. 6 Acknowledgements Vi vill tacka team07, Love Johansson, Marcus Eliasson, Martin Malek och Görel Hedin.
8 7 Referenser 1. chromatic. Extreme Programming, Pocket Guide. O Reilly & Associates Eclipse help contents Länkar: Debugging Carlos Valcarcel, Using the Eclipse Debugger, Oct 8, Paul Leszek, Debugging with Eclipse, (Nov. 7, 2003). Ant Michael Cymerman, Automate your build process using Java and Ant. Bryan Dollery, The Best Java Open-Source Tools, Nov 8,
Programmering i C++ Kompilering från kommandoraden
Programmering i C++ Kompilering från kommandoraden Sven Gestegård Robertz Datavetenskap, LTH 9 november 2015 Sammanfattning Ibland vill man, av olika anledningar, inte använda en stor integrerad utvecklingsmiljö
Läs merVerktyg och Utvecklingsmiljö. Jochim von Hacht
Verktyg och Utvecklingsmiljö Jochim von Hacht Verktyg Modern programutveckling innebär att man måste behärska ett antal verktyg Editorer Kompilatorer Avlusare (debugger) Versionhantering (kommer i projektkurs)
Läs merHär beskrivs Eclipse, den programutvecklingsmiljö som utnyttjas i programmeringskurserna. Mera information finns på:
Bilaga C Eclipse 1 Inledning Här beskrivs Eclipse, den programutvecklingsmiljö som utnyttjas i programmeringskurserna. Mera information finns på: www.eclipse.org help.eclipse.org www.eclipse.org/downloads/
Läs merVerktyg och Utvecklingsmiljö. Föreläsning 2 Eclipse
Verktyg och Utvecklingsmiljö Föreläsning 2 Eclipse Verktyg Modern programutveckling innebär att man måste behärska ett antal verktyg. Editorer Kompilatorer Avlusare(debugger) Versionshantering(kommer i
Läs merNetBeans 5.5. Avsikt. Projektfönster
NetBeans 5.5 Avsikt Att bekanta dig med NetBeans programmeringsmiljö, dvs att med hjälp av NetBeans 1. skapa ett nytt projekt 2. skriva in källkod (sparas som.java-fil) 3. kompilera (översätta) koden till
Läs merEclipse. Kort genomgång
Eclipse Kort genomgång Installation för den som vill ha Eclipse på sin egen maskin Du behöver först och främst ett Java Development Kit (JDK). Om du inte har något, installera JDK 7.0 från http://www.oracle.com/technetwork/java/javase/downloads/
Läs merEclipse en handledning
LUNDS TEKNISKA HÖGSKOLA EDAA01 Programmeringsteknik fördjupningskurs Institutionen för datavetenskap VT 2015 Eclipse en handledning 1 Inledning Här beskrivs Eclipse, den programutvecklingsmiljö som utnyttjas
Läs merObjektorienterad programmering i Java I
Laboration 0 Objektorienterad programmering i Java I Uppgifter: 2 Beräknad tid: ca 2 3 timmar Att läsa: sidan 45 52 Syfte: Att ladda hem och installera utvecklingsmiljön Att skriva ditt första Javaprogram
Läs merSå här skriver du ditt första program i C++
Så här skriver du ditt första program i C++ Introduktion till att skapa Solution, Project och källkodsfil i Visual Studio 2013 Författare Anne Norling Kurs: Strukturerad programmering med C++ Kurskod:1DV433
Läs merTDP005, Projekt: objektorienterade system
TDP005, Projekt: objektorienterade system Laboration: Eclipse Höstterminen 2011 Introduktion Detta material innehåller övningar för Eclipse. Redovisning Dessa övningar behöver inte redovisas, men ni får
Läs merNetBeans 7. Avsikt. Projektfönster
NetBeans 7 Avsikt Att bekanta dig med NetBeans programmeringsmiljö, dvs att med hjälp av NetBeans 1. skapa ett nytt projekt 2. skriva in källkod (sparas som.java-fil) 3. kompilera (översätta) koden till
Läs merFöreläsning 2. Operativsystem och programmering
Föreläsning 2 Operativsystem och programmering Behov av operativsystem En dator så som beskriven i förra föreläsningen är nästan oanvändbar. Processorn kan bara ges enkla instruktioner såsom hämta data
Läs mer2 Eclipse en handledning
2 Eclipse en handledning Inledning Här beskrivs Eclipse, den programutvecklingsmiljö som utnyttjas i programmeringskurserna. Mera information finns på: http://www.eclipse.org http://help.eclipse.org http://www.eclipse.org/downloads/
Läs merVerktyget FindBugs. Djupstudie i kursen EDA 270 Coachning av programvaruteam. Christofer Bach dt05cb6 Daniel Nilsson dt05dn4. Lunds Tekniska Högskola
Verktyget FindBugs Djupstudie i kursen EDA 270 Coachning av programvaruteam Christofer Bach dt05cb6 Daniel Nilsson dt05dn4 Lunds Tekniska Högskola 15 feb 08 1. Sammanfattning Denna djupstudie kommer att
Läs merFöreläsning 2 Verktyg m.m.
Föreläsning 2 Verktyg m.m. Innehåll Java-paket Utvecklingsmiljö (development environment) Hur man organiserar sin utvecklingsmiljö Verktyg (tools) Editorer, debuggers, IDE's (integrated development environments),
Läs merContinuous Integration med Jenkins. Linus Tolke Enea Experts
Continuous Integration med Jenkins Linus Tolke Enea Experts Föredraget Grunderna i mjukvaru-cm Trender inom mjukvaruutveckling Continuous Integration Vad är Jenkins Demo Jenkins i ArgoUML-projektet Problem
Läs merUTVÄRDERING AV ECLIPSE I ETT XP- PROJEKT
UTVÄRDERING AV ECLIPSE I ETT XP- PROJEKT 23-5-15 Anders Mårtensson, dama@efd.lth.se Marcus Andersson, dman@efd.lth.se INNEHÅLLSFÖRTECKNING Inledning...3 Vad är Eclipse?...3 Kort om XP och projektet...3
Läs merCVS-Introduktion. CyberRymden Introduktion till CVS,17 november (27) Marcus Rejås
Introduktion till CVS,17 november 2002 1(27) CVS-Introduktion CyberRymden 2001-10-03 Marcus Rejås $Id: slides.tex,v 1.2 2002/11/17 18:16:40 rejas Exp $ Introduktion till CVS,17 november
Läs merEclipse. Avsikt. Nu ska ett fönster liknande figuren till höger synas.
Eclipse Avsikt Att bekanta dig med Eclipse programmeringsmiljö, dvs att med hjälp av Eclipse 1. skapa ett nytt projekt 2. skriva in källkod (sparas som.java-fil) 3. kompilera (översätta) koden till byte-kod
Läs merViktiga begrepp. Algoritm. Array. Binärkod. Blockprogrammering. Bugg / fel och felsökning. Dataspel. Dator
Viktiga begrepp Den här ordlistan är till för dig som går kursen Om Programmering. Eftersom detta är en grundläggande kurs har vi i vissa fall gjort en del förenklingar. En del begrepp är svåra att förenkla,
Läs meremopluppen Användning av "Ant" Niklas Backlund Version: 1.4 ( 2002/04/26 07:27:52 UTC)
emopluppen Användning av "Ant" Version: 1.4 ( 2002/04/26 07:27:52 UTC) Niklas Backlund Sammanfattning Det här dokumentet handlar om programmet Ant, som är en byggmiljö för programutvecklingsprojekt. Dess
Läs merÖvning 1. Datateknik A, Java I, 5 poäng. Att ladda hem och installera Java Att skriva ditt första Javaprogram Att kompilera och exekvera ditt program
Datateknik A, Syfte: Att ladda hem och installera Java Att skriva ditt första Javaprogram Att kompilera och exekvera ditt program Att läsa: Lektion 1 Antal uppgifter: 3 Inlämning: Sker via inlämningsuppgifter
Läs merPMM (Process Maturity Metrics) Allmänt. Mätetal för framgångsfaktorer. 1. CM konfigurationsstyrning
PMM (Process Maturity Metrics) PMM är en metod för att mäta processmognad i utvecklingsprojekt. I korthet går metoden ut på att man utvärderar sin utvecklingsprocess med avseende på ett antal framgångsfaktorer
Läs merINSTALLATIONSGUIDE TILL ANDROID UTVECKLINGSMILJÖ
INSTALLATIONSGUIDE TILL ANDROID UTVECKLINGSMILJÖ Denna installationsguide berättar hur man installerar och kommer igång med utveckling för Android. Guiden är skriven som en komplettering till min bok Programmera
Läs merTentamen i TDP004 Objektorienterad Programmering Praktisk del
Tentamen i TDP004 Objektorienterad Programmering Praktisk del Datum: 2011-04-28 Tid: 08-12 Plats: SU-salar i B-huset. Jour: Per-Magnus Olsson, tel 281456 Jourhavande kommer att besöka skrivsalarna ungefär
Läs merLab1 Introduktion. 1 Syfte. 2 Innehåll Win32API Skapa trådar Kritiska sektioner Mailslothantering. 3 Förberedelse & Tips
Lab1 Introduktion Förberedelse för planetlabben genom att kapsla in (skapa wrappers) systemanrop. 1 Syfte Få en känsla av hur Win32API fungerar, dvs programmerarens interface gentemot Windows. Känsla för
Läs merInnehållsförteckning. 9 Större projekt Övningsuppgifter...32
PROGRAMMERING JAVA Innehållsförteckning 1 Allmänt om Java...5 I detta kapitel... 5 Historia... 5 Hur fungerar det att programmera?... 6 Inspiration... 9 Styrkan i Java...10 Övningsuppgifter... 11 2 Utvecklingsverktyget...12
Läs merSpelprogrammering med XNA och MonoGame
Spelprogrammering med XNA och MonoGame Tutorial, Programmering 2 Johan Hällgren, Thoren Innovation School SAMMANFATTNING Detta är en hjälp för att genomföra bokens tutorial. Allt från specifika tips för
Läs merPreliminär specifikation av projekt
Preliminär specifikation av projekt Projektets namn: Infraröd Minneslåda (numera omdöpt till FastSync) Uppdragsgivare: Alex Olwal aolwal@cs.columbia.edu Deltagare: Johan Ullberg Nils
Läs mer725G61 - Laboration 7 Implementation av ett API. Johan Falkenjack
725G61 - Laboration 7 Implementation av ett API Johan Falkenjack December 13, 2013 1 Inledning Hittills i kursen har vi tittat på grundläggande programmering och grundläggande objektorientering. I den
Läs merLaboration 0. Enhetsbokstaven anges med ett kolon efter och man läser ofta ut detta, exempelvis C:(sekolon).
Laboration 0 Laborationen är till för dig som inte är familjär med att navigera i filträd på en dator. Om du är van vid detta (vilket är det vanliga nu för tiden) så kan du bara snabbt titta igenom laborationen.
Läs merMicrosoft Visual Studio 2017
Microsoft Visual Studio 2017 Efter den inledande teorin om programmering är det dags för praktik. I bokens förord (sid 3) konstaterade vi: Programmering är i allra högsta grad ett praktiskt ämne. Du kommer
Läs merInledande programmering med C# (1DV402) Ditt första C#-program med Visual Studio
Ditt första C#-program med Visual Studio Upphovsrätt för detta verk Detta verk är framtaget i anslutning till kursen Inledande programmering med C# vid Linnéuniversitetet. Du får använda detta verk så
Läs merObjektorienterad Programkonstruktion. Föreläsning jan 2017
Objektorienterad Programkonstruktion Föreläsning 15 30 jan 2017 Felsökning Med moderna programmeringsverktyg är rena syntaxfel oftast lätta att åtgärda Fel som kan vara svårare att åtgärda är t.ex: thread
Läs merIntroduktion till programmering och Python Grundkurs i programmering med Python
Introduktion till programmering och Python Hösten 2009 Dagens lektion Vad är programmering? Vad är en dator? Filer Att tala med datorer En första titt på Python 2 Vad är programmering? 3 VAD ÄR PROGRAMMERING?
Läs merEclipse en handledning
LUNDS TEKNISKA HÖGSKOLA VT 2014 Institutionen för datavetenskap Eclipse en handledning 1 Inledning Här beskrivs Eclipse, den programutvecklingsmiljö som utnyttjas i programmeringskurserna. Mera information
Läs merAnvändarhandledning för koppling av dokument
nvändarhandledning Modul: lla vser: Koppla dokument i 3L 2006 1[11] nvändarhandledning för koppling av dokument Olika typer av dokument kan kopplas till poster i en 3L-databas. Exempelvis kan en eller
Läs merSå här byter du från Unifaun WebOrder (UWO) till Unifaun OnlineConnect (UOCT)
Så här byter du från Unifaun WebOrder (UWO) till Unifaun OnlineConnect (UOCT) För att genomföra migrationen till UOCT bör ditt konto ha det nya utskriftssystemet Unifaun OnlinePrinter (UOP) aktiverat.
Läs merTDP005 Projekt: Objektorienterat system
. TDP005 Projekt: Objektorienterat system Laboration i Make och CMake Författare Filip Strömbäck Höstterminen 2016 Version 1.0 2016-10-04 Introduktion I denna lab kommer vi titta närmare på två verktyg
Läs merTentamen i TDP004 Objektorienterad Programmering Praktisk del
Tentamen i TDP004 Objektorienterad Programmering Praktisk del Datum: 2010-04-07 Tid: 8-12 Plats: SU-salar i B-huset. Jour: Per-Magnus Olsson, tel 285607 Jourhavande kommer att besöka skrivsalarna ungefär
Läs merLaboration 10 - Eclipse
Laboration 10 - Eclipse Avsikten med laborationen är att du ska träna på att använda paket, att du ska packa några klassfiler i en jar-fil och slutligen använda innehållet i en jar-fil från en annan klass
Läs merFöreläsning 3. Programmering, C och programmeringsmiljö
Föreläsning 3 Programmering, C och programmeringsmiljö Vad är programmering? Ett väldigt kraftfullt, effektivt och roligt sätt att kommunicera med en dator Att skapa program / applikationer till en dator
Läs merKristoffer Eriksson Christer Oscarsson Andreas Dahlberg Martin Bengtsson
Rapport grupp 4 Software Engineering Kristoffer Eriksson Christer Oscarsson Andreas Dahlberg Martin Bengtsson 2009-10-29 Processer Sprinter Scrum har varit till stor hjälp för oss för att nå våra mål,
Läs merTestdriven utveckling. Magnus Jonsson Siemens Medical Solutions
Testdriven utveckling Magnus Jonsson Siemens Medical Solutions 2 Soarian Stort projekt, ca 400 personer i projektet Distribuerad utveckling i USA, Indien och Sverige Web baserat lösning med admin client
Läs merDGC IT Manual Citrix Desktop - Fjärrskrivbord
DGC IT Manual Citrix Desktop - Fjärrskrivbord Ver 130912 Innehåll 1 Använda Citrix Desktop - Fjärrskrivbord... 2 2 Inställningar i Fjärrskrivbordet... 7 Kontrollera att de applikationer du har tillgång
Läs merXP-projekt: En fördjupning
XP-projekt: En fördjupning Extreme Programming Martin Karlsson marka@itn.liu.se K7522 011 36 34 63 Fem värden Kommunikation Var öppna Var ärliga Ta konflikter Diskutera Tag beslut Tag ansvar Kräver feedback,
Läs merMina listor. En Android-applikation. Rickard Karlsson 2013-06-09. Rickard Karlsson - rk222cu Linnéuniversitet rk222cu@student.lnu.
Mina listor En Android-applikation Rickard Karlsson 2013-06-09 Rickard Karlsson - rk222cu Linnéuniversitet rk222cu@student.lnu.se Innehållsförteckning 2. Innehållsförteckning 3. Abstrakt 4. Inledning/bakgrund
Läs merF9 del B Organisatoriskt. EDAF45 Programvaruutveckling i grupp Projekt Boris Magnusson Datavetenskap, LTH
F9 del B Organisatoriskt EDAF45 Programvaruutveckling i grupp Projekt Boris Magnusson Datavetenskap, LTH 1 Projektet - moment Projektstartsmöte 6 Iterationer (en per vecka) - 10-12 team - 12-14 personer
Läs merTDP005: Introduktion till Make
TDP005: Introduktion till Make Jonas Lindgren jonas.lindgren@liu.se Torbjörn Lönnemark torbjorn.lonnemark@liu.se Niklas Hayer 2013-11-14 1 1 PROGRAMMET MAKE 2 1 Programmet make Om du kör make letar programmet
Läs merTentamen i TDP004 Objektorienterad Programmering Praktisk del
Tentamen i TDP004 Objektorienterad Programmering Praktisk del Datum: 2011-08-22 Tid: 14-18 Plats: SU-salar i B-huset. Jour: Per-Magnus Olsson, tel 281456 Jourhavande kommer att besöka skrivsalarna ungefär
Läs merVersionshantering. Problem som uppstår i större (samt även mindre) projekt:
Versionshantering Problem som uppstår i större (samt även mindre) projekt: Samtidiga ändringar. Kålle och Ada öppnar samma fil för redigering vid var sin dator. Om Kålle först sparar sina ändringar och
Läs merLathund Blanketthotell Komma igång
Lathund Blanketthotell Komma igång Introduktion Denna lathund innehåller lite samlade råd och tips för de som ska använda tjänster från NT Smartwork. (För de som redan börjat använda Blanketthotellet finns
Läs merPragmatisk programmering. Cyberrymden 2001-10-03. Marcus Rejås <marcus@rejas.se> Pragmatisk programmering,16 december 2002 1(29)
Pragmatisk programmering,16 december 2002 1(29) Pragmatisk programmering Cyberrymden 2001-10-03 Marcus Rejås $Id: slides.tex,v 1.14 2002/12/16 14:52:59 rejas Exp $ Metainformation Denna
Läs merSnabbstartsguide. Visa fler alternativ Klicka på den här pilen för att visa fler alternativ i en dialogruta.
Snabbstartsguide Microsoft PowerPoint 2013 ser annorlunda ut jämfört med tidigare versioner, så vi har skapat den här guiden för att hjälpa dig minimera din inlärningskurva. Hitta det du behöver Klicka
Läs merSMD 134 Objektorienterad programmering
SMD 134 Objektorienterad programmering Lärare: pl@cdt.luth.se A 3113 Tomas Klockar klockar@sm.luth.se A 3019 Mats Folke folke@sm.luth.se A 3019 Labhandledare: Natasja Saburova Fredrik Jonsson Lars Persson
Läs merInlämningsuppgifter, EDAF30, 2015
LUNDS TEKNISKA HÖGSKOLA Institutionen för datavetenskap Programmering i C++ Inlämningsuppgifter, EDAF30, 2015 Det finns två deluppgifter som båda ska lösas: 1. skriv ett program för att hantera bankkonton
Läs merDjupstudie Collective Documentation Ownerhip - Wiki. Jakob Nilsson-Ehle
Djupstudie Collective Documentation Ownerhip - Wiki Jakob Nilsson-Ehle (d02jn@efd.lth.se) 1 1 Innehåll 1 Inledning............................... 3 1.1 Vad är en wiki?............................ 3 1.1.1
Läs merTDP005, Projekt: Objektorienterade System. Laboration: Eclipse
TDP005, Projekt: Objektorienterade System Laboration: Eclipse Höstterminen 2013 Introduktion Detta material innehåller övningar för Eclipse. Redovisning Dessa övningar behöver inte redovisas, men ni får
Läs merInledning. Vad är ett datorprogram, egentligen? Olika språk. Problemlösning och algoritmer. 1DV433 Strukturerad programmering med C Mats Loock
Inledning Vad är ett datorprogram, egentligen? Olika språk Problemlösning och algoritmer 1 (14) Varför använda en dator? Genom att variera de program som styr datorn kan den användas för olika uppgifter.
Läs merHandbok för Nero ImageDrive
Handbok för Nero ImageDrive Nero AG Information om upphovsrätt och varumärken Användarhandboken till Nero ImageDrive och dess innehåll skyddas av upphovsrätt och tillhör Nero AG. Med ensamrätt. Den här
Läs merRefaktorisering och UML med Eclipse
1. Introduktion Refaktorisering och UML med Eclipse Eclipse är en utvecklingsmiljö för allehanda uppgifter. Den innehåller bland annat ett mycket kvalificerat stöd för programutveckling i Java. Den är
Läs merVersionshantering. Jan Erik Moström
Versionshantering Jan Erik Moström Johan Eliasson Versionssystem Gjorda för att användas av en eller flera personer på en eller flera platser, exempelvis: För en ensam användare som jobbar med ett projekt
Läs merInledande programmering med C# (1DV402) Introduktion till C#
Introduktion till C# Upphovsrätt för detta verk Detta verk är framtaget i anslutning till kursen Inledande programmering med C# vid Linnéuniversitetet. Du får använda detta verk så här: Allt innehåll i
Läs merLabb i Datorsystemteknik och programvaruteknik Programmering av kalkylator i Visual Basic
Labb i Datorsystemteknik och programvaruteknik Programmering av kalkylator i Visual Basic Inledning Starta Microsoft Visual Studio 2005. Välj create Project Välj VB + Vindows Application och välj ett nytt
Läs merÖversikt 732G11 PROGRAMMERING 1. Personal. Kursens mål. Litteratur. Kursens innehåll 2010-04-22
Översikt 732G11 PROGRAMMERING 1 Institutionen för datavetenskap Om kursen Vad är programmering (bra för)? Programmeringsspråket Java Utvecklingsmiljön Eclipse Genomgång av några programexempel Programmering
Läs merSäkerhetskopiering och återställning Användarhandbok
Säkerhetskopiering och återställning Användarhandbok Copyright 2007-2009 Hewlett-Packard Development Company, L.P. Windows är ett USA-registrerat varumärke som tillhör Microsoft Corporation. Informationen
Läs merCreo Customization. Lars Björs 2014-10-16
Creo Customization Lars Björs 2014-10-16 Norra Europas största partner och återförsäljare av PTC relaterad programvara (Windchill, Creo, Arbortext, MathCad, Relex) 70 anställda Egen utvecklingsavdelning
Läs merKompletterande instruktioner för installation och konfiguration av HMS-server för koppling mot KONTAKT
Kompletterande instruktioner för installation och konfiguration av HMS-server för koppling mot KONTAKT Innehållsförteckning 1 Maskinkrav innan installation 2 Konfigurera IIS 3 Installationsanvisningar
Läs merProgramutveckling med Java Development Kit. (JDK 1.1.x) och Programmers File Editor (PFE 7.02)
UMEÅ UNIVERSITET Institutionen för datavetenskap Thomas Johansson Oktober 1998 Programutveckling med Java Development Kit (JDK 1.1.x) och Programmers File Editor (PFE 7.02) Umeå universitet 901 87 Umeå.
Läs merInstruktioner för uppdatering från Ethiris 5.x till 6.0
Instruktioner för uppdatering från Ethiris 5.x till 6.0 Nedan följer instruktioner för hur man går till väga vid uppdatering av ett Ethirissystem version 5 till version 6. När man uppdaterar Ethiris från
Läs merFöreläsning 17 UTBLICK: FORTSÄTTNINGSKURSER I DATAVETENSKAP + ANDROID
Föreläsning 17 UTBLICK: FORTSÄTTNINGSKURSER I DATAVETENSKAP + ANDROID Vad gör vi här? Programmeringsteknik fördjupningskurs (EDAA01; 7,5hp) Valfri för F, N & BME (kan läsas från åk 2 eller i sommar!) Avancerad
Läs merNågra grundläggande begrepp
Några grundläggande begrepp Validering bygger vi rätt system? Uppfyller kravspecifikationen de verkliga behoven? Verifiering bygger vi systemet rätt? Uppfyller det färdiga systemet kravspecifikationen?
Läs merUTVECKLINGSVERKTYG. Praktiska tips för PUM-projekten
UTVECKLINGSVERKTYG Praktiska tips för PUM-projekten TEKNIKER I PROJEKTEN ios 2 C#.NET 1 Java (inkl Android) 6 Webb (HMTL/JS) 4 En genomskumning av de tilldelade projektförslagen ger ovanstående uppfattning
Läs merVerifiering av MIFARE slinga på SITHS-kort
Verifiering av MIFARE slinga på SITHS-kort Detta dokument beskriver hur Omnikey Card Man5321 USB drivrutin samt diagnostikprogram installeras på en dator med Windows 7. Efter installationen kan kortläsaren
Läs merInstruktioner för att kunna programmera på skolans datorer
Instruktioner för att kunna programmera på skolans datorer De här instruktionerna är viktiga att känna väl till inför tentamen samt inför laborationsredovisningar. Många av er kommer att använda bärbara
Läs merDIG IN TO Dator och nätverksteknik
DIG IN TO Dator och nätverksteknik CCNA 1 Operativsystem Agenda Datorsystemets struktur Vad är ett operativsystem? Minneshantering Threads och processer Threads eller exekveringstrådar Processhantering
Läs merF2 XP Extrem Programmering översikt. EDAF45 Programvaruutveckling i grupp Projekt Boris Magnusson, Görel Hedin Datavetenskap, LTH
F2 XP Extrem Programmering översikt EDAF45 Programvaruutveckling i grupp Projekt Boris Magnusson, Görel Hedin Datavetenskap, LTH Vad är XP? En metod för hur man utvecklar programvara i grupp i nära samspel
Läs merSkapa din egen MediaWiki
Skapa din egen MediaWiki Inledning och syfte I detta moment skall du installera en egen wiki (Mediawiki), som du skall konfigurera. Du har möjligheten att använda en egen wiki på din dator eller webbhotell
Läs merLär dig programmera! Prova på programmering med enkla exempel! Björn Regnell www.bjornregnell.se
Lär dig programmera! Prova på programmering med enkla exempel! Björn Regnell www.bjornregnell.se Mål Så enkelt som möjligt: låg tröskel Ett riktigt programmeringsspråk: inget tak Roliga uppgifter som går
Läs merBoken?!?! Vad är ett program? Kompilerande-Interpreterande Programmeringsmiljö Hello World! Att programmera och ett enkelt program Variabler printf
Föreläsning1 Boken?!?! Vad är ett program? Kompilerande-Interpreterande Programmeringsmiljö Hello World! Att programmera och ett enkelt program Variabler printf scanf Ni behöver läsa boken både för att
Läs merCode-Lite tutorial ( /RoJ)
Code-Lite tutorial (2013-03-20/RoJ) Följ dessa anvisningar för att skapa projekt, kompilera/länka och testa dina laborationsuppgifter 3,4. Project Projekt, innehåller bland annat ett antal källtextfiler
Läs merInstallationsbeskrivning för CAB Service Platform med CABInstall
Installationsbeskrivning för CAB Service Platform med CABInstall INLEDNING... 2 INSTALLATION... 3 AVANCERAD INSTALLATION... 10 YTTERLIGARE INFORMATION... 11 Proxy... 11 Sida 1 av 12 Inledning Denna beskrivning
Läs merVem är vem på kursen. Objektorienterad programvaruutveckling GU (DIT011) Kursbok Cay Horstmann: Big Java 3rd edition.
Institutionen för Datavetenskap Göteborgs universitet HT2009 DIT011 Vem är vem på kursen Objektorienterad programvaruutveckling GU (DIT011) Kursansvarig : Katarina Blom, tel 772 10 60 Rum: 6126 (E-huset)
Läs mer12 principer of agile practice (rörlig)
X-treme programming 12 principer of agile practice (rörlig) Ge nöjd kund genom tidig och kontinuerliga leveranser Den viktigaste punkten som betyder att min vill ha kontinuerlig feedback Välkomna sena
Läs merBeskrivning av gesällprov RMI Chat Mikael Rydmark
Beskrivning av gesällprov RMI Chat Mikael Rydmark rydmark@kth.se Mikael Rydmark 1(8) 12-06-06 Innehållsförteckning Inledning...3 Server...3 Klient... 3 Ansluta till servern...3 Huvudchat...4 Privat kommunikation...5
Läs merFöreläsning 3. Programmering, C och programmeringsmiljö
Föreläsning 3 Programmering, C och programmeringsmiljö Vad är programmering? Ett väldigt kraftfullt, effektivt och roligt sätt att kommunicera med en dator Att skapa program / applikationer till en dator
Läs merKomponenter med COM (och COM+/VC++ 7.0)
MÄLARDALENS HÖGSKOLA Komponenter med COM (och COM+/VC++ 7.0) Med Visual C++ 7.0 COM-komponent EI0230 Komponentbaserad applikationsutveckling oktober 2003 Om denna sammanfattning Denna sammanfattning innehåller
Läs merFireDTV. FireDTV-T Installationsguide. Boxers digitaltvutbud i Windows MCE. 051123 Boxer / MCE Sida 1 www.digital-everywhere.com
FireDTV-T Installationsguide Boxers digitaltvutbud i Windows MCE 051123 Boxer / MCE Sida 1 www.digital-everywhere.com Sätt i Boxerkortet Sätt först i den s.k. CA-modulen enligt bilden. Skjut in den hela
Läs merKrav: * Filen MpUpdate.exe får inte köras när du startar denna uppdatering.
Uppdatera Mobilus Professional till version 3.1.2 Krav: * Filen MpUpdate.exe får inte köras när du startar denna uppdatering. Mobilus Digital Rehab AB * Filen MP.exe (Mobilus programmet) får inte användas
Läs merJava: Utvecklingsverktyg, datatyper, kontrollstrukturer
Java: Utvecklingsverktyg, datatyper, kontrollstrukturer Sven-Olof Nyström Uppsala Universitet 13 juni 2005 1 Utvecklingsverktyg för Java Vi rekommenderar Suns utvecklingsverktyg (SDK, tidigare JDK), se
Läs merMetoder och verktyg för funktionssäkerhet
Metoder och verktyg för funktionssäkerhet Projektstart 1. Hantera kraven En bra process är grunden för att hantera kraven i ett säkerhetsprojekt. Det krävs att du har en tydlig spårbarhet mellan krav och
Läs merFöreläsning 1. Presentation av kursen Vad är programmering? Lite om java och utvecklingsmiljöer Aktivitetsdiagram Ett första program
Föreläsning 1 Presentation av kursen Vad är programmering? Lite om java och utvecklingsmiljöer Aktivitetsdiagram Ett första program Deitel: 1.1-1.9, 2.1-2.3 DA101A Programmering Programmering, DA101A Kursansvarig:
Läs merLyssna på Polar Internet Radio - En guide till din nya nätradiostation Kjelles Dansotek Topplistan, kan du lyssna på via Polar Internet Radio. Det är en sk. nätradio med blandad musik dygnet runt, alla
Läs merSnabbstartsguide. Verktygsfältet Snabbåtkomst Kommandona här är alltid synliga. Högerklicka på ett kommando om du vill lägga till det här.
Snabbstartsguide Microsoft Word 2013 ser annorlunda ut jämfört med tidigare versioner, så vi har skapat den här guiden så att du så snabbt som möjligt ska komma igång. Verktygsfältet Snabbåtkomst Kommandona
Läs merKurskatalog 2010 INNEHÅLLSFÖRTECKNING
SFÖRTECKNING 1. RFID-Kurser... 2 1.1. RFID Grundkurs... 2 1.2. RFID Fortsättningskurs... 3 1.3. RFID dator programmering... 4 1.4. RFID Systemadministration... 5 1.5. RFID Aktiv Systemadministration...
Läs merTips och idéer för Windows 8
Tips och idéer för Windows 8 Läs mer om it i lärandet på webben: www.spsm.se/itochlarande Tips och idéer för Windows 8 Skriften är utgiven av Specialpedagogiska skolmyndigheten (SPSM). Skriften kan hämtas
Läs merGrundkurs i programmering - intro
Grundkurs i programmering - intro Linda Mannila 4.9.2007 Dagens föreläsning Allmän kursinformation: mål, syfte, upplägg, examination, litteratur, etc. Hur arbetar en dator? Hur vi får datorn att förstå
Läs merMyndigheten för samhällsskydd och beredskap 1 (10) Datum 2012-03-16 0.7. Installationsguide ROPA
samhällsskydd och beredskap 1 (10) Installationsguide ROPA samhällsskydd och beredskap 2 (10) Installationsguide ROPA ROPA version Myndigheten för samhällsskydd och beredskap Avdelningen för utbildning,
Läs merDRAFT. CVS kurs laboration 1 Checka in, ut och uppdatera. Marcus Rejås. 17 november 2002
CVS kurs laboration 1 Checka in, ut och uppdatera Marcus Rejås 17 november 2002 Innehåll 1 Inledning 1 2 Förberedelser (om du skall köra CVS på en remote server) 1 2.1 Installera CYGWIN......................................
Läs mer