Föreläsning 8. Designmönster

Storlek: px
Starta visningen från sidan:

Download "Föreläsning 8. Designmönster"

Transkript

1 Föreläsning 8 Designmönster

2 Designmönster När man designar program kan det vara viktigt att förstå hur man tidigare gått till väga när man konstruerat program. Kännedom om dessa tillvägagångssätt kan snabba upp designprocessen och leda till bättre program i slutändan. Olika tillvägagångssätt att konstruera program kallas designmönster. Dessa är alltså bra lösningar till ett antal vanliga problem inom (objektorienterad) mjukvarudesign. Inspirationen till designmönster inom objektorienterad programmering kommer från arkitekturen där man använder olika arkitekturstilar vid husbygge. 2

3 Designmönster 1994 utkom Design Patterns, Elements of Reusable Object- Oriented Software av Gamma, Helm, Johnson och Vlissides. Boken lanserade idén om designmönster för mjukvaruutveckling. Den utgör en katalogisering av typiska problem och deras typiska lösningar. Boken är dock svår att läsa om man inte har programmerat mycket tidigare. 3

4 Designmönster Ingen ny Java-syntax krävs för att använda designmönster. Tre exempel på designmönster ges i boken: - Holder Pattern - Proxy Pattern - Composite Pattern 4

5 Första designmönstret Namn: Holder Pattern Problem: Ett objekt (A) måste kunna nås eller ändras av två eller flera klasser (klienter). (Jämför med globala variabler i andra programmeringsspråk.) Struktur: Skapa ett andra objekt (Holder-objekt) vars enda syfte är att innehålla objektet A och setoch get-metoder som klientobjekten kan använda. För- och nackdelar: Nackdelarna är att man måste skapa ett extra objekt och att ingen av klientobjekten kan komma åt A direkt. Fördelarna är att A är inkapslad, klassen för Holder-objektet är lätt att läsa och skriva och Holder-objektet förenklar koden för klientklasserna. 5

6 Holder Pattern SomeObjectHolder - _someobject: SomeObject + SomeObjectHolder() + getsomeobject(): SomeObject + setsomeobject(someobject): void Client1 Client2 Client3 6

7 Problemspecifikation: Problemexempel Create a frame with a rectangle and an ellipse, three radio buttons (red, blue, and green), and a quit button. Clicking on a radio button should change the current color (and make the button selected). When the user clicks on one of the shapes, the shape should appear selected, and the color of the shape should change to the current color. 7

8 Problemexempel Analys: green blue red Quit 8

9 Problemexempel Design: ColorHolderApp ColorShapePanel ColorHolder ControlPanel SmartRectangle SmartEllipse QuitButton ColorButton 9

10 Andra designmönstret Namn: Proxy Pattern Problem: Av olika anledningar vill man inte använda sig av ett objekt direkt (exempelvis kan objektet ändra sig från en tid till en annan). Man vill komma åt objektet men också få objektet att utföra något. Struktur: Skapa ett gränssnitt som definierar en roll, ett eller flera objekt (aktörer) som implementerar gränssnittet, ett proxy-objekt som också implementerar gränssnittet men som delegerar alla metodanrop till någon av aktörerna, samt ett eller flera klientobjekt. För- och nackdelar: Klientobjekten blir enklare. Nackdelarna är att man måste skapa ett extra objekt (proxy-objektet) och att ett extra metodanrop ska göras varje gång proxyn ska utföra något. 10

11 Proxy Pattern <<interface>> SomeRole SomeObject SomeObjectProxy - _someobject: SomeObject + SomeObjectProxy() + setsomeobject(someobject): void + All methods that the actor SomeObject has Client1 Client2 Client3 11

12 Skillnad mellan Holder och Proxy Om man behöver lagra ett värde som kan ändras (exempelvis en färg) och som andra objekt måste ha tillgång till då är det troligt att det är Holder-mönstret som ska användas. Om man behöver lagra ett värde som kan ändras och som man vill kunna skicka ett meddelande till för att något ska uträttas då ska man överväga Proxymönstret. 12

13 Problemspecifikation: Problemexempel Design a frame that contains two regions. One region should contain two pictures of cars. The other region should contain three buttons. Clicking on a car selects it and it remains selected until one clicks elsewhere in the region. Clicking a button makes the current car (if any) move to the right, move to the left, or stop. If no car is selected, clicking a button should have no effect. Once started, a car keeps moving until either (1) it reaches the edge of the region containing it or (2) the user selects it and clicks the stop button. 13

14 Problemexempel Analys: Reverse Stop Quit Forward 14

15 Problemexempel Design: CarProxyApp CarProxyPanel CarProxy ControlPanel MoveTimer Car QuitButton SpeedButton 15

16 Tredje designmönstret Namn: Composite Pattern Problem: Ett klient-objekt vill skicka ett meddelande till ett sammansatt objekt och få meddelandet förmedlat till objektets samtliga delar. Struktur: Skapa ett gränssnitt som definierar en roll, ett sammansatt objekt och dess delar (som också är objekt) som implementerar gränssnittet, samt ett eller flera klientobjekt. För- och nackdelar: Klientobjekten blir enklare. Lätt att lägga till fler komponenter (som i sin tur kan vara sammansatta) i det sammansatta objektet. Nackdelen är att det kan bli för lätt att lägga till komponenter (rörigt). 16

17 Composite Pattern <<interface>> SomeRole Client SomeObject1... SomeObjectN SomeObjectComposite - _someobject1: SomeObject _someobjectn: SomeObjectN + SomeObjectComposite() + Methods in interface 17

18 Problemspecifikation: Problemexempel Design a frame with a space alien and a slider. The space alien bounces around the frame from one edge to another. Moving the slider sets the speed at which the alien bounces. The space alien should be composed of three ellipses. 18

19 Problemexempel Analys: 0 25 Quit 19

Webbregistrering pa kurs och termin

Webbregistrering pa kurs och termin Webbregistrering pa kurs och termin 1. Du loggar in på www.kth.se via den personliga menyn Under fliken Kurser och under fliken Program finns på höger sida en länk till Studieöversiktssidan. På den sidan

Läs mer

Support Manual HoistLocatel Electronic Locks

Support Manual HoistLocatel Electronic Locks Support Manual HoistLocatel Electronic Locks 1. S70, Create a Terminating Card for Cards Terminating Card 2. Select the card you want to block, look among Card No. Then click on the single arrow pointing

Läs mer

Akronymer. CD5130 OOP, fk. Mjukvarumönster. Mjukvarumönster. Mjukvarumönster, forts. Mjukvarumönster, forts

Akronymer. CD5130 OOP, fk. Mjukvarumönster. Mjukvarumönster. Mjukvarumönster, forts. Mjukvarumönster, forts Akronymer CD5130 OOP, fk Software Design Patterns Object-Oriented Analys and Design: (OOAD) Object-Oriented Programming: (OOP) Software design Patterns: (SDP) Gang of Four: (GoF) Graphic User Interface

Läs mer

Designmönster/Design patterns

Designmönster/Design patterns Johan Eliasson Design patterns Designmönster/Design patterns Vad är det? Beprövade lösningar till återkommande programmeringsproblem Plattformsoberoende Beskrivs ofta med hjälp av UML Baseras på en bok

Läs mer

Tentamen. 2D4135 vt 2005 Objektorienterad programmering, design och analys med Java Lördagen den 28 maj 2005 kl 9.00 14.

Tentamen. 2D4135 vt 2005 Objektorienterad programmering, design och analys med Java Lördagen den 28 maj 2005 kl 9.00 14. Tentamen 2D4135 vt 2005 Objektorienterad programmering, design och analys med Java Lördagen den 28 maj 2005 kl 9.00 14.00, sal E33 Tentan har en teoridel och en problemdel. På teoridelen är inga hjälpmedel

Läs mer

Objektorienterad Programkonstruktion. Föreläsning 2 2 nov 2016

Objektorienterad Programkonstruktion. Föreläsning 2 2 nov 2016 Objektorienterad Programkonstruktion Föreläsning 2 2 nov 2016 Objekt - klass Namn Fält1 Fält2 Fält3 Metod1 Metod2 Metod3 Metod4 Objekt - klass Objekt - klass Objekt - klass + Objekt - klass public class

Läs mer

Lösenordsportalen Hosted by UNIT4 For instructions in English, see further down in this document

Lösenordsportalen Hosted by UNIT4 For instructions in English, see further down in this document Lösenordsportalen Hosted by UNIT4 For instructions in English, see further down in this document Användarhandledning inloggning Logga in Gå till denna webbsida för att logga in: http://csportal.u4a.se/

Läs mer

PROGRAMMERING A VC# 2008 EXPRESS UTVECKLINGSVERKTYGET VISUAL C#

PROGRAMMERING A VC# 2008 EXPRESS UTVECKLINGSVERKTYGET VISUAL C# PROGRAMMERING A VC# 2008 EXPRESS UTVECKLINGSVERKTYGET VISUAL C# Vi gör ett enkelt glosförhör Allt det du gör idag ska ligga i samma projekt (och mapp). Du kan om du tycker det behövs använda flera forms

Läs mer

Webbreg öppen: 26/ /

Webbreg öppen: 26/ / Webbregistrering pa kurs, period 2 HT 2015. Webbreg öppen: 26/10 2015 5/11 2015 1. Du loggar in på www.kth.se via den personliga menyn Under fliken Kurser och under fliken Program finns på höger sida en

Läs mer

UML Objektdiagram. Objektorienterad modellering och design (EDAF25) Föreläsning 3. UML Sekvensdiagram. UML Objektdiagram. Agenda

UML Objektdiagram. Objektorienterad modellering och design (EDAF25) Föreläsning 3. UML Sekvensdiagram. UML Objektdiagram. Agenda Objektorienterad modellering och design (EDAF25) Föreläsning 3 UML Objektdiagram Agenda UML objekt och sekvensdiagram Design smells Designprinciper (ALP, SRP, OCP, DIP) (, Composite) Att göra denna och

Läs mer

Fördjupande uppsats i datalogi

Fördjupande uppsats i datalogi Fördjupande uppsats i datalogi Design Patterns: Elements of Reusable Object-Oriented Software Inledning Jag har läst boken Design Patterns: Elements of Reusable Object-Oriented Software. Boken, som myntade

Läs mer

Designmönster, introduktion. Vad är det? Varför skall man använda mönster?

Designmönster, introduktion. Vad är det? Varför skall man använda mönster? Designmönster, introduktion. Vad är det? Varför skall man använda mönster? Kent Petersson EMW, Mölndal Datavetenskap, Chalmers epost1: kentp@cs.chalmers.se epost2: kent.petersson@emw.ericsson.se URL: http://www.cs.chalmers.se/~kentp

Läs mer

Mönster. Ulf Cederling Växjö University Ulf.Cederling@msi.vxu.se http://www.msi.vxu.se/~ulfce. Slide 1

Mönster. Ulf Cederling Växjö University Ulf.Cederling@msi.vxu.se http://www.msi.vxu.se/~ulfce. Slide 1 Mönster Ulf Cederling Växjö University UlfCederling@msivxuse http://wwwmsivxuse/~ulfce Slide 1 Beskrivningsmall Beskrivningsmallen är inspirerad av den som användes på AG Communication Systems (AGCS) Linda

Läs mer

Föreläsning 7. Grafiska användargränssnitt

Föreläsning 7. Grafiska användargränssnitt Föreläsning 7 Grafiska användargränssnitt För att göra grafiska användargränssnitt: Måste man veta hur man skapar komponenterna i ett GUI och vilka det finns. Till lab 3 räcker det med att känna till de

Läs mer

Klient/server. Översikt. Lektion 1: Webbtekniker från Microsoft. Webbteknik från Microsoft. Klient/server. Designmönster. Utrullning.

Klient/server. Översikt. Lektion 1: Webbtekniker från Microsoft. Webbteknik från Microsoft. Klient/server. Designmönster. Utrullning. Klient/server Översikt Webbteknik från Microsoft. Klient/server. Designmönster. Utrullning. Lektion 1: Webbtekniker från Microsoft Microsoft webbtekniker. ASP.NET. Klientsidan. Internet Information Server.

Läs mer

F8 - Arv. ID1004 Objektorienterad programmering Fredrik Kilander

F8 - Arv. ID1004 Objektorienterad programmering Fredrik Kilander F8 - Arv ID1004 Objektorienterad programmering Fredrik Kilander fki@kth.se Arv och subklasser Klasser innehåller attribut och beteenden En subklass ärver dessa från föräldern Detta ger: Återanvänd kod

Läs mer

Objektorienterad programmering

Objektorienterad programmering Objektorienterad programmering Emil Ahlqvist (c10eat@cs.umu.se) Didrik Püschel (dv11dpl@cs.umu.se) Johan Hammarström (c08jhm@cs.umu.se) Hannes Frimmel Moström (c10hml@cs.umu.se) 1 1. Introduktion 1.1 Objektorienterad

Läs mer

Självkörande bilar. Alvin Karlsson TE14A 9/3-2015

Självkörande bilar. Alvin Karlsson TE14A 9/3-2015 Självkörande bilar Alvin Karlsson TE14A 9/3-2015 Abstract This report is about driverless cars and if they would make the traffic safer in the future. Google is currently working on their driverless car

Läs mer

" «Observable» DataGenerator" betyder att klassen DataGenerator ärver från den abstrakta klassen Observable.

 «Observable» DataGenerator betyder att klassen DataGenerator ärver från den abstrakta klassen Observable. 1 Klassdiagram Markera om följande påståenden är sanna eller falska: " «Observable» DataGenerator" betyder att klassen DataGenerator ärver från den abstrakta klassen Observable. Om klassen A ärver från

Läs mer

Preschool Kindergarten

Preschool Kindergarten Preschool Kindergarten Objectives CCSS Reading: Foundational Skills RF.K.1.D: Recognize and name all upper- and lowercase letters of the alphabet. RF.K.3.A: Demonstrate basic knowledge of one-toone letter-sound

Läs mer

Objektorienterad programmering Föreläsning 15. Grafiska användargränssnitt (GUI Graphical User Interface)

Objektorienterad programmering Föreläsning 15. Grafiska användargränssnitt (GUI Graphical User Interface) Objektorienterad programmering Föreläsning 15 Copyright Mahmud Al Hakim mahmud@dynamicos.se www.webacademy.se Agenda Grafiska användargränssnitt (GUI Graphical User Interface) Standardklassen (Control)

Läs mer

Vad är mönsterspråk?

Vad är mönsterspråk? Vad är mönsterspråk? Språk består av meningsbärande byggstenar på olika nivåer. Texter Meningar Ord Orden har vi en överenskommen betydelse för. Men den kan vara väldigt tvetydig och mångtydig. Orden är

Läs mer

JUnit. Ska kompletteras med kodexempel på JUnit. DD2385 Programutvecklingsteknik Några bilder till föreläsning 12 21/5 2012

JUnit. Ska kompletteras med kodexempel på JUnit. DD2385 Programutvecklingsteknik Några bilder till föreläsning 12 21/5 2012 DD2385 Programutvecklingsteknik Några bilder till föreläsning 12 21/5 2012 Innehåll Testning med JUnit Refactoring Några designprinciper JUnit Ramverk i Java för testning av Java-klasser Utvecklat av Gamma

Läs mer

Design Patterns. En kort introduktion

Design Patterns. En kort introduktion Design Patterns En kort introduktion Vad är ett designmönster? Ett designmönster är en (namngiven) lösning på ett i en viss omgivning ofta återkommande problem. I mjukvaru-världen: En uppsättning klasser

Läs mer

Föreläsning 10. ADT:er och datastrukturer

Föreläsning 10. ADT:er och datastrukturer Föreläsning 10 ADT:er och datastrukturer ADT:er och datastrukturer Dessa två begrepp är kopplade till varandra men de står för olika saker. En ADT (abstrakt datatyp) är just abstrakt och är inte kopplad

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? jonas.kvarnstrom@liu.se 2016 2014 jonas.kvarnstrom@liu.se

Läs mer

Information technology Open Document Format for Office Applications (OpenDocument) v1.0 (ISO/IEC 26300:2006, IDT) SWEDISH STANDARDS INSTITUTE

Information technology Open Document Format for Office Applications (OpenDocument) v1.0 (ISO/IEC 26300:2006, IDT) SWEDISH STANDARDS INSTITUTE SVENSK STANDARD SS-ISO/IEC 26300:2008 Fastställd/Approved: 2008-06-17 Publicerad/Published: 2008-08-04 Utgåva/Edition: 1 Språk/Language: engelska/english ICS: 35.240.30 Information technology Open Document

Läs mer

Tentamen i Objektorienterad programmering

Tentamen i Objektorienterad programmering CHALMERS TEKNISKA HÖGSKOLA Datavetenskap TDA547 Tentamen i Objektorienterad programmering Lördagen 12 mars 2011, 8.30 12.30. Jourhavande lärare: Björn von Sydow, tel 0762/981014. Inga hjälpmedel. Lösningar

Läs mer

Beijer Electronics AB 2000, MA00336A, 2000-12

Beijer Electronics AB 2000, MA00336A, 2000-12 Demonstration driver English Svenska Beijer Electronics AB 2000, MA00336A, 2000-12 Beijer Electronics AB reserves the right to change information in this manual without prior notice. All examples in this

Läs mer

Styrteknik: Binära tal, talsystem och koder D3:1

Styrteknik: Binära tal, talsystem och koder D3:1 Styrteknik: Binära tal, talsystem och koder D3:1 Digitala kursmoment D1 Boolesk algebra D2 Grundläggande logiska funktioner D3 Binära tal, talsystem och koder Styrteknik :Binära tal, talsystem och koder

Läs mer

Användarhandbok. MHL to HDMI Adapter IM750

Användarhandbok. MHL to HDMI Adapter IM750 Användarhandbok MHL to HDMI Adapter IM750 Innehåll Inledning...3 MHL to HDMI Adapter-översikt...3 Komma igång...4 Smart Connect...4 Uppgradera Smart Connect...4 Använda MHL to HDMI Adapter...5 Ansluta

Läs mer

LULEÅ TEKNISKA UNIVERSITET

LULEÅ TEKNISKA UNIVERSITET LULEÅ TEKNISKA UNIVERSITET Tentamen i Objektorienterad programmering och design Totala antalet uppgifter: 5 Lärare: Håkan Jonsson, Andrey Kruglyak, 491000 Resultatet offentliggörs senast: 2010-04-09. Tillåtna

Läs mer

Övningar Dag 2 En första klass

Övningar Dag 2 En första klass Kurs i C++ Sid 1 (5) Övningar Dag 2 En första klass Denna övning går ut på att steg för steg bygga upp en klass och skapa objekt. Vi kommer att utgå från en sammansatt datatyp i en struct och parallellt

Läs mer

SI-pass 4. Johan Brook och Jesper Persson. 25 september 2012. Diskutera och svara på om påståendena nedan är äkta sanningar eller listiga lögner.

SI-pass 4. Johan Brook och Jesper Persson. 25 september 2012. Diskutera och svara på om påståendena nedan är äkta sanningar eller listiga lögner. SI-pass 4 Johan Brook och Jesper Persson 25 september 2012 1. Sant eller falskt? Diskutera och svara på om påståendena nedan är äkta sanningar eller listiga lögner. Interfaces i Java kan innehålla privata

Läs mer

Nr 17 Överenskommelse med Thailand om radioamatörverksamhet

Nr 17 Överenskommelse med Thailand om radioamatörverksamhet Nr 17 Överenskommelse med Thailand om radioamatörverksamhet Bangkok den 18 januari och 19 april 2002 Regeringen beslutade den 29 november 2001 att ingå överenskommelsen i form av skriftväxling. Överenskommelsen

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

Objektsamlingar i Java

Objektsamlingar i Java 1 (6) Objektsamlingar i Java Objektorienterad programmering 3 Syfte Att ge träning i att använda objektsamlingar i Java. Mål Efter övningen skall du kunna använda objektsamlingsklasserna ArrayList och

Läs mer

Mer om metoder och abstraktioner

Mer om metoder och abstraktioner Mer om metoder och abstraktioner Föreläsning 5 TDA540 - Objektorienterad Programmering Sammanfattning Abstraktion, top-down design Gränsnitt av en metod Parameteröverföring För- och eftervilkor (kompilera

Läs mer

Symbolisk data. quote. (define a 1) (define b 2) (jacek johan david) (list a b)

Symbolisk data. quote. (define a 1) (define b 2) (jacek johan david) (list a b) Symbolisk data (1 2 3 4) (a b c d) (jacek johan david) ((jacek "jacek@cs.lth.se") (johan "johang@cs.lth.se") (david "dat99dpe@ludat.lth.se")) ((anna 13) (per 11) (klas 9) (eva 4)) (+ (* 23 4) (/ y x))

Läs mer

Sätt att skriva ut binärträd

Sätt att skriva ut binärträd Tilpro Övning 3 På programmet idag: Genomgång av Hemtalet samt rättning Begreppet Stabil sortering Hur man kodar olika sorteringsvilkor Inkapsling av data Länkade listor Användning av stackar och köer

Läs mer

Objektorienterad Programkonstruktion. Föreläsning 6 23 nov 2015

Objektorienterad Programkonstruktion. Föreläsning 6 23 nov 2015 Objektorienterad Programkonstruktion Föreläsning 6 23 nov 2015 Designmönster Färdiga "recept" för att lösa (del-)problem i struktureringen av ens program Mönster kan beskriva små komponenter eller stora

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

Föreläsning 12: Exempel och problemlösning

Föreläsning 12: Exempel och problemlösning TDA 545: Objektorienterad programmering Föreläsning 12: Exempel och problemlösning Magnus Myréen Chalmers, läsperiod 1, 2015-2016 Idag Problemlösning, dvs hur man ska tänka för att hitta lösning int mängd/set

Läs mer

Pedagogisk planering. Ron Chlebek. Centralt Innehåll. Svenska/Engelska. Lego Mindstorms. Syfte: Matematik

Pedagogisk planering. Ron Chlebek. Centralt Innehåll. Svenska/Engelska. Lego Mindstorms. Syfte: Matematik Pedagogisk planering Ron Chlebek Lego Mindstorms Åk 5 har programmerat tidigare i Scratch, Microbit och Code.org. Vi har börjat skolåret med att packa upp och bygga basmodel. Eleverna kommer att arbeta

Läs mer

Del 2 Processkonsultation Edgar Schein

Del 2 Processkonsultation Edgar Schein Del 2 Processkonsultation Edgar Schein Grundläggande definitioner Tre varianter av att ge hjälp 1. EXPERT modellen: Har en föreställning av att kunna ge rätt hjälp och veta det rätta svaret. Har en föreställning

Läs mer

Installation av F13 Bråvalla

Installation av F13 Bråvalla Website: http://www.rbdesign.se Installation av F13 Bråvalla RBDESIGN FREEWARE - ESCK Norrköping-Bråvalla 1. Ladda ner och packa upp filerna i en mapp som du har skapat på ett lättöverskådligt ställe utanför

Läs mer

De senaste åren har det hänt en hel del på ATO Fritid

De senaste åren har det hänt en hel del på ATO Fritid 82 S u m m e r 2 0 1 2 De senaste åren har det hänt en hel del på ATO Fritid Hösten 2010 övertogs ATO Fritid av det danska utemöbelföretaget Dacore A/S. Det har lett till att vi har flyttat från våra gamla

Läs mer

Programmering A C# VT 2010. Ett kompendie över Programmering A (50p) i c# Stefan Fredriksson 2010 02 08

Programmering A C# VT 2010. Ett kompendie över Programmering A (50p) i c# Stefan Fredriksson 2010 02 08 Programmering A C# VT 2010 Ett kompendie över Programmering A (50p) i c# Stefan Fredriksson 2010 02 08 Innehåll Hjälp och referenser... 3 Kap 1 Introduktion... 3 Steg för steg... 3 Kapitel 2 Variabler...

Läs mer

Tentamen. 2D4135 vt 2004 Objektorienterad programmering, design och analys med Java Torsdagen den 3 juni 2004 kl 9.00 14.

Tentamen. 2D4135 vt 2004 Objektorienterad programmering, design och analys med Java Torsdagen den 3 juni 2004 kl 9.00 14. Tentamen 2D4135 vt 2004 Objektorienterad programmering, design och analys med Java Torsdagen den 3 juni 2004 kl 9.00 14.00, sal D31 Tentan har en teoridel och en problemdel. På teoridelen är inga hjälpmedel

Läs mer

RADIATION TEST REPORT. GAMMA: 30.45k, 59.05k, 118.8k/TM1019 Condition D

RADIATION TEST REPORT. GAMMA: 30.45k, 59.05k, 118.8k/TM1019 Condition D RADIATION TEST REPORT PRODUCT: OP47AYQMLL Die Type: 147X FILE: OP47_LDR.xlsx DATE CODE: 95 GAMMA: 3.45k, 59.5k, 118.8k/TM119 Condition D GAMMA SOURCE: Co6 DOSE RATE: 8.6mRad(si)/s FACILITIES: University

Läs mer

Designmönster - EMW. Kent Petersson epost1: kentp@cs.chalmers.se epost2: kent.petersson@emw.ericsson.se URL: http://www.cs.chalmers.

Designmönster - EMW. Kent Petersson epost1: kentp@cs.chalmers.se epost2: kent.petersson@emw.ericsson.se URL: http://www.cs.chalmers. Designmönster - EMW Kent Petersson epost1: kentp@cs.chalmers.se epost2: kent.petersson@emw.ericsson.se URL: http://www.cs.chalmers.se/~kentp arbetar på Inst. för Datavetenskap, Cth & Gu, 50% och Software

Läs mer

Rhino3D. Schackbräde. Krav. Några detaljer som kan vara bra att känna till:

Rhino3D. Schackbräde. Krav. Några detaljer som kan vara bra att känna till: Laboration 2, PVT02 Modellering och Animering i Rhino 2D4138 Visualisering, datorgrafik och avancerad interaktion, (fovgrafik02), våren 2002 görs under andra kursveckan Labben går ut på att ni ska få en

Läs mer

Programmering för språkteknologer II, HT2014. evelina.andersson@lingfil.uu.se Rum 9-2035 http://stp.ling.uu.se/~evelina/uv/uv14/pst2/

Programmering för språkteknologer II, HT2014. evelina.andersson@lingfil.uu.se Rum 9-2035 http://stp.ling.uu.se/~evelina/uv/uv14/pst2/ Programmering för språkteknologer II, HT2014 Avancerad programmering för språkteknologer, HT2014 evelina.andersson@lingfil.uu.se Rum 9-2035 http://stp.ling.uu.se/~evelina/uv/uv14/pst2/ Idag - Hashtabeller

Läs mer

OOMPA 2D1359 Föreläsning 2

OOMPA 2D1359 Föreläsning 2 OOMPA 2D1359 Föreläsning 2 Objektorienterad Modellering Programmering och Analys Objektorientering grunder l Vad är OO? Programspråk?, paradigm?, gränssnitt?, struktur?, eller? l Termer och fundament Objekt,

Läs mer

State Examinations Commission

State Examinations Commission State Examinations Commission Marking schemes published by the State Examinations Commission are not intended to be standalone documents. They are an essential resource for examiners who receive training

Läs mer

tentaplugg.nu av studenter för studenter

tentaplugg.nu av studenter för studenter tentaplugg.nu av studenter för studenter Kurskod Kursnamn UU-76062 Inledande programmering i Java Datum 2014-07-13 Material Tentamen Kursexaminator Betygsgränser Tentamenspoäng G 30; VG 36 40 (VG) Övrig

Läs mer

Lehigh Valley Hospital Schuylkill Portal User Q&A

Lehigh Valley Hospital Schuylkill Portal User Q&A Lehigh Valley Hospital Schuylkill Portal User Q&A 1. How do I get assistance if I have difficulty accessing the portal or navigating the portal? 2. How do I save information on the portal for my personal

Läs mer

IRAB Mottagare sida 2-5 Tele Radio AB Mottagare sida 6

IRAB Mottagare sida 2-5 Tele Radio AB Mottagare sida 6 IRAB Mottagare sida -5 Tele Radio AB Mottagare sida 6 Installation of receiver type smd 700 4 RELAY FUNCTIONS / -4 VAC/DC PCB TYPE NO: LWEG 4L Rev: 95-09 Installation: Install the receivers in a protected

Läs mer

< THE SHELF SYSTEM FILLED WITH POSSIBILITIES. Design Anne Krook

< THE SHELF SYSTEM FILLED WITH POSSIBILITIES. Design Anne Krook Anne < THE SHELF SYSTEM FILLED WITH POSSIBILITIES Design Anne Krook beauty combination Anne är en hel serie hyllor vars grundidé bygger på en fyrkant som kan varieras i ett otal kombinationer. Frihängande

Läs mer

TDDC74 FÖRELÄSNING 9 ANDERS MÄRAK LEFFLER IDA/HCS

TDDC74 FÖRELÄSNING 9 ANDERS MÄRAK LEFFLER IDA/HCS TDDC74 FÖRELÄSNING 9 ANDERS MÄRAK LEFFLER IDA/HCS 180226 Idag (ADT), OOP i Racket, labb 5 2 Allmän info Duggan. Laboration 4 deadline. Planering framöver Muddy cards (nästa timme) 3 Lite repetition ADT

Läs mer

Alias 1.0 Rollbaserad inloggning

Alias 1.0 Rollbaserad inloggning Alias 1.0 Rollbaserad inloggning Alias 1.0 Rollbaserad inloggning Magnus Bergqvist Tekniskt Säljstöd Magnus.Bergqvist@msb.se 072-502 09 56 Alias 1.0 Rollbaserad inloggning Funktionen Förutsättningar Funktionen

Läs mer

Påminnelse: en datatyp för bilder. Programmering. En datatyp för bilder. Spegelbild. hh.se/db2004

Påminnelse: en datatyp för bilder. Programmering. En datatyp för bilder. Spegelbild. hh.se/db2004 Programmering hh.se/db2004 Föreläsning 10: Objektorienterad programmering - datatyper Verónica Gaspes www2.hh.se/staff/vero www2.hh.se/staff/vero/programmering Påminnelse: en datatyp för bilder Vad är

Läs mer

2.45GHz CF Card Reader User Manual. Version /09/15

2.45GHz CF Card Reader User Manual. Version /09/15 2.45GHz CF Card Reader User Manual Version 2.0 2008/09/15 Install SYRD245-CF Card Reader to PDA: 1. Explorer SYRD245-CF folder of SYRIS Xtive CD-ROM 2. Check your PDA OS (Mobile5 or PPC2003) NETCF V2 currently

Läs mer

Lösningsförslag. Programmeringsmetodik, KV: Java och OOP. 17 januari 2004

Lösningsförslag. Programmeringsmetodik, KV: Java och OOP. 17 januari 2004 Lösningsförslag Programmeringsmetodik, KV: Java och OOP 17 januari 2004 Examinator: Johan Karlsson Skrivtid: 9-15 Hjälpmedel: En av följande böcker: Barnes & Kölling: Objects First With Java a practical

Läs mer

Space Shooter. Projektrapport i kursen Avancerad C/C++ (DVA303) vid Mälardalens Högskola av Lars Lindqvist och Niklas Nolte

Space Shooter. Projektrapport i kursen Avancerad C/C++ (DVA303) vid Mälardalens Högskola av Lars Lindqvist och Niklas Nolte Space Shooter Projektrapport i kursen Avancerad C/C++ (DVA303) vid Mälardalens Högskola av Lars Lindqvist och Niklas Nolte Innehåll: Inledning 3 Metod 4 Utförande 5 Klassdiagram 5 Sprite och underklasser

Läs mer

Questionnaire for visa applicants Appendix A

Questionnaire for visa applicants Appendix A Questionnaire for visa applicants Appendix A Business Conference visit 1 Personal particulars Surname Date of birth (yr, mth, day) Given names (in full) 2 Your stay in Sweden A. Who took the initiative

Läs mer

KARL ANDERSSON & SÖNER

KARL ANDERSSON & SÖNER SHELL DESIGN NOTE 2015 Pallen Shell karakteriseras av de rena linjerna och spännande materialmöten som starkt förknippas med skandinavisk design. Shell har likt en stol, en tydlig riktning med en antydan

Läs mer

Introduktion till arv

Introduktion till arv Introduktion till arv 6 INTRODUKTION TILL ARV Arv Generell-Speciell Arv för att utnyttja det vi redan gjort Återanvändning Basklass Härledd klass Varför arv? Inför en subklass för att uttrycka specialisering

Läs mer

Arctic. Design by Rolf Fransson

Arctic. Design by Rolf Fransson Arctic Design by Rolf Fransson 2 Endless possibilities of combinations. Oändliga kombinationsmöjligheter. 3 4 5 If you are looking for a range of storage furniture which limits of combination is set by

Läs mer

Mekanik FK2002m. Kraft och rörelse II

Mekanik FK2002m. Kraft och rörelse II Mekanik FK2002m Föreläsning 5 Kraft och rörelse II 2013-09-06 Sara Strandberg SARA STRANDBERG P. 1 FÖRELÄSNING 5 Introduktion Vi har hittills behandlat ganska idealiserade problem, t.ex. system i avsaknad

Läs mer

Extentamen i 2D1359 Objektorinterad modellering programmering och analys Tisdag den 13 oktober 1998 kl

Extentamen i 2D1359 Objektorinterad modellering programmering och analys Tisdag den 13 oktober 1998 kl NADA, KTH OOMPA 998-0-3 Sid () Extentamen i 2D359 Objektorinterad modellering programmering och analys Tisdag den 3 oktober 998 kl. -3 MED KORTA LÖSNINGSFÖRSLAG I dom flesta fall finns också lösningarna

Läs mer

Styrteknik: Grundläggande logiska funktioner D2:1

Styrteknik: Grundläggande logiska funktioner D2:1 Styrteknik: Grundläggande logiska funktioner D2:1 Digitala kursmoment D1 Boolesk algebra D2 Grundläggande logiska funktioner D3 Binära tal, talsystem och koder Styrteknik: Grundläggande logiska funktioner

Läs mer

Multifunktions-Detector Multi detector

Multifunktions-Detector Multi detector Multifunktions-Detector Multi detector... 7 Numeric Display Low Battery Alert Wood Alternating Current Metal Sensor Range Metal Metal Object Sensor Range Alternating Current Battery Compartment Bar Graph-Display

Läs mer

Klassificering av brister från internaudit

Klassificering av brister från internaudit Klassificering av brister från internaudit Del-21G seminarium 2015 Jukka Salo Slou Klassificering av brister från internaudit Vid VK har det visat sig att Procedurer för klassificering av brister finns,

Läs mer

Examensarbete Introduk)on - Slutsatser Anne Håkansson annehak@kth.se Studierektor Examensarbeten ICT-skolan, KTH

Examensarbete Introduk)on - Slutsatser Anne Håkansson annehak@kth.se Studierektor Examensarbeten ICT-skolan, KTH Examensarbete Introduk)on - Slutsatser Anne Håkansson annehak@kth.se Studierektor Examensarbeten ICT-skolan, KTH 2016 Anne Håkansson All rights reserved. Svårt Harmonisera -> Introduktion, delar: Fråga/

Läs mer

SVENSK STANDARD SS-EN ISO 19108:2005/AC:2015

SVENSK STANDARD SS-EN ISO 19108:2005/AC:2015 SVENSK STANDARD SS-EN ISO 19108:2005/AC:2015 Fastställd/Approved: 2015-07-23 Publicerad/Published: 2016-05-24 Utgåva/Edition: 1 Språk/Language: engelska/english ICS: 35.240.70 Geografisk information Modell

Läs mer

Plats för projektsymbol. Nätverket för svensk Internet- Infrastruktur

Plats för projektsymbol. Nätverket för svensk Internet- Infrastruktur Nätverket för svensk Internet- Infrastruktur NSII Nätverket för Svensk Internet-Infrastruktur Medlemmar: FMV, Frobbit, Netnod, STUPI, SUNET och TU-Stiftelsen Vi har några av världens ledande experter inom

Läs mer

START STOP M EDIT M 0 0 0 04 05 06 07 08 09 0 4 5 6 7 8 9 0 4 5 6 7 8 9 0 4 5 6 7 8 9 40 4 4 4 44 45 46 47 48 49 50 5 5 5 54 55 56 57 58 59 60 6 6 6 64 65 66 67 68 69 70 7 7 7 74 75 76 77 78 79 80 8

Läs mer

TENTAMEN. Kurs: Objektorienterad programmeringsmetodik 5DV133 Ansvarig lärare: Anders Broberg. VT-13 Datum: 13-06-05 Tid: kl 16.00-20.

TENTAMEN. Kurs: Objektorienterad programmeringsmetodik 5DV133 Ansvarig lärare: Anders Broberg. VT-13 Datum: 13-06-05 Tid: kl 16.00-20. Umeå Universitet Datavetenskap Anders Broberg 130605 TENTAMEN Kurs: Objektorienterad programmeringsmetodik 5DV133 Ansvarig lärare: Anders Broberg VT-13 Datum: 13-06-05 Tid: kl 16.00-20.00 Namn: Personnummer:

Läs mer

En bild säger mer än tusen ord?

En bild säger mer än tusen ord? Faculteit Letteren en Wijsbegeerte Academiejaar 2009-2010 En bild säger mer än tusen ord? En studie om dialogen mellan illustrationer och text i Tiina Nunnallys engelska översättning av Pippi Långstrump

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? jonas.kvarnstrom@liu.se 2015 2014 jonas.kvarnstrom@liu.se

Läs mer

Certifikat. Detta certifikat intygar att. Moelven Årjäng Såg AB

Certifikat. Detta certifikat intygar att. Moelven Årjäng Såg AB Certifikat Detta certifikat intygar att Moelven Årjäng Såg AB Adress: Kyrkerudsvägen 3, 672 23 Årjäng, Sverige Ingår som del i certifikatet för Moelven Skog AB har granskats av Intertek och är i överensstämmelse

Läs mer

Problem som kan uppkomma vid registrering av ansökan

Problem som kan uppkomma vid registrering av ansökan Problem som kan uppkomma vid registrering av ansökan Om du har problem med din ansökan och inte kommer vidare kan det bero på det som anges nedan - kolla gärna igenom detta i första hand. Problem vid registrering

Läs mer

Objektorienterad programmering

Objektorienterad programmering Objektorienterad programmering Föreläsning 19 Copyright Mahmud Al Hakim mahmud@dynamicos.se www.webbacademy.se Agenda Konstruktion av egna grafiska komponenter Kontsruktion av egen komponent Att rita upp

Läs mer

Quicksort. Koffman & Wolfgang kapitel 8, avsnitt 9

Quicksort. Koffman & Wolfgang kapitel 8, avsnitt 9 Quicksort Koffman & Wolfgang kapitel 8, avsnitt 9 1 Quicksort Quicksort väljer ett spcifikt värde (kallat pivot), och delar upp resten av fältet i två delar: alla element som är pivot läggs i vänstra delen

Läs mer

säkerhetsutrustning / SAFETY EQUIPMENT

säkerhetsutrustning / SAFETY EQUIPMENT säkerhetsutrustning / SAFETY EQUIPMENT Hastighetsvakt / Speed monitor Kellves hastighetsvakter används för att stoppa bandtransportören när dess hastighet sjunker under beräknade minimihastigheten. Kellve

Läs mer

Ändringar i språkfiler i e-line 3.42A

Ändringar i språkfiler i e-line 3.42A Ändringar i språkfiler i e-line 3.42A Gäller Pyramidversion 3.42A till och med 3.42Asp06 (2015-12-16) Förändringar och nyheter i standard språkfiler I det här dokumentet förklaras de ändringar som gjorts

Läs mer

Träd, binära träd och sökträd. Koffman & Wolfgang kapitel 6, avsnitt 1 4

Träd, binära träd och sökträd. Koffman & Wolfgang kapitel 6, avsnitt 1 4 Träd, binära träd och sökträd Koffman & Wolfgang kapitel 6, avsnitt 1 4 1 Träd Träd är ickelinjära och hierarkiska: i motsats till listor och fält en trädnod kan ha flera efterföljare ( barn ) men bara

Läs mer

Objektorienterad Programmering (OOP) Murach s: kap 12-16

Objektorienterad Programmering (OOP) Murach s: kap 12-16 Objektorienterad Programmering (OOP) Murach s: kap 12-16 2013-01-28 1 Winstrand Development Objektorienterad Programmering Förkortas OOP Objektorientering innebär att man delar in koden i olika block,

Läs mer

Introduktion. Lagom är bäst. OO eller ej? TDP004 Objektorienterad Programmering Fö 7 Objektorienterad design, tips och råd

Introduktion. Lagom är bäst. OO eller ej? TDP004 Objektorienterad Programmering Fö 7 Objektorienterad design, tips och råd Introduktion TDP004 Objektorienterad Programmering Fö 7 Objektorienterad design, tips och råd Vi har diskuterat vilka möjligheter till OO som erbjuds i C++. Vilka vill vi använda och varför? Allt har användningsområden

Läs mer

LÄNKHJUL S3. Monteringsanvisning för: Länkhjul S3

LÄNKHJUL S3. Monteringsanvisning för: Länkhjul S3 MONTERINGSANVISNING LÄNKHJUL S3 Art.no. 8822117 Rev.2018-01 Link to english Monteringsanvisning för: Länkhjul S3 art.nr. 2002010 Länkhjul S3 90 mm art.nr. 2002020 Länkhjul S3 120 mm art.nr. 2002030 Länkhjul

Läs mer

Programmering A. Johan Eliasson johane@cs.umu.se

Programmering A. Johan Eliasson johane@cs.umu.se Programmering A Johan Eliasson johane@cs.umu.se 1 Jag Undervisar mest grundläggande programmering på Institutionen för datavetensakap Applikationsutveckling för iphone Applikationsutveckling i Java Datastrukturer

Läs mer

Scratch Junior. makeandshape.com. by MIT. Gränssnitt Scratch Junior

Scratch Junior. makeandshape.com. by MIT. Gränssnitt Scratch Junior Scratch Junior by MIT Gränssnitt Scratch Junior 1. Spara 2. Scen 3. Presentationsläge (fullskärm) 4. Rutnät 5. Byt bakgrund 6. Lägg till text 7. Återställ figur (till sin ursprungliga position) 8. Grön

Läs mer

Mekanik FK2002m. Kraft och rörelse I

Mekanik FK2002m. Kraft och rörelse I Mekanik FK2002m Föreläsning 4 Kraft och rörelse I 2013-09-05 Sara Strandberg SARA STRANDBERG P. 1 FÖRELÄSNING 4 Introduktion Hastighet Langt under 3x10 8 Nara : 3x10 8 Storlek 10 9 Langt over : 10 9 Klassisk

Läs mer

IMPORTANT! RETAIN FOR FUTURE REFERENCE PLEASE READ CAREFULLY VIKTIGT! BEHÅLL FÖR FRAMTIDA REFERENS LÄS IGENOM INSTRUKTIONSMANUALEN

IMPORTANT! RETAIN FOR FUTURE REFERENCE PLEASE READ CAREFULLY VIKTIGT! BEHÅLL FÖR FRAMTIDA REFERENS LÄS IGENOM INSTRUKTIONSMANUALEN Heart & Stripes Junior Bed Instructions Manual Instruktions Manual IMPORTANT! RETAIN FOR FUTURE REFERENCE PLEASE READ CAREFULLY VIKTIGT! BEHÅLL FÖR FRAMTIDA REFERENS LÄS IGENOM INSTRUKTIONSMANUALEN Thank

Läs mer

Observer Pattern och MVC. Objekt-orienterad programmering och design Alex Gerdes, 2016

Observer Pattern och MVC. Objekt-orienterad programmering och design Alex Gerdes, 2016 Observer Pattern och MVC Objekt-orienterad programmering och design Alex Gerdes, 2016 Model View Controller Model View Controller (MVC) är ett design pattern (architectural pattern) som är väldigt vanligt

Läs mer

Mutability och State. Objekt-orienterad programmering och design (DIT953) Niklas Broberg / Johannes Åman Pohjola, 2018

Mutability och State. Objekt-orienterad programmering och design (DIT953) Niklas Broberg / Johannes Åman Pohjola, 2018 Mutability och State Objekt-orienterad programmering och design (DIT953) Niklas Broberg / Johannes Åman Pohjola, 2018 Immutability Ett icke muterbart (immutable) objekt är ett objekt vars tillstånd inte

Läs mer

Västsvenska paketet Skattning av trafikarbete

Västsvenska paketet Skattning av trafikarbete Västsvenska paketet Skattning av trafikarbete Rapport Dokumenttitel: Skattning av trafikarbete Västsvenska paketet rapport Utförande part: WSP Kontaktperson: Tobias Thorsson Innehåll 1 Introduktion Fel!

Läs mer

Principles of subclasses. Objekt-orienterad programmering och design Alex Gerdes, 2018

Principles of subclasses. Objekt-orienterad programmering och design Alex Gerdes, 2018 Principles of subclasses Objekt-orienterad programmering och design Alex Gerdes, 2018 Implementation inheritance Subclassing, eller implementation inheritance (implementationsarv), ger oss två fördelar:

Läs mer

Rev No. Magnetic gripper 3

Rev No. Magnetic gripper 3 Magnetic gripper 1 Magnetic gripper 2 Magnetic gripper 3 Magnetic gripper 4 Pneumatic switchable permanent magnet. A customized gripper designed to handle large objects in/out of press break/laser cutting

Läs mer