HT1 2013, FÖRELÄSNING 14 (INFÖR TENTAN)

Relevanta dokument
Objektorienterad modellering och diskreta strukturer (EDAF10/EDA061)

HT1 2015, FÖRELÄSNING 14 (INFÖR TENTAN)

Computer projekttid. Objektorienterad modellering och diskreta strukturer / design. Rapporter från verkligheten. EDAF10 i HT2

Information. Computer

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

Kursombud. Objektorienterad modellering och diskreta strukturer / design. Agile? Designprinciper EDAF10 EDA061. Lennart Andersson. Grupper för projekt

HT1 2015, FÖRELÄSNING

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

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

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

EDAF10: Objektorienterad modellering och diskreta strukturer EDA061: Objektorienterad modellering och design. Vad är Objektorienterad modellering?

EDAF10: Objektorienterad modellering och diskreta strukturer EDA061: Objektorienterad modellering och design

EDAF10: Objektorienterad modellering och diskreta strukturer EDA061: Objektorienterad modellering och design

Objekt-orienterad programmering och design. DIT953 Niklas Broberg, 2018

EDAF10: Objektorienterad modellering och diskreta strukturer. EDA061: Objektorienterad modellering och design. Diskreta strukturer.

Föreläsningsbilder EDAF10/EDA061 Ht 2015 HT1 2015, FÖRELÄSNING 3

Tentamen i Objektorienterad modellering och diskreta strukturer

Tentamen i Objektorienterad modellering och design Helsingborg

Sammanfattning och Tentamensinfo Objekt-orienterad programmering och design (DIT953) Niklas Broberg, 2018

Tentamen i Objektorienterad modellering och diskreta strukturer

Objekt-orienterad Programmering och Design. TDA551 Alex Gerdes, HT-2016

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

Objekt-orienterad Programmering och Design. TDA552 Alex Gerdes, HT-2018

Kursstruktur. Objektorienterad modellering och diskreta strukturer / design. Programmering utan OMD. Vad är Objektorienterad modellering?

Förra föreläsningen. Dagens agenda. Dagens agenda. Föreläsningsbilder EDAF10/EDA Ulf Asklund, Datavetenskap/LTH 1

Tentamen i Objektorienterad modellering och design

Integritetsprincipen. Objektorienterad modellering och diskreta strukturer / design

Seminarierna Instruktioner. Övningarna Viktiga relationer

Förra föreläsningen. Dagens agenda. Command Objektorienterad modellering och diskreta strukturer (EDAF10/EDA061)

Tentamen i Objektorienterad modellering och design Helsingborg

SOLID är en akronym för fem stycken designprinciper som används vid mjukvaruutveckling. SOLID står för:

Objektorienterad programmering, analys och design med Java, 5p 2D4135, vt Kursprogram

Undantag, Sammanfattning och Tentamensinfo. Objekt-orienterad programmering och design Alex Gerdes, 2016

Tentamen. DD2385 Programutvecklingsteknik vt 2013 Onsdagen den 22 maj 2013 kl Hjälpmedel: penna, suddgummi, linjal

4.7 Observatörsmönstret

Hisspresentation av programdesign Projektplan: Kommunikation i teknisk utbildning,

Lösningar till tentamen i EDAF25

Tentamen i Objektorienterad modellering och diskreta strukturer

Lösningsförslag till tentamen i EDAF25 Objektorienterad modellering och design Helsingborg

Kursstruktur. Objektorienterad modellering och diskreta strukturer / design. Vad är Objektorienterad modellering? Programmering utan OMD

Förra föreläsningen. Dagens agenda. Jojo-kort med två strategier Objektorienterad modellering och diskreta strukturer (EDAF10/EDA061)

Objektorienterad programmering, analys och design med Java, 5p 2D4135, vt Kursprogram

LÖSNINGSFÖRSLAG. Tentamen. Objektorienterad modellering och design. EDA665, 4 poäng

Laborationer, moment 4 5

Föreläsning 15: Repetition DVGA02

Design Patterns. Objekt-orienterad programmering och design Alex Gerdes, 2016

Objektorienterad modellering och diskreta strukturer (EDAF10/EDA061)

TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 11 Jonas Lindgren, Institutionen för Datavetenskap, LiU

Lösningar till tentamen i EDAF25

Föreläsning 17 UTBLICK: FORTSÄTTNINGSKURSER I DATAVETENSKAP + ANDROID

Objekt, klasser. Tillstånd Signatur Kommunikation Typ. Fält, parametrar och lokala variabler. Konstruktorer Metoder DAVA15

HT1 2013, FÖRELÄSNING

Förra föreläsningen. Dagens agenda. Jojo-kort med två strategier Objektorienterad modellering och diskreta strukturer (EDAF10/EDA061)

Laborationer, moment 4 5

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

Designmönster/Design patterns

Föreläsning 13 Innehåll

Instuderingsuppgifter läsvecka 2

Grammatik. BNF-grammatik

Föreläsning 1, vecka 6: Abstraktion genom objektorientering

HT1 2013, FÖRELÄSNING 6

Static vs Dynamic binding Polymorfism. Objekt-orienterad programmering och design (DIT953) Niklas Broberg, 2018

Förra föreläsningen. Alternativ kurslitteratur. Dagens agenda Objektorienterad modellering och diskreta strukturer (EDAF10/EDA061)

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

Objektorienterad Programkonstruktion. Föreläsning jan 2016

Static vs Dynamic binding Polymorfism. Objekt-orienterad programmering och design Alex Gerdes, 2016

Introduktion. Byggstenar TDBA

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

Laboration 2: Designmönster

Tentamen. DD2385 Programutvecklingsteknik vt 2015 Fredagen den 5 juni 2015 kl Hjälpmedel: penna, suddgummi, linjal

Objektorienterad Systemutveckling Period 3

HT1 2015, FÖRELÄSNING

Laboration 2: Designmönster

Dependencies High cohesion, low coupling. Objekt-orienterad programmering och design (DIT953) Niklas Broberg, 2018

Dependencies High cohesion, low coupling. Objekt-orienterad programmering och design Alex Gerdes, 2018

UML 1(5) Introduktion till Unified Modeling Language. 1 Bakgrund och historik

Övning 5. TDA550 - Objektorienterad programvaruutveckling, fk

Kursplanering Objektorienterad programmering

Tentamen. DD2385 Programutvecklingsteknik vt Tisdag 7 juni 2016 kl

Kurs-PM fo r HI1027, Objektorienterad programmering, period 1 HT15

Lösningar till Fiktiv Tentamen på kursen. 2D4135 Objektorienterad programmering, design och analys med Java vt2004. Teoridel

Teoridel (svaren direkt på lydelsen)

TENTAMEN PROGRAMMERING I JAVA, 5P SOMMARUNIVERSITETET

Objektorienterad Programkonstruktion, DD1346. Tentamen , kl

TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 2 Jonas Lindgren, Institutionen för Datavetenskap, LiU

Principer, Pa+erns och Tekniker. Objekt-orienterad programmering och design Alex Gerdes, 2018

Tentamen NOA011 Systemarkitektprogrammet

Designmönster. Kapitel Kommandomönstret

Principer, Patterns och Tekniker. Objekt-orienterad programmering och design (DIT953) Niklas Broberg / Johannes Åman Pohjola, 2018

Principer, Patterns och Tekniker. Objekt-orienterad programmering och design (DIT952) Niklas Broberg, 2016

EDAA01 Programmeringsteknik - fördjupningskurs

Översikt. Programmering tillämpningar och datastrukturer. Vad kursen täcker. Lärare. Rekommenderad litteratur. Kursmål 729G58 (HKGBB7)

HT1 2013, FÖRELÄSNING 5

TENTAMEN PROGRAMMERINGSMETODIK MOMENT 2 - JAVA, 4P

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

Design Patterns Objekt-orienterad programmering och design (DIT952) Niklas Broberg, 2017

Tentamen i EDAF oktober Skrivtid: Skriv bara på ena sidan av pappret tentorna kommer att scannas in, och endast framsidorna rättas.

Design Patterns. Objekt-orienterad programmering och design Alex Gerdes, 2018

Arv och polymorfism i Java

Objektorienterad Programmering (TDDC77)

Transkript:

Objektorienterad modellering och diskreta strukturer (EDAF10/EDA061) HT1 2013, FÖRELÄSNING 14 (INFÖR TENTAN) Dagens agenda Admin Tentatid och plats Tillåtet på tentan EDAF10 Föreläsning inför XL-projektet Uppsamlingslaboration Repetition Kursens syfte & mål Principer Mönster UML EDAF10/EDA061 HT2013, Ulf Asklund 1

Tentamenslokal Tentamen är torsdagen den 24 oktober kl 8.00 EDAF10 i Vic: 1A-C EDA061 i Vic: 1D Tillåten litteratur på tentamen På tentamen får medföras Martin, PPP Föreläsningsbilder F01-06.pdf Andersson, UML Java snabbreferens Andersson, Diskreta strukturer [EDAF10] Sedvanliga anteckningar är OK. Information kopierad från andra dokument får inte förekomma. EDAF10/EDA061 HT2013, Ulf Asklund 2

XL Introduktion till XL-projektet måndag den 28 oktober kl. 15 Skapa grupper och anmäl redovisningstid via SAM. Redovisning 1 i v45 Redovisning 2 i v46 Kursens syfte Kursen ger förmåga till hållbar och resursmedveten utveckling av program som kan återanvändas och modifieras med hänsyn till förändrade krav i ett industriellt sammanhang. Du skall bli en tillgång och inte belastning i din första anställning. EDAF10/EDA061 HT2013, Ulf Asklund 3

Kursens mål Efter genomgången kurs ska studenten kunna lokalisera och känna igen användning av gängse designprinciper och designmönster i givna program, utforma och implementera objektorienterade program med många klasser och några paket, välja och implementera lämpliga designmönster i typiska problem, använda centrala delar av en integrerad utvecklingsmiljö för design, implementering och omstrukturering av program, beskriva programdesign med UML (Unified Modeling Language), utvärdera en programdesign med avseende på designprinciper samt skriva program som är lätta att förstå för den som behöver göra modifieringar. Designprinciper Lokalitetsprincipen Single Responsibilty Principle Open/Closed Principle Dependency Inversion Principle (Abtraktionsprincipen) Integritetsprincipen Liskov Substitution Principle Interface Segregation Principle EDAF10/EDA061 HT2013, Ulf Asklund 4

DIP Bero på abstraktion Dependency Inversion Principle High level classes should not depend on low level classes; both should depend on abstractions. Abstractions should not depend on details. Details should depend on abstractions. UML-pilar skall gå mot gränssnitt och abstrakta klasser. Dependency Inversion EDAF10/EDA061 HT2013, Ulf Asklund 5

Designmönster Command [Computer] Composite [XL, lab 2] Template Method [Computer, lab 2] Strategy [Computer, XL] Decorator [Övning 2] Singleton Null Object Observer [XL] Factory Method [XL, lab 4] Interpretor [Computer] Command EDAF10/EDA061 HT2013, Ulf Asklund 6

Kompositmönstret (Composite) Ni kommer ihåg Comand Nu med Composite EDAF10/EDA061 HT2013, Ulf Asklund 7

Expr har Composite-struktur Strategy EDAF10/EDA061 HT2013, Ulf Asklund 8

Decorator-mönstret i Reader-klasserna reader = new BufferedReader(new FileReader(fileName)); public class BufferedReader extends Reader { private Reader in; // omissions } Factory Method SomeApp <<interface>> Shape Square Circle <<creates>> SomeApp har endast beroende till gränssnittet Shape SomeApp skapar objekt av Square och Circle och blir även beroende till konkreta klasserna Square och Circle. EDAF10/EDA061 HT2013, Ulf Asklund 9

Factory Method SomeApp <<interface>> Shape Factory + makesquare():shape + makecircle():shape <<interface>> Shape ShapeFactory Implementation Square Circle <<creates>> Factory Method tar bort beroendet till de konkreta klasserna UML: objekt- och sekvensdiagram EDAF10/EDA061 HT2013, Ulf Asklund 10

Objektdiagram Objektdiagram (1 + 2) + 3 EDAF10/EDA061 HT2013, Ulf Asklund 11

Sekvensdiagram Om du vill lära dig mer EDA270 Programvaruutveckling i grupp projekt, fokus på utvecklingsprocessen XP med rika tillfällen att göra design. EDA180 Kompilatorteknik, mycket modellering, aspektorienterad programmering. EDAN40 Funktionsprogrammering, en annan paradigm. EDAN01 Constraint programming, ytterligare en paradigm. EDA031 C++ programmering, för den som vill lära sig ett programspråk för objektorienterad modellering från 1970- talet (och som fortfarande används). EDAF10/EDA061 HT2013, Ulf Asklund 12