Refaktorisering och UML med Eclipse

Storlek: px
Starta visningen från sidan:

Download "Refaktorisering och UML med Eclipse"

Transkript

1 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 särskilt lämplig för denna kurs eftersom det är lätt att göra designförändringar och det finns integrerade verktyg för design med UML. Eclipse är utformat som ett ramverk så att man enkelt kan lägga till ny funktionalitet med stickproppar (plug ins) som man kan hitta på nätet eller skriva själv. Propparna innehåller i regel kompilerade Java klasser som implementerar gränssnitt i ramverket. Det kommer löpande nya versioner av Eclipse och proppar som inte alltid fungerar tillsammans. Även Java miljön ingår i systemet som stickproppar. I denna laboration skall du använda en stickpropp för UML-modellering. Du kan även installera denna i Eclipse på din egen dator hemma. 2. Installation i C524 och hemma Det finns många Eclipse-baserade verktyg för att modellera med UML, se t.ex. Beskrivningen i detta dokument använder Papyrus Papyrus stöder UML och erbjuder möjlighet att grafiskt editera olika typer av UML-diagram. I den här laborationen kommer vi främst att titta på klassdiagram och utifrån dessa generera Javakod och omvänt generera klassdiagram utifrån Javakod. Det räcker för användning i denna kurs. Det är tillåtet att använda valfritt datorbaserat verktyg för att producera UML-diagram. Till exempel kan du titta på umletino eller community-versionen av Visual Paradigm. Båda dessa verktyg tillhandahåller också UML-modellering. De saknar dock kodgenerering till Java. Har du synpunkter på Papyrus eller hittar något annat verktyg som är riktig bra får du gärna tipsa oss. För att kunna använda UML-verktyget behöver du konfigurera Eclipse. I studentsal C524 är denna konfiguration redan genomförd. Hemma kan du följa nedanstående beskrivning för installation på din egen dator. Jag utgår från att du har Eclipse (Mars) installerad. Under menyalternativet Help->Install new software skall du lägga till två sajter (enklast via Addknappen): Papyrus uppdateringssajt QVTO updateringssajt - Installera först allt under papyrus sajt och därefter allt under QVTO. Starta om eclipse. 3. Först lite om Eclipse 1. Java-editorn Standard-editorn för Java kan väldigt mycket om språket och rapporterar hela tiden fel och är beredd att hjälpa till på olika sätt. Fel markeras med vågstrecksunderstrykning och ett erbjudande om hjälp indikeras med en liten glödlampa i vänsterkanten. Om man skriver början på ett reserverat ord eller ett namn och därefter CTRL-mellanslag så kommer editorn att föreslå ett antal alternativ. Efter wh ges fyra alternativ för while-satser och några klassnamn som du förmodligen inte hört talas om. Genom att flytta sig till alternativen kan man få se hur Eclipse kommer att komplettera. Man accepterar med return eller dubbelklick. Editorn känner också till namn på dina egna variabler, metoder och klasser. 1

2 Man kan skriva main och få en hel main-metod och sysout för System.out.println(). Mallarna finns i Eclipse -> Inställningar -> Java -> Editor -> Templates där man själv kan modifiera och lägga till. När man skriver en punkt efter ett objektnamn erbjuds också ett antal alternativ. Antalet reduceras allteftersom man skriver vidare. Om man skriver x=1; utan att ha deklarerat x visar editorn en liten lampa som erbjuder att deklarera en lokal variabel, lägga till ett attribut eller en parameter. När lampan är dekorerad med ett litet kryss finns det fel som måste åtgärdas. Ett utropstecken betyder ofta att något är onödigt och kan tas bort utan att programmets funktionalitet förändras. Genom att klicka på lampan kan man ofta få upp förslag på åtgärder. 2. Menyer och genvägar Det finns ofta flera sätt att anropa en operation. De flesta operationerna kan nås via huvudmenyerna, File, Edit, etc. Många av operationerna förutsätter att man markerat det element som skall påverkas. Om man inte gjort kan alternativet vara nedtonat eller saknas. En del operationer har egna ikoner under raden med huvudmenyer. Editorer och vyer har ofta egna verktygsikoner. Genom att högerklicka på ett element öppnar man elementets kontextmeny. Om man vill att operationen skall gälla alla element i editorn skall man se till att inget element är markerat och högerklicka i bakgrunden. En del kommandon har tangentbordsgenvägar. Sådana syns till höger i vanliga menyer. Mycket går att konfigurera efter eget tycke, t ex via Eclipse -> Inställningar -> General ->Keys.... Inställningar kan sparas, exporteras och importeras. 3. Source-menyn Med Source -> Format formateras programmet så att indenteringen, inskjutna mellanslag, tomma rader etc. blir konsekvent. Det går att i detalj styra hur detta skall gå till i Eclipse -> Inställningar -> Java -> Codestyle -> Formatter om man inte är nöjd med standardvärdena. Medlemmarna i en klass (attribut, metoder, klasser etc.) bör vara ordnade på samma sätt i alla klasser i ett projekt. Med Source -> Sort members åstadkommer man detta i en klass, ett paket eller i hela projektet. Via Eclipse -> Inställningar ->Java ->Appearance -> Member Sort Order kan man styra detaljer för sorteringen. När man behöver en ny konstruerare som ger värden åt några attribut använder man med fördel Source -> Generate -> Constructor using Fields. Source -> Organize imports sorterar import-klausuler, tar bort onödiga och lägger till sådana som behövs. Med Source -> Clean Up... får man en mer genomgripande städning av programmet med indentering, sortering, mm. Detaljerna kan styras via Eclipse -> Inställningar -> Java -> Code Style -> Clean Up. 4. Refactor-menyn Refactor-menyn innehåller mängd operationer för att omstrukturera programmet. Innehållet i menyn växlar efter vad som är markerat i Package Explorer eller editorer. Namnbyten, Refactor -> Rename..., är en enkel och kraftfull operation. Om man byter namn på en klass kommer alla referenser till namnet i hela projektet att bytas ut. Om man så önskar kommer även liknande namn på attribut och metoder och förekomster i kommentarer att modifieras. 2

3 Det enklaste sättet att flytta klasser mellan olika paket är att dra dem i Package Explorer. Det går att flytta metoder och attribut på samma sätt, men det kräver ofta efterarbete. I uppgiften nedan får du prova några andra operationer. Experimentera gärna; i regel går det att återställa programmet med Edit -> Undo. 4. Papyrus UML I menyn Window -> Perspective -> Open perspective -> Other kan du välja ett anpassat perspektiv (Papyrus) för din modellering. Det går också bra att använda ditt vanliga Java perspektiv och öppna de relevanta vyerna separat i menyn Window -> Show View. Du behöver i så fall öppna Papyrus/Model Explorer och General/Properties. - När man arbetar med Papyrus (till exempel i uppgiften nedan) så kan det vara bra att känna till ett par allmänna saker. UML är ett generellt modelleringsspråk och saknar därför en del Javaspecifika konstruktioner. Därför behöver vi ange att den UML modell vi skapar skall vara Javaspecifik om vi vill kunna generera Javakod. Genom att ange Java som profil för projektet kan vi lägga till stereotyper till de olika elementen i modellen. Dessa stereotyper styr sedan vilken kod som genereras. - UML-modellen är integrerad med Java-representationen av programmet så att förändringar i den ena avspeglar sig i den andra. Du väljer själv om du vill synkronisera (dvs. skriva över) existerande filer eller generera nya javafiler respektive UML-modeller. För att generera Java kod, högerklicka på elementet i modellen och välj Java -> Generate Java Code. För att generera UML kan du istället högerklicka på klassen eller paketet i Project Explorer och välja Java -> Java Reverse. Det är inte alltid så lätt att få diagrammet att se ut exakt som man skulle önska. Ansträng dig inte mer än att diagrammet blir användbart som underlag för designdiskussionen. Tutorials: ( Uppgift Eclipse och Papyrus Denna uppgift innehåller enkel objektorienterad design och introducerar de viktigaste handgreppen i Papyrus. 1. Starta Eclipse. 2. Eventuellt installera och konfigurera UML-verktyget (enligt avsnitt 2). 3. Skapa ett nytt Papyrusprojekt (projektnamn: geometrypapyrus, modellnamn: geometryuml, och namn på rotelement geometry ). Välj UML som modelleringsspråk och välj typ klassdiagram. Lägg till Java som profil (finns bland registrerade profiler). 4. Importera Javas primitiva typer. I vyn Model Explorer högerklicka på rotelementet (geometry) och välj Import -> Import registered package. 5. Skapa klassen Point i UML-diagrammet genom att markera Class i UML-paletten och klicka på den plats i diagrammet där klassrutan skall placeras. Högerklicka i diagrammet och välj Show properties view ifall du inte ser en tabb där du kan ändra namn etc på klassen. 6. Lägg till två privata attribut, x och y, av typen double. Dra två Property element från paletten till din klass Point. Namn, synlighet och typ kan ändras i vyn Properties (tabb: UML) som visas när du markerar aktuellt attribut. Siffran i hakparentesen visar multiplicitet. 7. Skapa ett paket (geometry) och dra klassen Point dit. 8. Generera java kod. Markera klassen Point, högerklicka och välj Java -> Generate Java Code. Ett nytt javaprojekt skapas med samma namn som rotelementet (geometry) 9. Öppna klassen och titta på koden. Skriv in en JavaDoc-kommentar. 3

4 10. Skapa en konstruktor i klassen Point med de två attributen via Source -> Generate Constructor -> Using Fields. Kryssa gärna i Omit call to default constructor super(). 11. Generera UML utifrån din klass. Öppna vyn med modellen i vilken du vill infoga klassen. Dra klassen från Project explorer till modellen. Klasser och paket kan dölja varandra så du får själv arrangera det som du vill ha det. Genererade klasser och paket markeras med en pil uppe i högra hörnet. Högerklicka på klassen och utnyttja menyalternativet filter för att välja vilka detaljer som ska visas i diagrammet. 12. Det du får i diagrammet är en ögonblicksbild av klassen Point. För att uppdatera bilden av klassen när du ändrar i koden kan du ändra under tabben Appearance -> Sync with model till true. Ändrar du nu något i koden och efter högerklick på klassen under Project Explorer väljer Java -> Java reverse kommer bilden att uppdateras. Observera att ändrar du i bilden kan du bara generera Java-kod, dvs du kan skapa en ny klass men inte uppdatera en befintlig klass. 13. Lägg till metoden public double distanceto(point other) i Java-editorn och låt den returnera avståndet mellan this och other. Gör en JavaDoc-kommentar för metoden. Uppdatera bilden. 14. Formatera klassen med Source -> Format. 15. Gör en JUnit-test för distanceto via File -> New -> JUnit Test Case. Följ anvisningen att lägga till JUnit-paketet i build path. Implementera metoden test och använd någon assertmetod. Exekvera testet med Run -> Run As -> JUnit Test. 16. Skapa ett nytt paket för tester och flytta testklassen dit. Testa igen. 17. Vi skall nu ändra modellen så att den kan hantera punkter och sträckor antingen i 2 eller 3 dimensioner. Byt namn på Point till Point2D via Refactor -> Rename. 18. Skapa en superklass från Point2D med metoden distanceto via Refactor -> Extract Superclass. Låt superklassen få namnet Point. 19. Ändra signaturen för distanceto med Refactor -> Change Method Signature så att argumentet får typen Point. 20. Uppdatera UML-diagrammet genom att vänsterklicka i diagrammet på den vita ytan (utanför alla klasser etc). Under tabben appearance sätt sync with model till true. Det ska nu visas ett paket generated. Klicka på element i denna och välj sync with model. Fortsätt tills tillräcklig detalj visas. Justera layouten genom att ändra storlek på paket och dra klasser till lämpliga platser. 21. Skapa en klass Point3D med tre koordinater genom att utgå från en kopia av Point2D. 22. Uppdatera UML-diagrammet genom att Java reverse på geometry-paketet. Diagrammet måste vara i fokus och synligt för att detta ska fungera. 23. Skapa en klass (Segment) i UML diagrammet. Segment representerar en sträcka med hjälp av dess ändpunkter. 24. Lägg till operationen length() i Segment i diagrammet 25. Generera java-kod för segment genom att högerklicka på geometry-paketet i diagrammet och välja Java -> generate java code. Du ska nu ha fått ett projekt generated. Ändra i detta i fortsättningen. 26. Ändra i den genererade koden så segment får två punkt-attribut och en konstruktor för dessa och så att metoden length returnerar sträckans längd. Uppdatera UML-diagrammet. Glöm inte att klicka i sync with model för segment-klassen. 27. Testa metoden genom att skapa ett JUnit-test för denna. 4

5 28. Använd Source Clean Up... på hela paketet. Markera Use custom profile och konfigurera efter egna önskemål, t ex genom att avmarkera Add missing Annotations under fliken Missing Code och markera de fem rutorna under fliken Code Organizing. 29. När uppgiften är färdig bör UML-diagrammet se ut ungefär så här. 5. UMLetino Du ska nu testa ett annat verktyg för att rita UML-diagram. Verktyget är webb-baserat så du surfar in till: och klickar på start-länken Det som skiljer verktyget från papyrus är att det inte finns en koppling till koden som skrivs. Kod implementeras och underhålls separat från UML-diagrammet. Uppgift Rita klassdiagrammet för geometry-paketet i umletino. Spara undan och ladda in diagrammet igen. Exportera diagrammet till en bild. 5

Refaktorisering och UML med Eclipse

Refaktorisering 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 mer

Refaktorisering och UML med Eclipse

Refaktorisering 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 mer

Verktyg och Utvecklingsmiljö. Jochim von Hacht

Verktyg 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 mer

Verktyg och Utvecklingsmiljö. Föreläsning 2 Eclipse

Verktyg 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 mer

Här beskrivs Eclipse, den programutvecklingsmiljö som utnyttjas i programmeringskurserna. Mera information finns på:

Hä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 mer

Eclipse. Kort genomgång

Eclipse. 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 mer

725G61 - Laboration 7 Implementation av ett API. Johan Falkenjack

725G61 - 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 mer

NetBeans 5.5. Avsikt. Projektfönster

NetBeans 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 mer

2 Eclipse en handledning

2 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 mer

Eclipse en handledning

Eclipse 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 mer

UML. Objekt-orienterad programmering och design (DIT952) Niklas Broberg, 2016

UML. Objekt-orienterad programmering och design (DIT952) Niklas Broberg, 2016 UML Objekt-orienterad programmering och design (DIT952) Niklas Broberg, 2016 UML Unified Modelling Language Grafiskt modelleringsspråk för att beskriva olika aspekter av objektorienterade system. Vi kommer

Läs mer

Länkade listor och automatisk testning

Länkade listor och automatisk testning 1 (6) Länkade listor och automatisk testning Algoritmer och datastrukturer Obligatorisk nr 3 Syfte Att ge träning i programmering av länkade listor på låg abstraktionsnivå med primitiv pekarmanipulering.

Läs mer

Eclipse. Avsikt. Nu ska ett fönster liknande figuren till höger synas.

Eclipse. 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 mer

Editering, Kompilering och Exekvering av Javaprogram

Editering, Kompilering och Exekvering av Javaprogram UMEÅ UNIVERSITET Institutionen för informatik B.1, Programmeringens grunder, 5 poäng Editering, Kompilering och Exekvering av Javaprogram Introduktion Syftet med kursmomentet Programmeringens grunder (B.1)

Läs mer

Laboration 10 - Eclipse

Laboration 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 mer

Eclipse en handledning

Eclipse 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 mer

ID1004 Laboration 4, November 2012

ID1004 Laboration 4, November 2012 06-Nov-2012/FK ID1004 Laboration 4, 14-16 November 2012 Beräknad tid ca 1-2 timmar. Instruktionen antar att labben utförs i datasal, med hjälp av den integrerade utvecklingsmiljön Eclipse. Alternativt

Läs mer

Arv. Fundamental objekt-orienterad teknik. arv i Java modifieraren protected Lägga till och modifiera metoder med hjälp av arv Klass hierarkier

Arv. Fundamental objekt-orienterad teknik. arv i Java modifieraren protected Lägga till och modifiera metoder med hjälp av arv Klass hierarkier Arv Fundamental objekt-orienterad teknik arv i Java modifieraren protected Lägga till och modifiera metoder med hjälp av arv Klass hierarkier Programmeringsmetodik -Java 165 Grafisk respresentation: Arv

Läs mer

Laboration 3 GUI-programmering

Laboration 3 GUI-programmering Laboration 3 GUI-programmering Syfte Erbjuder studenterna en möjlighet att lära sig grunderna i gränssnittsprogrammering i Java. Genomförande Genomförs individuellt eller i grupp om 2 personer. Uppskattad

Läs mer

Kort om klasser och objekt En introduktion till GUI-programmering i Java

Kort om klasser och objekt En introduktion till GUI-programmering i Java Kort om klasser och objekt En introduktion till GUI-programmering i Java Klasser En klass är en mall för hur man ska beskriva på något. Antag att vi har en klass, Bil. Den klassen innehåller en lista på

Läs mer

Föreläsning 2 Verktyg m.m.

Fö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 mer

NetBeans 7. Avsikt. Projektfönster

NetBeans 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 mer

INSTALLATION...3 ATT KOMMA IGÅNG...3 PROGRAMMETS DESIGN...4 LÄGGA TILL TABELL...4 EDITERA TABELL...4 EDITERA RELATION...5 SPARA OCH AVSLUTA...

INSTALLATION...3 ATT KOMMA IGÅNG...3 PROGRAMMETS DESIGN...4 LÄGGA TILL TABELL...4 EDITERA TABELL...4 EDITERA RELATION...5 SPARA OCH AVSLUTA... INSTALLATION...3 ATT KOMMA IGÅNG...3 PROGRAMMETS DESIGN...4 LÄGGA TILL TABELL...4 EDITERA TABELL...4 EDITERA RELATION...5 SPARA OCH AVSLUTA...6 2 (6) 2D1954 Programutvecklingsprojekt vt 2003 Installation

Läs mer

INSTÄLLNINGAR FÖR IRONCADS 2D-RITNING

INSTÄLLNINGAR FÖR IRONCADS 2D-RITNING INSTÄLLNINGAR FÖR IRONCADS 2D-RITNING Innehållsförteckning Justera storlek och antalet decimaler för måttsättning...2 Ändra färg på ritningselement...4 Justera färg för ett enskilt element genom att byta

Läs mer

TUTORIAL: SAMLING & KONSOLL

TUTORIAL: SAMLING & KONSOLL TUTORIAL: SAMLING & KONSOLL Denna tutorial är en fortsättning på den tutorial där vi skapade klassen Car och sedan objekt av denna klass. Vi skall nu lära oss att lagra dessa objekt i en samling och även

Läs mer

Tentamen. DD2385 Programutvecklingsteknik vt Fredagen den 5 juni 2009 kl Inga hjälpmedel utom penna, sudd och linjal

Tentamen. DD2385 Programutvecklingsteknik vt Fredagen den 5 juni 2009 kl Inga hjälpmedel utom penna, sudd och linjal Tentamen DD2385 Programutvecklingsteknik vt 2009 Fredagen den 5 juni 2009 kl 10.00 13.00 Inga hjälpmedel utom penna, sudd och linjal Tentans del I omfattar 22 poäng. Del II har också 22 poäng Preliminära

Läs mer

LUNDS TEKNISKA HÖGSKOLA EDAA01 Programmeringsteknik fördjupningskurs Institutionen för datavetenskap HT 2015

LUNDS TEKNISKA HÖGSKOLA EDAA01 Programmeringsteknik fördjupningskurs Institutionen för datavetenskap HT 2015 LUNDS TEKNISKA HÖGSKOLA EDAA01 Programmeringsteknik fördjupningskurs Institutionen för datavetenskap HT 2015 Testning med JUnit 1 Inledning JUnit är ett ramverk för enhetstestning av Javakod. Det är utvecklat

Läs mer

Laboration 1 Introduktion till Visual Basic 6.0

Laboration 1 Introduktion till Visual Basic 6.0 Laboration 1 Introduktion till Visual Basic 6.0 Förberedelse Förbered dig genom att läsa föreläsningsanteckningar och de kapitel som gåtts igenom på föreläsningarna. Läs även igenom laborationen i förväg.

Läs mer

Kompilering av Java-program med eclipse SDK för den som kan BlueJ

Kompilering av Java-program med eclipse SDK för den som kan BlueJ 1 (5) Kompilering av Java-program med eclipse SDK för den som kan BlueJ Inledning Eclipse är ett kraftfullt kodutvecklingsverktyg för Java. Det kan laddas ner gratis från www.eclipse.org. I detta papper

Läs mer

TDP005, Projekt: objektorienterade system

TDP005, 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 mer

Chapter 4: Writing Classes/ Att skriva egna klasser.

Chapter 4: Writing Classes/ Att skriva egna klasser. Chapter 4: Writing Classes/ Att skriva egna klasser. I dessa uppgifter kommer du att lära dig om hur man definierar egna objekt genom att skriva klasser. Detta är grunden för att förstå objekt orienterad

Läs mer

Tentamen i TDP004 Objektorienterad Programmering Praktisk del

Tentamen 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 mer

Tentamen. DD2385 Programutvecklingsteknik vt 2014 Måndagen den 2 juni 2014 kl Hjälpmedel: penna, suddgummi, linjal

Tentamen. DD2385 Programutvecklingsteknik vt 2014 Måndagen den 2 juni 2014 kl Hjälpmedel: penna, suddgummi, linjal Tentamen DD2385 Programutvecklingsteknik vt 2014 Måndagen den 2 juni 2014 kl 10.00 13.00 Hjälpmedel: penna, suddgummi, linjal Tentan har två delar om vardera 30 poäng Maximala betygsgränser (gränserna

Läs mer

Datorlaboration 0, Programmering i C++ (EDAF30)

Datorlaboration 0, Programmering i C++ (EDAF30) LUNDS TEKNISKA HÖGSKOLA Programmering i C++ Institutionen för datavetenskap HT 2015 Datorlaboration 0, Programmering i C++ (EDAF30) Under den inledande datorlaborationen får du träna på de grundläggande

Läs mer

TUTORIAL: KLASSER & OBJEKT

TUTORIAL: KLASSER & OBJEKT TUTORIAL: KLASSER & OBJEKT I denna tutorial lär vi oss att använda klasser och objekt samt hur vi bygger en enkel applikation kring dessa. I tutorialen kommer det finnas en mängd kod som du antingen kan

Läs mer

Föreläsning 5-6 Innehåll. Exempel på program med objekt. Exempel: kvadratobjekt. Objekt. Skapa och använda objekt Skriva egna klasser

Föreläsning 5-6 Innehåll. Exempel på program med objekt. Exempel: kvadratobjekt. Objekt. Skapa och använda objekt Skriva egna klasser Föreläsning 5-6 Innehåll Exempel på program med objekt Skapa och använda objekt Skriva egna klasser public class DrawSquare { public static void main(string[] args) { SimpleWindow w = new SimpleWindow(600,

Läs mer

Att använda Java SE JDK 6

Att använda Java SE JDK 6 Att använda Java SE JDK 6 Programmeringsspråket Java är utvecklat av det amerikanska företaget Sun Microsystems. Sun erbjuder gratis en utvecklingsmiljö för java-programmering, Java 2 SE (Standard Edition).

Läs mer

Föreläsning 5-6 Innehåll

Föreläsning 5-6 Innehåll Föreläsning 5-6 Innehåll Skapa och använda objekt Skriva egna klasser Datavetenskap (LTH) Föreläsning 5-6 HT 2017 1 / 32 Exempel på program med objekt public class DrawSquare { public static void main(string[]

Läs mer

TENTAMEN PROGRAMMERING I JAVA, 5P SOMMARUNIVERSITETET

TENTAMEN PROGRAMMERING I JAVA, 5P SOMMARUNIVERSITETET UMEÅ UNIVERSITET Datavetenskap 010824 TENTAMEN PROGRAMMERING I JAVA, 5P SOMMARUNIVERSITETET Datum : 010824 Tid : 9-15 Hjälpmedel : Inga Antal uppgifter : 7 Totalpoäng : 40 (halva poängtalet krävs normalt

Läs mer

Tentamen i TDP004 Objektorienterad Programmering Praktisk del

Tentamen 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 mer

KARLSTADS UNIVERSITET 12/8/09 informatik & datavetenskap Johan Öfverberg, Kerstin Andersson Laboration 4, ISG A04 och DVG A08 HT-09

KARLSTADS UNIVERSITET 12/8/09 informatik & datavetenskap Johan Öfverberg, Kerstin Andersson Laboration 4, ISG A04 och DVG A08 HT-09 Laboration 4, ISG A04 och DVG A08 HT-09 Laborationen går ut på att skapa en enkel bankbok. Ni skall i bankboken kunna registrera upp till 30 transaktioner som kan bestå av insättning, uttag eller checkuttag.

Läs mer

Datorlaboration 0, Programmering i C++ (EDA623)

Datorlaboration 0, Programmering i C++ (EDA623) LUNDS TEKNISKA HÖGSKOLA Programmering i C++ Institutionen för datavetenskap HT 2013 Datorlaboration 0, Programmering i C++ (EDA623) Under den inledande datorlaborationen får du träna på de grundläggande

Läs mer

Tentamen i Objektorienterad modellering och design

Tentamen i Objektorienterad modellering och design Lunds Tekniska Högskola Datavetenskap Tentamen EDA061 2016 10-26, 08:00 13:00 Tentamen i Objektorienterad modellering och design Vid bedömningen kommer hänsyn att tas till lösningens kvalitet. UML-diagram

Läs mer

surell consulting ab

surell consulting ab PRINT ORGANIZER Detta dokument ger en kort introduktion till Print Organizer. Print Organizer ersätter och utökar den funktionalitet som tidigare fanns i Batch Print. Fokus i Print Organizer ligger på

Läs mer

Classes och Interfaces, Objects och References, Initialization

Classes och Interfaces, Objects och References, Initialization Classes och Interfaces, Objects och References, Initialization Objekt-orienterad programmering och design (DIT953) Niklas Broberg/Johannes Åman Pohjola, 2018 Abstract class En abstract class är en class

Läs mer

Komponenter med COM (och COM+/VC++ 7.0)

Komponenter 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 mer

Inkapsling (encapsulation)

Inkapsling (encapsulation) UML UML är en standard för att dokumentera och visualisera sina tankar och beslut under analys och design. Att lära sig allt om UML får inte plats i den här kursen, men vi kommer lära oss vissa delar.

Läs mer

Laboration 2: Designmönster

Laboration 2: Designmönster Laboration 2: Designmönster Bakgrund Det har visat sig väldigt svårt att beskriva hur ett system, eller en dellösning, skall konstrueras på ett bra sätt. Det har överhuvud taget varit svårt att veta om

Läs mer

Objektorienterad programmering i Java I. Uppgifter: 2 Beräknad tid: 5-8 timmar (OBS! Endast ett labbtillfälle) Att läsa: kapitel 5 6

Objektorienterad programmering i Java I. Uppgifter: 2 Beräknad tid: 5-8 timmar (OBS! Endast ett labbtillfälle) Att läsa: kapitel 5 6 Laboration 2 Objektorienterad programmering i Java I Uppgifter: 2 Beräknad tid: 5-8 timmar (OBS! Endast ett labbtillfälle) Att läsa: kapitel 5 6 Syfte: Att kunna använda sig av olika villkors- och kontrollflödeskonstruktioner

Läs mer

Malmö högskola 2007/2008 Teknik och samhälle

Malmö högskola 2007/2008 Teknik och samhälle Laboration 8 Avsikten med denna laboration är att du lära dig skapa objekt med hjälp av klasser. Detta är en introduktion till ett objektorienterat tankesätt. Med hjälp av detta tankesätt kan du så småningom

Läs mer

Versionshantering. Jan Erik Moström

Versionshantering. 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 mer

DAT043 - Föreläsning 7

DAT043 - Föreläsning 7 DAT043 - Föreläsning 7 Model-View-Controller, mer om klasser och interface (arv, ) 2017-02-06 Designmönstret Observer avläser Observer Observable meddelar Observer avläser En eller flera objekt registrerar

Läs mer

Guide till RefWorks Skapa ett RefWorks-konto Under Citera och referera > RefWorks Hjälp funktioner i RefWorks Help Tutorial Help

Guide till RefWorks Skapa ett RefWorks-konto Under Citera och referera > RefWorks Hjälp funktioner i RefWorks Help Tutorial Help Guide till RefWorks Denna guide beskriver kort hur du kommer igång med RefWorks, hur du importerar referenser till RefWorks, delar dina referenser med andra samt hur du refererar och skapar referenslistor.

Läs mer

Tentamen i TDP004 Objektorienterad Programmering Praktisk del

Tentamen 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 mer

Objektinteraktion. Objektorienterad programmering Laboration 2. Syfte Att konstruera ett litet objektorienterat program med flera samverkande objekt.

Objektinteraktion. Objektorienterad programmering Laboration 2. Syfte Att konstruera ett litet objektorienterat program med flera samverkande objekt. (7) Objektinteraktion Objektorienterad programmering 2 Syfte Att konstruera ett litet objektorienterat program med flera samverkande objekt. Mål Efter övningen skall du kunna konstruera ett program med

Läs mer

Laboration 10 - NetBeans

Laboration 10 - NetBeans Laboration 10 - NetBeans 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 mer

1. Definiera klassvariabel. 2. Instansvariabel för klass. Selektera klass i Browsern och tryck på statics. Definiera protokollnamn, Protocol->Add...

1. Definiera klassvariabel. 2. Instansvariabel för klass. Selektera klass i Browsern och tryck på statics. Definiera protokollnamn, Protocol->Add... Kort beskrivning av klassvariabler, något om instansvariabler för klasser samt en introduktion till gränssnittsbyggande med hjälp av gränssnittsbyggare i VisualWorks 5i 1. Definiera klassvariabel Selektera

Läs mer

Code-Lite tutorial ( /RoJ)

Code-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 mer

Macromedia. Flash 8 Grundkurs. www.databok.se

Macromedia. Flash 8 Grundkurs. www.databok.se Macromedia Flash 8 Grundkurs www.databok.se Innehållsförteckning 1 Börja arbeta med Flash 8...1 Användningsområden...1 Bekanta dig med arbetsytan...2 Scen och tidslinje...3 Lager...3 Bibliotek...4 Verktygsfältet

Läs mer

Föreläsning 15: Repetition DVGA02

Föreläsning 15: Repetition DVGA02 Föreläsning 15: Repetition DVGA02 Vad handlar kursen om? Kursen kan i grova drag delas upp i tre delar: 1. Objekt-orienterad programmering 2. Grafiska användargränssnitt 3. Datastrukturer Dessutom genomsyras

Läs mer

Classes och Interfaces, Objects och References Objekt-orienterad programmering och design (DIT952) Niklas Broberg, 2016

Classes och Interfaces, Objects och References Objekt-orienterad programmering och design (DIT952) Niklas Broberg, 2016 Classes och Interfaces, Objects och References Objekt-orienterad programmering och design (DIT952) Niklas Broberg, 2016 Abstract class En abstract class är en class som inte kan skapa några objekt. Syfte:

Läs mer

Malmö högskola 2007/2008 Teknik och samhälle

Malmö högskola 2007/2008 Teknik och samhälle Laboration 12 Avsikten med denna laboration är att du ska göra några grafiska program. Börja med att skapa paketet laboration 12. Grundläggande uppgift Uppgift 12a Uppgiften går ut på att göra en enkel

Läs mer

Handbok Artikulate. Andreas Cord-Landwehr Ondrila Gupta Översättare: Stefan Asserhäll

Handbok Artikulate. Andreas Cord-Landwehr Ondrila Gupta Översättare: Stefan Asserhäll Andreas Cord-Landwehr Ondrila Gupta Översättare: Stefan Asserhäll 2 Innehåll 1 Inledning 5 1.1 Inlärningsmetodiken.................................... 5 1.2 De första stegen i Artikulate................................

Läs mer

Malmö högskola 2008/2009 CTS

Malmö högskola 2008/2009 CTS Laboration 8 Avsikten med laborationen är att du lära dig skapa objekt med hjälp av klasser. Detta är en introduktion till ett objektorienterat tankesätt. Med hjälp av detta tankesätt kan du så småningom

Läs mer

JAVA Mer om klasser och objektorientering

JAVA Mer om klasser och objektorientering JAVA Mer om klasser och objektorientering Begreppet package - paket Package används när man t ex vill skapa ett eget bibliotek med klasser. Sen är det då meningen att man ska importera detta paket i det

Läs mer

Paneler - VCPXX.2. Programmeringsmanual för VCP-paneler. Revision 2

Paneler - VCPXX.2. Programmeringsmanual för VCP-paneler. Revision 2 Paneler - VCPXX.2 Programmeringsmanual för VCP-paneler Revision 2 Innehållsförteckning Innehållsförteckning... 2 1 Symbolfiler för kommunikation via IndraLogic... 3 2 Uppsättning i IndraWorks... 6 3 Programmering

Läs mer

LÖSNINGSFÖRSLAG Programmeringsteknik För Ing. - Java, 5p

LÖSNINGSFÖRSLAG Programmeringsteknik För Ing. - Java, 5p UMEÅ UNIVERSITET Datavetenskap 010530 LÖSNINGSFÖRSLAG Programmeringsteknik För Ing. - Java, 5p Betygsgränser 3 21,5-27 4 27,5-33,5 5 34-43 Uppgift 1. (4p) Hitta de fel som finns i nedanstående klass (det

Läs mer

UML. Klassdiagr. Abstraktion. Relationer. Överskugg. Överlagr. Aktivitetsdiagram Typomv. Typomv. Klassdiagr. Abstraktion. Relationer.

UML. Klassdiagr. Abstraktion. Relationer. Överskugg. Överlagr. Aktivitetsdiagram Typomv. Typomv. Klassdiagr. Abstraktion. Relationer. Översikt Klasshierarkier UML klassdiagram Relation mellan klasser mellan klasser och objekt Association ning ing andling Programmering tillämpningar och datastrukturer 2 UML UML Unified Modeling Language

Läs mer

STOCKHOLMS UNIVERSITET. Handbok 2. Funktionaliteter moveon 4

STOCKHOLMS UNIVERSITET. Handbok 2. Funktionaliteter moveon 4 STOCKHOLMS UNIVERSITET Handbok 2 Funktionaliteter moveon 4 Göteborgs Universitet 2013-11-04: Denna manual visar hur man söker i tabeller och sorterar i kolumner och andra bra tips för att förenkla användandet

Läs mer

EndNote X8. Bygg ditt eget referensbibliotek. - där du samlar referenser från olika databaser på ett och samma ställe

EndNote X8. Bygg ditt eget referensbibliotek. - där du samlar referenser från olika databaser på ett och samma ställe EndNote X8 Bygg ditt eget referensbibliotek 1. Vad är EndNote? EndNote är ett referenshanteringsprogram: - där du samlar referenser från olika databaser på ett och samma ställe - som underlättar sortering

Läs mer

1 Grafiska komponenter

1 Grafiska komponenter 1 Grafiska komponenter Vi har sett exempel på hur vi kan arbeta med enkla dialogrutor med klasser JOptionPane och hur vi kan rita med en rityta, Graphics instans, i en Java applet. Att skapa ett grafiskt

Läs mer

Tentamen i EDAF25. 1 juni Skrivtid: Skriv inte med färgpenna enda tillåtna färg är svart/blyerts.

Tentamen i EDAF25. 1 juni Skrivtid: Skriv inte med färgpenna enda tillåtna färg är svart/blyerts. Tentamen i EDAF5 juni 07 Skrivtid: 4-9 Skriv bara på ena sidan av pappret tentorna kommer att scannas in, och endast framsidorna rättas. Skriv inte med färgpenna enda tillåtna färg är svart/blyerts. Skriv

Läs mer

Objektorienterad programmering i Java

Objektorienterad programmering i Java Objektorienterad programmering i Java Föreläsning 4 Täcker i stort sett kapitel 6 i kursboken Java Software Solutions 1 Läsanvisningar Den här föreläsningen är uppbyggd som en fortsättning av exemplet

Läs mer

DUGGA: Objektorienterade applikationer. Läs detta! Uppgifterna är inte avsiktligt ordnade efter svårighetsgrad.

DUGGA: Objektorienterade applikationer. Läs detta! Uppgifterna är inte avsiktligt ordnade efter svårighetsgrad. 1 (8) DUGGA: Objektorienterade applikationer Läs detta! Uppgifterna är inte avsiktligt ordnade efter svårighetsgrad. Skriv ditt namn, personnummer och e-postadress på försättsbladet. Skriv rent dina svar.

Läs mer

Föreläsning 8 - del 2: Objektorienterad programmering - avancerat

Föreläsning 8 - del 2: Objektorienterad programmering - avancerat Föreläsning 8 - del 2: Objektorienterad programmering - avancerat Johan Falkenjack johan.falkenjack@liu.se Linköpings universitet Sweden December 4, 2013 1 Innehåll Arv och andra viktiga begrepp Abstrakta

Läs mer

Klasser i Java kan ha metoder och egenskaper. Metoder beskriver funktioner som klassen kan utföra. Egenskaper beskriver innehållet i klassen.

Klasser i Java kan ha metoder och egenskaper. Metoder beskriver funktioner som klassen kan utföra. Egenskaper beskriver innehållet i klassen. TT Kapitel 3. Husdjur & Fisk Javaklasser Translation by Leif Lourié Java program består av klasser som beskriver saker (objekt) som finns på riktigt. Även om det finns många olika sätt att skriva program

Läs mer

DAT043 - föreläsning 8

DAT043 - föreläsning 8 DAT043 - föreläsning 8 Paket, generics, Java collections framework 2017-02-07 Paket och tillgänglighet Ovanför klasser finns en hierarkisk namespace med paket. Filer som inte deklareras i något paket finns

Läs mer

Word-guide Introduktion

Word-guide Introduktion Word-guide Introduktion På det kognitionsvetenskapliga programmet kommer du läsa kurser inom flera olika vetenskapsområden och för varje vetenskapsområde finns ett speciellt sätt att utforma rapporter.

Läs mer

Gissa ordet, tutorial

Gissa ordet, tutorial Gissa ordet, tutorial Detta är en introduktion till hur du kommer igång med Android-programmering för smartphones. I huvuduppgiften gör du ett enkelt spel, Vilket ord tänker jag på?, och laddar ned det

Läs mer

Tentamen i Objektorienterad modellering och diskreta strukturer

Tentamen i Objektorienterad modellering och diskreta strukturer Lunds Tekniska Högskola Datavetenskap Ulf Asklund, Sven Gestegård obertz Tentamen EDAF10 2013 10 24, 8.00 13.00 Tentamen i Objektorienterad modellering och diskreta strukturer Vid bedömningen kommer hänsyn

Läs mer

Arv och polymorfism i Java

Arv och polymorfism i Java 1 (5) Arv och polymorfism i Java Objektorienterad programmering 5 Syfte Att ge en introduktion till arvsmekanismen i Java. Mål Efter övningen skall du kunna definiera klasser med arv i Java. förstå hur

Läs mer

Tentamen i Objektorienterad modellering och design Helsingborg

Tentamen i Objektorienterad modellering och design Helsingborg Lunds Tekniska Högskola Datavetenskap Emelie Engström Tentamen EDAF25 2016 10-26, 08:00 13:00 Tentamen i Objektorienterad modellering och design Helsingborg Tentamen består av en teoridel om totalt 5 poäng

Läs mer

Outline. Objektorienterad Programmering (TDDC77) Att instansiera en klass. Objekt. Instansiering. Åtkomst. Abstrakt datatyp.

Outline. Objektorienterad Programmering (TDDC77) Att instansiera en klass. Objekt. Instansiering. Åtkomst. Abstrakt datatyp. Objektorienterad Programmering (TDDC77) Föreläsning X: Klass diagram, inkapsling, arv Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2017 Att instansiera en klass Objekt I Man instansierar (skapar

Läs mer

UML: Exempel. Ett modelleringsspråk. UML: Ansvar. UML: tre huvudanvändningar. Exempel: En klass position storlek. UML Unified Modelling Language

UML: Exempel. Ett modelleringsspråk. UML: Ansvar. UML: tre huvudanvändningar. Exempel: En klass position storlek. UML Unified Modelling Language Ett modelleringsspråk : Exempel Fönster Klassnamn Unified Modelling Language Av Booch, Jacobson, Rumbaugh Exempel: En klass position storlek Attribut (instansvariaböe) Resultatet av en sammanslagning av

Läs mer

Objektinteraktion. Objektorienterad programmering Laboration 2. Syfte Att konstruera ett litet objektorienterat program med flera samverkande objekt.

Objektinteraktion. Objektorienterad programmering Laboration 2. Syfte Att konstruera ett litet objektorienterat program med flera samverkande objekt. (7) Objektinteraktion Objektorienterad programmering Syfte Att konstruera ett litet objektorienterat program med flera samverkande objekt. Mål Efter övningen skall du kunna konstruera ett program med flera

Läs mer

Tentamen i TDP004 Objektorienterad Programmering Praktisk del

Tentamen i TDP004 Objektorienterad Programmering Praktisk del Tentamen i TDP004 Objektorienterad Programmering Praktisk del Datum: 2009-08-24 Tid: 14-18 Plats: SU-salar i B-huset. Jour: Per-Magnus Olsson, tel 285607 Jourhavande kommer att besöka skrivsalarna ungefär

Läs mer

Laboration 1: Figurer i hierarki

Laboration 1: Figurer i hierarki Laboration 1: Figurer i hierarki Bakgrund Två grundläggande tekniker i objektorienterad konstruktion är arv och komposition. Mål Laborationen har flera avsikter: 1. Ge kunskaper i hur program kan organiseras

Läs mer

Telia Connect för Windows

Telia Connect för Windows Telia Connect för Windows Version 3.0 Användarguide Updaterad: 3 juli 2007 Innehåll Ansluta till Internet...3 Information som presenteras av Telia Connect...4 Konfiguration av Telia Connect...7 Fliken

Läs mer

Vem är vem på kursen. Objektorienterad programvaruutveckling GU (DIT011) Kursbok Cay Horstmann: Big Java 3rd edition.

Vem ä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 mer

Objektorientering: Lagring och livstid

Objektorientering: Lagring och livstid TDDD78, TDDE30, 729A85 jonas.kvarnstrom@liu.se 2018 Objektorientering: Lagring och livstid Tre sorters variabler Tre sorters variabel (1): Lokal 2 Lokal variabel Deklareras inuti en metod Vid varje anrop

Läs mer

Introduktion till objektorientering. Vad är objektorientering egentligen? Hur relaterar det till datatyper? Hur relaterar det till verkligheten?

Introduktion till objektorientering. Vad är objektorientering egentligen? Hur relaterar det till datatyper? Hur relaterar det till verkligheten? Introduktion till objektorientering Vad är objektorientering egentligen? Hur relaterar det till datatyper? Hur relaterar det till verkligheten? TDDD78, TDDE30, jonas.kvarnstrom@liu.se 729A85 jonas.kvarnstrom@liu.se

Läs mer

Innehåll. dynamisk bindning. och programmering CRC) u Arv, polymorfi och

Innehåll. dynamisk bindning. och programmering CRC) u Arv, polymorfi och Innehåll u OOP snabbintroduktion u Datatyper u Uttryck u Satser u Arv (intro) u Programvaruutveckling och programmering u Klassdesign och metodik (UML, CRC) u Arv, polymorfi och dynamisk bindning u Fält

Läs mer

Komma igång med Qlikview

Komma igång med Qlikview Denna instruktion är till dig som är ny i Qlikview och snabbt vill komma igång med grundläggande funktioner. Innehåll 1 Introduktion... 2 1.1 Behörighet... 2 1.2 Webbläsare... 2 2 Installation av Qlikview

Läs mer

Laboration 2: Designmönster

Laboration 2: Designmönster Laboration 2: Designmönster Bakgrund Det har visat sig väldigt svårt att beskriva hur ett system, eller en dellösning, skall konstrueras på ett bra sätt. Det har överhuvud taget varit svårt att veta om

Läs mer

Objektorientering. Objekt och metoder. Objektorientering. Viktiga begrepp. Klass. Objekt. Deklarativ programmering

Objektorientering. Objekt och metoder. Objektorientering. Viktiga begrepp. Klass. Objekt. Deklarativ programmering och metoder Introduktion till objektorienterad programmering Markus Saers markus.saers@lingfil.uu.se orientering Deklarativ programmering Beskriver förutsättningarna för något Prolog Imperativ programmering

Läs mer

Objekt, Klasser, Paket m. m.

Objekt, Klasser, Paket m. m. Objekt, Klasser, Paket m. m. Bildserie 3 Objekt Ett objekt karakteriseras av - Identitet, det som gör det möjligt att särskilja objektet från andra objekt - Tillstånd, den data som finns i objektet - Beteende,

Läs mer

DD2385 Programutvecklingsteknik Några bilder till föreläsning 1 24/ Kursöversikt Javarepetition/Javaintroduktion

DD2385 Programutvecklingsteknik Några bilder till föreläsning 1 24/ Kursöversikt Javarepetition/Javaintroduktion DD2385 Programutvecklingsteknik Några bilder till föreläsning 1 24/3 2014 Innehåll Kursöversikt Javarepetition/Javaintroduktion UML - klassdiagram-introduktion i anslutning till Java-exemplen Kursmål,

Läs mer

Dagens program. Programmeringsteknik och Matlab. Objektorienterad programmering. Vad är vitsen med att ha både metoder och data i objekten?

Dagens program. Programmeringsteknik och Matlab. Objektorienterad programmering. Vad är vitsen med att ha både metoder och data i objekten? Programmeringsteknik och Matlab Övning 4 Dagens program Övningsgrupp 2 (Sal Q22/E32) Johannes Hjorth hjorth@nada.kth.se Rum 4538 på plan 5 i D-huset 08-790 69 02 Kurshemsida: http://www.nada.kth.se/kurser/kth/2d1312

Läs mer

TDP005, Projekt: Objektorienterade System. Laboration: Eclipse

TDP005, 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 mer

Tentamen i Objektorienterad modellering och diskreta strukturer

Tentamen i Objektorienterad modellering och diskreta strukturer Lunds Tekniska Högskola Datavetenskap Ulf Asklund, Sven Gestegård obertz Tentamen EDAF10 2014 10 31, 14.00 19.00 Tentamen i Objektorienterad modellering och diskreta strukturer Vid bedömningen kommer hänsyn

Läs mer