Lek$on 4: Kunskapsrepresenta$on. Robin Keskisärkkä och Jonas Rybing

Storlek: px
Starta visningen från sidan:

Download "Lek$on 4: Kunskapsrepresenta$on. Robin Keskisärkkä och Jonas Rybing"

Transkript

1 Lek$on 4: Kunskapsrepresenta$on Robin Keskisärkkä och Jonas Rybing

2 Översikt Laborationerna så här långt Genomgång av Laboration 4 Uppgift Förberedelser Kunskapsrepresentation Framesteori

3 Uppgi= Implementera ett frames-system Frames-struktur Ärvning Procedural attachments Diskussionsuppgift För VG: Utöka ert system till att stödja multipelt arv

4 Förberedelser Läs igenom laborationsinstruktionerna Läs om kunskapsrepresentation i R&N (kap. 12) Fokus på frames (kap. 12.5) Förstå frames-strukturen Bestäm domän att representera

5 Kunskapsrepresenta$on Viktigt inom många områden Robotik Expertsystem Semantic Web Representationstyper Representationsformat Labb 4 fokuserar på frames-system

6 Frames- system Används för att spara information hierarkiskt Frame-instanser representerar koncept eller objekt Information sparas som attributvärden Attribut hämtas och lagras på olika sätt Ärvning/inte ärvning Ersätt/lägg till Attributvärden kan Vara enkla eller sammansatta värden (strängar, tuplar, listor, etc.) Räknas ut via procedural attachments

7 Exempel Djur Fågel Kräldjur Amfibie Uggla Struts Krokodil Groda Padda Fjälluggla Molybdophanes Trevor Hedwig Ø Fåglar kan flyga ger ar Hedwig kan flyga. Ø Strutsar kan inte flyga ger ar Molybdophanes inte kan flyga Ø Det finns fem arter av struts. Det finns inte fem arter av Molybdophanes.

8 Huvudfunk$onalitet Lagra information om ramar och attribut store_frame store_attribute Lagra värden för attribut tell Fråga efter värden på attribut ask

9 KodskeleR Innehåller tre klasser Frame KnowledgeBase FrameSystem Användaren interagerar endast med systemet via fyra metoder som finns i FrameSystem OBS: I en version av skelettet låg procedural attachment-metoden i KnowledgeBase. Den ska egentligen ligga utanför klassen som en funktion!

10 KodskeleR: Arkitektur FrameSystem store_frame store_attribute ask tell local inherit add replace KnowledgeBase add_attribute add_frame get_attribute_methods get_frame * Frame add_attribute_value replace_attribute_value get_attribute_value get_isa

11 Komma igång Hur samverkar klasserna? Vad gör de andra metoderna? Klurigheter I vilken ordning bör jag implementera mina metoder? Hur kontrollerar man att en metod fungerar när den är beroende av att andra redan finns implementerade? Hur hanterar man fel på bästa sätt?

12 Hur samverkar klasserna? Användaren kommunicerar bara med FrameSystem Kunskapsbasen lagrar både frames och attribut Utnyttjas av FrameSystem för att hämta frames och för att hantera atttribut på rätt sätt Information om hur ett attribut fungerar är inte samma sak som ett attributvärde Frame-instanser sparar information om ett visst koncept/objekt Innehåller metoder för att hämta och spara attributvärden Håller reda på föräldrarelationen (ISA)

13 Vad gör de andra metoderna? Både tell och ask kan utföras på två sätt. Vilken metod som väljs beror på attributet i fråga. Tell Ask replace Ersätt redan existerande värde add Lägg till ytterligare ett värde local Om inte värdet finns i denna frame så ge upp inherit Om inte värdet finns i denna frame så fråga föräldern Övriga metoder finns för att underlätta kommunikation mellan klasserna. Dessutom underlättar de felhanteringen.

14 Förslag på implementa$onsordning 1. Skapa och lagra frames för er domän 2. Specificera tillåtna attribut för er domän 3. Lagra värden på attribut Börja med replace och därefter add 4. Hämta värden på attribut Börja med lokala värden och fortsätt därefter med ärvning 5. Implementera er procedural attachment Exekvera metoden innan värdet returneras till användaren 6. Lägg till felhantering Förutse vilka fel som kan uppstå. Vad returneras och vad skrivs ut? Använd inte try-except

15 Hur kontrollerar man ar en metod fungerar? Användaren interagerar bara med frame-systemet via endast fyra metoder Men utvecklare kan komma åt klassattribut och metoder! Exempel: Kontrollera om store_frame fungerar: Skriv ut klassattributet i kunskapsbasen som håller reda på frames Kontrollera om klassen Frame fungerar: Skapa en frame utanför systemet och kontrollera att klassen fungerar som förväntat

16 Hur hanterar man fel på bästa sär? Förutspå fel Anta att användaren kommer att stava fel Anta att användaren kommer att göra saker i fel ordning Försök att hantera fel på så få ställen som möjligt Felutskrifter är bra för människor men inte maskiner. Returnera något om det blir fel så att andra saker som är beroende kan bli meddelade om att något gått snett. Syntaxfel behöver inte hanteras

17 Frame- system och Seman$c Web Semantic Web bygger på frame-system Attributvärden kan vara Enkla värden (text, siffror) Frames Referenserna/nycklarna till frames

18 Välja domän Bestäm er för en domän att representera i frame-systemet Domänen ska vara lämplig att representera hierarkiskt Några förslag på domäner: Böcker, växter, fordon, mat, dryck, djur, geografisk information Definiera lämpliga attribut Vilka kan ärvas och vilka ka inte ärvas? För vilka attribut tillåts flera värden? Rita upp er domän som ett klass- eller UML-diagram Fundera över en procedural attachment. Metoden ska bidra till framesystemet på något sätt!

19 Live- kodning Kolla in skelettet Visa förväntad output Visa hur metoder kan sparas i variabler och exeveras

20

Lek$on 3: Kunskapsrepresenta$on. Robin Keskisärkkä

Lek$on 3: Kunskapsrepresenta$on. Robin Keskisärkkä Lek$on 3: Kunskapsrepresenta$on Robin Keskisärkkä Översikt Laborationerna så här långt Genomgång av laboration 3 Uppgift Förberedelser Kunskapsrepresentation Framesteori Uppgi9 Implementera ett frames-system

Läs mer

Artificiell Intelligens Lektion 4

Artificiell Intelligens Lektion 4 Frames Filmdomän Artificiell Intelligens Lektion 4 Frames (Lab4) Resolution & unifiering Frames system Lagrar hierarkisk information Attribut lagras i attributvärdesstrukturer Attribut kan ha egenskaper

Läs mer

DD1311 Programmeringsteknik för S1 Laborationer läsåret 2007-2008

DD1311 Programmeringsteknik för S1 Laborationer läsåret 2007-2008 DD1311 meringsteknik för S1 Laborationer läsåret 2007-2008 Fyll i ditt namn och personnummer med bläck eller motsvarande. Kursledare är Linda Kann, linda@nada.kth.se. Namn... Personnr... Laborationer Labb

Läs mer

729G06 Föreläsning 1 Objektorienterad programmering

729G06 Föreläsning 1 Objektorienterad programmering Översikt Formalia Vad är objektorienterad programmering 729G06 Föreläsning 1 Objektorienterad programmering Definieria klasser Skapa och använda objekt Annika Silvervarg Ciltab, IDA, Linköpings universitet

Läs mer

Lektion G43 Artificiell intelligens. Robin Keskisärkkä Ellinor Ihs Håkansson Cornelia Böhm

Lektion G43 Artificiell intelligens. Robin Keskisärkkä Ellinor Ihs Håkansson Cornelia Böhm Lektion 1 729G43 Artificiell intelligens Robin Keskisärkkä Ellinor Ihs Håkansson Cornelia Böhm Dagens lektion Kort om laborationsserien Introduktion till laboration 1 Live-kodning Börja arbeta med laboration

Läs mer

Karlstads Universitet, Datavetenskap 1

Karlstads Universitet, Datavetenskap 1 2003-01-20 DAV B04 - Databasteknik 2003-01-20 KaU - Datavetenskap - DAV B04 - MGö 26 Relationsmodellen En formell teori som baserar sig på (främst) mängdlära predikatlogik Föreslogs av E.F Codd 1970 i

Läs mer

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

Översikt. Programmering tillämpningar och datastrukturer. Vad kursen täcker. Lärare. Rekommenderad litteratur. Kursmål 729G58 (HKGBB7) Översikt Programmering tillämpningar och datastrukturer 729G58 (HKGBB7) Kursinformation Objektorienterad programmering: Klasser och objekt Arv Polymorfism Metoder Programexempel Programmering tillämpningar

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

Att referera till objekt

Att referera till objekt Att referera till objekt En algoritm för generering av refererande uttryck 729G43: Artificiell intelligens Examinator: Arne Jönsson 2 Innehållsförteckning 1. Inledning... 4 1.1 Bakgrund... 4 1.2 Syfte...

Läs mer

Vill du vara med från starten, rulla då ner till slutet av dokumentet. Nya inlägg alltid först.

Vill du vara med från starten, rulla då ner till slutet av dokumentet. Nya inlägg alltid först. Uppdaterad Vill du vara med från starten, rulla då ner till slutet av dokumentet. Nya inlägg alltid först. Måndag v 43 Masken Pelle Jöns Nyfikna på maskar Tisdag v 42 Starten v 42 Syfte Masken Pelle Jöns

Läs mer

UML. Översikt UML. Relationer mellan klasser. A är ett aggregerat av B:n. Kontor aggregat av Enheter. 12 olika diagramtyper, bl.a.

UML. Översikt UML. Relationer mellan klasser. A är ett aggregerat av B:n. Kontor aggregat av Enheter. 12 olika diagramtyper, bl.a. Översikt UML Sekvensdiagram (dynamic structure) Informationsflöde genom programmet Användningsfall (use cases) Aktörers interaktion med systemet Paketdiagram Beroenden mellan paket abstrakta klasser Multipel

Läs mer

Översikt. Installation av EasyPHP 1. Ladda ner från http://www.easyphp.org/ Jag använder Release 5.3.4.0 2. Installera EasyPHP.

Översikt. Installation av EasyPHP 1. Ladda ner från http://www.easyphp.org/ Jag använder Release 5.3.4.0 2. Installera EasyPHP. Laboration 1 Översikt 1. Att komma igång med laborationsmiljön a. installera Aptana Studio 3 b. Installera EasyPHP 2. Testa lite programmering a. Testa enkla uppgifter b. Testa automatiskt 3. Skapa inloggningsformulär

Läs mer

Lektion 2: Sökagenter. Robin Keskisärkkä

Lektion 2: Sökagenter. Robin Keskisärkkä Lektion 2: Sökagenter Robin Keskisärkkä Lektionens innehåll Introduktion till laboration 2 Implementation av en sökalgoritm Livekodning Konfrontera ett liknande problem själva Extra: Heuristisk sökning

Läs mer

Dagens Agenda. Klient- och Serveroperativsystem Installation av Windows Server Genomgång av Windows Server Roller och Funktioner Domänhantering DNS

Dagens Agenda. Klient- och Serveroperativsystem Installation av Windows Server Genomgång av Windows Server Roller och Funktioner Domänhantering DNS Dagens Agenda Klient- och Serveroperativsystem Installation av Windows Server Genomgång av Windows Server Roller och Funktioner Domänhantering DNS Observera Anteckna! Praktisk genomgång, inga direkta presentationer

Läs mer

TDDC74 Programmering: Abstraktion och modellering Dugga 3, kl 8 10, 7 april 2016

TDDC74 Programmering: Abstraktion och modellering Dugga 3, kl 8 10, 7 april 2016 TDDC74 Programmering: Abstraktion och modellering Dugga 3, kl 8 10, 7 april 2016 Läs alla frågorna först och bestäm dig för i vilken ordning du vill lösa uppgifterna. Uppgifterna är inte ordnade i någon

Läs mer

Vad är en databas? Databaser. Relationsdatabas. Vad är en databashanterare? Vad du ska lära dig: Ordlista

Vad är en databas? Databaser. Relationsdatabas. Vad är en databashanterare? Vad du ska lära dig: Ordlista Databaser Vad är en databas? Vad du ska lära dig: Använda UML för att modellera ett system Förstå hur modellen kan översättas till en relationsdatabas Använda SQL för att ställa frågor till databasen Använda

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

Lek$on 4: Planering. Robin Keskisärkkä

Lek$on 4: Planering. Robin Keskisärkkä Lek$on 4: Planering Robin Keskisärkkä Sy7e Få en känsla för möjligheter och begränsningar med planering Öva på att modellera planeringsproblem för en planerare Förberedelser Läs kapitel 11 i kursboken

Läs mer

OOP Objekt-orienterad programmering

OOP Objekt-orienterad programmering OOP F10:1 OOP Objekt-orienterad programmering Föreläsning 10 Mer om arv och klasshierarkier Interface Hierarkier - många nivåer OOP F10:2 Djur Rovdjur Hovdjur Fåglar Fiskar Björn Kattdjur Ko Lamm Hjort

Läs mer

OOP Tenta

OOP Tenta Stockholms universitet sid 1 OOP OOP Tenta 2012-01-14 10.00 15.00 Avser kurserna DSK1:OOP och GES:OOP Anvisningar Påbörja varje ny uppgift på nytt blad. Skriv endast på ena sidan av bladen. Skriv tydligt

Läs mer

Föreläsning 16 Arv. Jan Lönnberg 3.11.2011. T-106.1212 Grundkurs i programmering

Föreläsning 16 Arv. Jan Lönnberg 3.11.2011. T-106.1212 Grundkurs i programmering Föreläsning 16 Arv Grundkurs i programmering Jan Lönnberg Institutionen för datateknik -universitetets högskola för teknikvetenskaper 3.11.2011 Varför? I ett studieregister har vi både studenter och lärare.

Läs mer

Andra relationella språk

Andra relationella språk Andra relationella språk Kapitel 5 Andra relationella språk sid Tupelrelationskalkyl 1 Domänrelationskalkyl 6 Query-by-Example (QBE) 8 Andra relationella språk, tupelrelationskalkyl 5-1 Tupelrelationskalkyl

Läs mer

Vad behövs för att skapa en tillståndsrymd?

Vad behövs för att skapa en tillståndsrymd? OBS! För flervalsfrågorna gäller att ett, flera eller inget alternativ kan vara korrekt. På flervarlsfrågorna ges 1 poäng för korrekt svar och 0,5 poäng om skillnaden mellan antalet korrekta svar och antalet

Läs mer

ANVÄNDAR HANDLEDNING FÖR ADVITUMS KUNDPORTAL

ANVÄNDAR HANDLEDNING FÖR ADVITUMS KUNDPORTAL ANVÄNDAR HANDLEDNING FÖR ADVITUMS KUNDPORTAL Utfärdad av: Markus Persson Version: 1.1 Datum: 2013-05-31 Innehållsförteckning Område Dokumenttyp Ver.1.1 Advitum Innehållsförteckning... 2 Allmänt... 3 Varfö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

TDDD78 Objektorientering i Java, del 2

TDDD78 Objektorientering i Java, del 2 TDDD78 Objektorientering i Java, del 2 Objektvariabler är pekare vad är det? Hur används pekare för att sätta samman objekt (composition)? Hur används hierarkier för att modellera nära relaterade typer?

Läs mer

Skriftlig tentamen i kurserna TDDD12 och TDDB48 Databasteknik 2008-08-11 kl. 14 18

Skriftlig tentamen i kurserna TDDD12 och TDDB48 Databasteknik 2008-08-11 kl. 14 18 LiTH, Tekniska högskolan vid Linköpings universitet 1(5) IDA, Institutionen för datavetenskap Juha Takkinen Skriftlig tentamen i kurserna TDDD12 och TDDB48 Databasteknik 2008-08-11 kl. 14 18 Lokal T2 och

Läs mer

Design och konstruktion av grafiska gränssnitt

Design och konstruktion av grafiska gränssnitt Design och konstruktion av grafiska gränssnitt Peter Börjesson Interaktionsdesign Tillämpad informationsteknologi Chalmers/GU Idag Kort kursinfo Lab info Föreläsning - Vad utmärker ett bra användargränssnitt?

Läs mer

Relationsmodellen. Relations modellen är idag den mest änvända datamodellen för kommersiella

Relationsmodellen. Relations modellen är idag den mest änvända datamodellen för kommersiella Relationsmodellen 2-1 Relationsmodellen Relations modellen är idag den mest änvända datamodellen för kommersiella applikationer. Relationsdatabasstruktur En relationsdatabas består av en samling tabeller,

Läs mer

DD1311 Programmeringsteknik för CL1 Laborationer läsåret 2008-2009

DD1311 Programmeringsteknik för CL1 Laborationer läsåret 2008-2009 DD1311 Programmeringsteknik för CL1 Laborationer läsåret 2008-2009 Fyll i ditt namn och personnummer med bläck eller motsvarande. Kursledare är Linda Kann, linda@nada.kth.se. Namn... Personnr... Laborationer

Läs mer

Statistik över heltal

Statistik över heltal Övningsuppgift Statistik över heltal Steg 2 Författare: Mats Loock Kurs: Inledande programmering med C# Kurskod:1DV402 Upphovsrätt för detta verk Detta verk är framtaget i anslutning till kursen Inledande

Läs mer

Uppgifter till tenta i 729G04 Programmering och diskret matematik. 17 december 2015, kl 14:00-18:00

Uppgifter till tenta i 729G04 Programmering och diskret matematik. 17 december 2015, kl 14:00-18:00 1 ( 7) Uppgifter till tenta i 729G04 Programmering och diskret matematik. 17 december 2015, kl 14:00-18:00 Tillåtna hjälpmedel: Dator, penna, papper, linjal, suddgummi, godkänd(a) bok/böcker/kompendier

Läs mer

Syfte : Lära sig objektorienterad programmering Syfte : Lära sig programmering i ett OO-språk vilket?

Syfte : Lära sig objektorienterad programmering Syfte : Lära sig programmering i ett OO-språk vilket? Jonas Kvarnström jonkv@ida.liu.se 2013 Syfte : Lära sig objektorienterad programmering Syfte : Lära sig programmering i ett OO-språk vilket? Rena OO-språk (allt är objekt) Scala, Smalltalk, Eiffel, Ruby,

Läs mer

Lär dig programmera! Prova på programmering med enkla exempel! Björn Regnell www.bjornregnell.se

Lär dig programmera! Prova på programmering med enkla exempel! Björn Regnell www.bjornregnell.se Lär dig programmera! Prova på programmering med enkla exempel! Björn Regnell www.bjornregnell.se Mål Så enkelt som möjligt: låg tröskel Ett riktigt programmeringsspråk: inget tak Roliga uppgifter som går

Läs mer

Facit Tentamen TDDC (7)

Facit Tentamen TDDC (7) Facit Tentamen TDDC30 2014-03-18 1 (7) Teoretisk del 1. (3p) "Snabba frågor" a) Varför kan man tänkas vilja dölja metoder och variabler med private? (0.5p) Svar:För att skydda interna variabler från ändringar

Läs mer

Det är principer och idéer som är viktiga. Skriv så att du övertygar rättaren om att du har förstått dessa även om detaljer kan vara felaktiga.

Det är principer och idéer som är viktiga. Skriv så att du övertygar rättaren om att du har förstått dessa även om detaljer kan vara felaktiga. Tentamen Programmeringsteknik II 2014-0-27 Skrivtid: 0800 100 Tänk på följande Skriv läsligt! Använd inte rödpenna! Skriv bara på framsidan av varje papper. Börja alltid ny uppgift på nytt papper. Lägg

Läs mer

Liv och miljö Lärarmaterial

Liv och miljö Lärarmaterial SIDAN 1 Författare: Torsten Bengtsson Mål och förmågor som tränas: Lässtrategier för att förstå och tolka texter från olika medier samt för att urskilja texters budskap, både de uttalade och sådant som

Läs mer

Kopiering av objekt i Java

Kopiering av objekt i Java 1 (6) Kopiering av objekt i Java Först När du läser detta papper bör du samtidigt studera dokumentationen för klasserna Object, Cloneable (java.lang) och ArrayList (java.util). Mycket blir klarare genom

Läs mer

Obs! Inget ur Javas standardbibliotek får användas i ett svar (om det inte står att man får det).

Obs! Inget ur Javas standardbibliotek får användas i ett svar (om det inte står att man får det). LULEÅ TEKNISKA UNIVERSITET Tentamen i Objektorienterad programmering och design Totala antalet uppgifter: 5 Lärare: Håkan Jonsson, Tomas Johansson, 491000 Resultatet anslås senast 08-05-16 i A-huset. Tillåtna

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

MITT I NATUREN. Uppdrag för åk f-3. Välkommen till uppdraget Mitt i naturen i Universeums utställning Vattnets väg på plan 4.

MITT I NATUREN. Uppdrag för åk f-3. Välkommen till uppdraget Mitt i naturen i Universeums utställning Vattnets väg på plan 4. MITT I NATUREN Uppdrag för åk f-3 Välkommen till uppdraget Mitt i naturen i Universeums utställning Vattnets väg på plan 4. Lärarhandledningen är till för att ge dig som lärare en möjlighet att förbereda

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

Vad är en databas? Databaser. Relationsdatabas. Vad är en databashanterare? Vad du ska lära dig: Ordlista

Vad är en databas? Databaser. Relationsdatabas. Vad är en databashanterare? Vad du ska lära dig: Ordlista Databaser Vad är en databas? Vad du ska lära dig: Använda UML för att modellera ett system Förstå hur modellen kan översättas till en relationsdatabas Använda SQL för att ställa frågor till databasen Använda

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

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

Grunderna för relationsmodellen!

Grunderna för relationsmodellen! Grunderna för relationsmodellen! 1 Varför behöver jag lära mig relationsmodellen?! Relationsmodellen är den totalt dominerande datamodellen i moderna databassystem Beskriver databaser som en mängd tabeller

Läs mer

Objektorientering Klasser

Objektorientering Klasser Objektorientering Klasser VSA110 1 OOA I analysen upprättas: Klassdiagram Objektdiagram Tillståndsdiagram Scenario Användningsfall Sekvensdiagram Användardialoger (skärmbilder) 2 Analys - en översikt Vi

Läs mer

Objektorienterad programmering

Objektorienterad programmering 1(5) Objektorienterad programmering och Java Programkurs 7 hp Object Oriented Programming and Java TDDE30 Gäller från: 2018 VT Fastställd av Programnämnden för data- och medieteknik, DM Fastställandedatum

Läs mer

729G04 Programmering och diskret matematik. Föreläsning 7

729G04 Programmering och diskret matematik. Föreläsning 7 729G04 Programmering och diskret matematik Föreläsning 7 Föreläsningsöversikt Information Interaktion via text Läsa från fil Skriva till fil Spara och läsa abstrakta datatyper från fil Information Felaktigt

Läs mer

Design och konstruktion av grafiska gränssnitt

Design och konstruktion av grafiska gränssnitt Design och konstruktion av grafiska gränssnitt Armin Nezirevic Peter Börjesson Interaktionsdesign Tillämpad informationsteknologi Chalmers/GU Idag Vad utmärker ett bra användargränssnitt? Kort kursinfo

Läs mer

Kombinatorik 6.19. Förenkla C(n+1,2)-C(n,2) och C(n+1,3)-C(n,3)

Kombinatorik 6.19. Förenkla C(n+1,2)-C(n,2) och C(n+1,3)-C(n,3) Kombinatorik 6.19 Förenkla C(n+1,2)-C(n,2) och C(n+1,3)-C(n,3) S: Sitter med med uppgift 6.19 a och b i EA och trots att det finns lösningsförslag till a på hemsidan så förstår jag inte. C(n+1,2) - C(n,2)

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

Laboration 1 - Grunderna för OOP i Java

Laboration 1 - Grunderna för OOP i Java Uppdaterad: 2006-08-31 Laboration 1 - Grunderna för OOP i Java Inledning Laborationen går ut på att lära sig grunderna för objektorienterad programmering, samt motsvarande språkkonstruktioner i Java. Labben

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

Joppes djurfamilj v2. Planering. Genomförande. Utvärdering och dokumentation

Joppes djurfamilj v2. Planering. Genomförande. Utvärdering och dokumentation Joppes djurfamilj v2 Joppes djurfamilj är ett projekt för programmering 2 där fokus ligger på arv och polymorfism. Projektet är uppdelat efter tre olika betygsnivåer och där det beskrivs vad som förväntas

Läs mer

Databaser - Design och programmering. Programutveckling. Programdesign, databasdesign. Kravspecifikation. ER-modellen. Begrepps-modellering

Databaser - Design och programmering. Programutveckling. Programdesign, databasdesign. Kravspecifikation. ER-modellen. Begrepps-modellering Databaser desig och programmerig Desig processe ER-modellerig Programutvecklig Förstudie, behovsaalys Programdesig, databasdesig Implemetatio Programdesig, databasdesig Databasdesig Koceptuell desig Koceptuell

Läs mer

Dåtid. Nutid. Framtid. Slutuppgift Kultur- och idéhistoria ESM08 och SP08B

Dåtid. Nutid. Framtid. Slutuppgift Kultur- och idéhistoria ESM08 och SP08B Dåtid Nutid Framtid Slutuppgift Kultur- och idéhistoria ESM08 och SP08B Dåtid Nutid Framtid Vi ska under vecka 19-22 arbeta med olika teman i grupper. Ni delar själva in er i grupper (fem grupper). Varje

Läs mer

Laboration 2 1DV416 Windowsadministraion I

Laboration 2 1DV416 Windowsadministraion I Linnéuniversitetet Laboration 2 1DV416 Windowsadministraion I 28 november 2013 1 Introduktion Företaget planerar för en stor expansion inom en snar framtid. Du har fått i uppgift att förbereda nätverket

Läs mer

TDDC74 Programmering: Abstraktion och modellering Dugga 3, kl 14 16, 25 mars 2015

TDDC74 Programmering: Abstraktion och modellering Dugga 3, kl 14 16, 25 mars 2015 TDDC74 Programmering: Abstraktion och modellering Dugga 3, kl 14 16, 25 mars 2015 Läs alla frågorna först, och bestäm dig för i vilken ordning du vill lösa uppgifterna. Skriv tydligt och läsligt. Använd

Läs mer

Tentamen. Datalogi I, grundkurs med Java 10p, 2D4112, Lördagen den 30 november 2002 kl , salar E33, E34

Tentamen. Datalogi I, grundkurs med Java 10p, 2D4112, Lördagen den 30 november 2002 kl , salar E33, E34 Tentamen Datalogi I, grundkurs med Java 10p, 2D4112, 2002-2003 Lördagen den 30 november 2002 kl 9.00 14.00, salar E33, E34 Inga hjälpmedel 30 poäng ger säkert godkänt, 40 poäng ger betyg 4 50 poäng ger

Läs mer

Uppmärkningsspråk. TDP007 Konstruktion av datorspråk Föreläsning 4. Peter Dalenius Institutionen för datavetenskap

Uppmärkningsspråk. TDP007 Konstruktion av datorspråk Föreläsning 4. Peter Dalenius Institutionen för datavetenskap Uppmärkningsspråk TDP007 Konstruktion av datorspråk Föreläsning 4 Peter Dalenius Institutionen för datavetenskap 2015-02-03 Från förra gången XML-dokument specificeras med t.ex. en DTD Två olika sätt att

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

Trevlig helg Monika och Helene

Trevlig helg Monika och Helene Hej! v.47 Den här veckan har vi börjat tänka lite matte, vi har tex 6 kulor i handen och "gömmer" 3 i andra handen hur många finns då kvar? jo 3, vi har också 6 små fyrkanter till hjälp som ligger framför

Läs mer

LDAP i KK2.1. Innehåll. Sammanställt av Roland Hedberg Version: 1.0 Datum: 2006 10 31

LDAP i KK2.1. Innehåll. Sammanställt av Roland Hedberg Version: 1.0 Datum: 2006 10 31 2006 10 31 LDAP i KK2.1 Sammanställt av Roland Hedberg Version: 1.0 Datum: 2006 10 31 Innehåll LDAP i KK2.1 1 Introduktion...1 2 Organisation...2 2.1 Placering i LDAP katalogen...2 2.2 Översättning mellan

Läs mer

1(15) Bilaga 1. Av Projekt Neuronnätverk, ABB Industrigymnasium, Västerås Vt-05

1(15) Bilaga 1. Av Projekt Neuronnätverk, ABB Industrigymnasium, Västerås Vt-05 1(15) Bilaga 1 2(15) Neuronnätslaboration Räknare Denna laboration riktar sig till gymnasieelever som går en teknisk utbildning och som helst har läst digitalteknik samt någon form av styrteknik eller

Läs mer

Tentamen Programmeringsteknik 2 och MN Skrivtid: Inga hjälpmedel.

Tentamen Programmeringsteknik 2 och MN Skrivtid: Inga hjälpmedel. Tentamen Programmeringsteknik 2 och MN2 2006-03-10 Skrivtid: 0900-1400 Inga hjälpmedel. Tänk på följande OBS: För betygen 4, 5 och VG kommer något högre gränser än normalt användas. Skriv läsligt! Använd

Läs mer

TDDC74 Lab 02 Listor, sammansatta strukturer

TDDC74 Lab 02 Listor, sammansatta strukturer TDDC74 Lab 02 Listor, sammansatta strukturer 1 Översikt I denna laboration kommer ni att lära er mer om: Mer komplexa rekursiva mönster, procedurer och processer. Hur man kan hantera listor och andra enklare

Läs mer

Laboration i datateknik

Laboration i datateknik KUNGLIGA TEKNISKA HÖGSKOLAN Laboration i datateknik Felsökning och programmering av LEGO NXT robot Daniel Willén 2012 09 06 dwill@kth.se Introduktionskurs i datateknik II1310 Sammanfattning Syftet med

Läs mer

729G75: Programmering och algoritmiskt tänkande. Tema 3, föreläsning 2

729G75: Programmering och algoritmiskt tänkande. Tema 3, föreläsning 2 729G75: Programmering och algoritmiskt tänkande Tema 3, föreläsning 2 Översikt Vanliga mönster när man designar en klass Arv i Python UML-diagram Exempel Vanliga mönster när man designar en klass Namngivning

Läs mer

LEVA LIVET 3. Gunvor Petersson Lilian Nilsson. Arbetsblad

LEVA LIVET 3. Gunvor Petersson Lilian Nilsson. Arbetsblad Jag är fantastisk (sidan 2) 1 Läs sidan 2. Rita av dig själv. Både huvud och hela kroppen ska vara med. Skriv ditt namn. 2 Tänk efter vad du kan göra med dina händer. Skriv en lista. 3 Vad kan du göra

Läs mer

Grundläggande programmering, STS 1, VT Sven Sandberg. Föreläsning 18

Grundläggande programmering, STS 1, VT Sven Sandberg. Föreläsning 18 Grundläggande programmering, STS 1, VT 2007. Sven Sandberg Föreläsning 18 Igår: Genomgång av dugga Rekursion Idag och på måndag: Om essän Lite, lite teori om konstanter Grafiska användargränssnitt Grundläggande

Läs mer

Produktöversikt BIsmart

Produktöversikt BIsmart Produktöversikt för BIsmart Innehåll Vad är BIsmart?... 2 Hur fungerar BIsmart?... 3 Vad behövs för att använda BIsmart... 4 Vad ingår i BIsmart?... 4 Artikelförsäljning... 5 Inköp... 5 Kundreskontra...

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

Alva ordnar loppis Lärarmaterial

Alva ordnar loppis Lärarmaterial SIDAN 1 Författare: Kirsten Ahlburg Vad handlar boken om? Boken handlar om Alva och hennes klasskompisar som ska samla in pengar till en skolresa. De behöver få ihop mycket pengar. De bestämmer sig för

Läs mer

samma sätt. Spara varje uppgift som separat Excelfil. För att starta Excel med Resampling-pluginet, välj Resampling Stats for Excel i Start-menyn.

samma sätt. Spara varje uppgift som separat Excelfil. För att starta Excel med Resampling-pluginet, välj Resampling Stats for Excel i Start-menyn. LABORATION 1: SANNOLIKHETER Lös Uppgift 1-8 nedan. Första uppgiften har ledning steg för steg, resterande uppgifter löser du på samma sätt. Spara varje uppgift som separat Excelfil. För att starta Excel

Läs mer

Antag att följande träd genereras i ett spelförande program om vi applicerar evalueringsfunktionen

Antag att följande träd genereras i ett spelförande program om vi applicerar evalueringsfunktionen 1. Komplexiteten hos en agent beror mycket på vilken omgivning den skall verka i. Vad innebär det att en omgivning är stokastisk, episodisk och dynamisk? Ge exempel på en omgivning som är stokastisk, episodisk

Läs mer

MITT I REGNSKOGEN. Uppdrag för åk f-3. Välkommen till uppdraget Mitt i Regnskogen i Universeums Regnskog.

MITT I REGNSKOGEN. Uppdrag för åk f-3. Välkommen till uppdraget Mitt i Regnskogen i Universeums Regnskog. MITT I REGNSKOGEN Uppdrag för åk f-3 Välkommen till uppdraget Mitt i Regnskogen i Universeums Regnskog. Lärarhandledningen är till för att ge dig som lärare en möjlighet att förbereda ditt och klassens

Läs mer

Webprogrammering och databaser. Konceptuell datamodellering med ER-modellen

Webprogrammering och databaser. Konceptuell datamodellering med ER-modellen Webprogrammering och databaser Konceptuell datamodellering med ER-modellen 2 Programutveckling Interaktionsdesign, behovsanalys Programdesign, databasdesign Implementation 3 Programdesign, databasdesign

Läs mer

Webbtjänster med API er

Webbtjänster med API er Webbtjänster med API er Mål med lektionen! Titta på hur service:ar fungerar och hur vi programmerar dem. Vad lektionen omfattar WCF Service WCF Services Vad är en WCF service? En WCF Service är ett program

Läs mer

Tvättstugebokning C200 EM C201 Mifare

Tvättstugebokning C200 EM C201 Mifare Tvättstugebokning C200 EM C201 Mifare Installationsanvisning 20029-03 Se www.axema.se för de senaste manualerna. VAKA bokning B60 Tvä ttstugebokning VAKA bokning används för att ge tillfällig behörighet

Läs mer

Inlämningsuppgift MiniPlotter

Inlämningsuppgift MiniPlotter LUNDS TEKNISKA HÖGSKOLA Institutionen för datavetenskap EDAA01 Programmeringsteknik fördjupningskurs Inlämningsuppgift MiniPlotter I den här uppgiften ska ett program som ritar grafer av matematiska funktioner

Läs mer

OOP Objekt-orienterad programmering

OOP Objekt-orienterad programmering OOP F9:1 OOP Objekt-orienterad programmering Föreläsning 9 Arv och klasshierarkier Polymorfism OOP F9:2 Djur - String namn - int vikt + String getnamn() + int getvikt() + void ökavikt(int x) Ko - int mjölkvolym

Läs mer

Databaser design och programmering. Fö 2: Design processen, ER-modellering

Databaser design och programmering. Fö 2: Design processen, ER-modellering Databaser design och programmering Fö 2: Design processen, ER-modellering 2 Programutveckling Interaktionsdesign, behovsanalys Programdesign, databasdesign Implementation 3 Programdesign, databasdesign

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

Tentamen i Introduktion till programmering

Tentamen i Introduktion till programmering Tentamen i Introduktion till programmering Kurskod: Skrivtid: D0009E 09:00-13:00 (4 timmar) Totalt antal uppgifter: 7 Totalt antal poäng: 38 Tentamensdatum: 2014-05-17 Jourhavande lärare: Tillåtna hjälpmedel:

Läs mer

Försättsblad till skriftlig tentamen vid Linköpings Universitet

Försättsblad till skriftlig tentamen vid Linköpings Universitet Försättsblad till skriftlig tentamen vid Linköpings Universitet Datum för tentamen 2014-03-18 Sal Tid 08:00 12:00 Kurskod Provkod Kursnamn/benämning Institution Antal uppgifter som ingår i tentamen Antal

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

3 Hur ska vi uppfatta naturen?

3 Hur ska vi uppfatta naturen? 3 HUR SKA VI UPPFATTA NATUREN? 27 3 Hur ska vi uppfatta naturen? Vi människor är i naturen och lever av naturen. När vi människor reflekterar över naturen kan vi uppfatta den på olika sätt. Som en maskin

Läs mer

Innehållet i Snomed CT en översikt

Innehållet i Snomed CT en översikt Innehållet i Snomed CT en översikt Innehåll Inledning... 4 Beskrivning av Snomed CT:s hierarkier... 6 Kliniskt fynd... 6 Åtgärd... 6 Observerbar företeelse... 7 Omständighet som rör visst sammanhang...

Läs mer

Övningsuppgifter kapitel 8

Övningsuppgifter kapitel 8 Inst. för Systemteknik Introduktion till programmering (SMD 180), 5 p Övningsuppgifter kapitel 8 1. Listor är en viktig datatyp i Python. Hur definierar kursboken lista? Vad kallas de värden som tillsammans

Läs mer

Människan och självkörande fordon. Mikael Ljung Aust, Volvo Cars

Människan och självkörande fordon. Mikael Ljung Aust, Volvo Cars Människan och självkörande fordon Mikael Ljung Aust, Volvo Cars Vilken blir förarens roll? Varför ska man köpa körstöd/självkörande bil (vad får jag för mina pengar)? Jo för att kunna (förslag från klinikdeltagare

Läs mer

Spel som interaktiva berättelser. Mer teoretiserande!

Spel som interaktiva berättelser. Mer teoretiserande! Spel som interaktiva berättelser Mer teoretiserande! Design Ett sätt att betrakta författandet av icke-linjära, interaktiva berättelser är som design. Def: Design är den process där en designer skapar

Läs mer

Tentamen *:58/ID100V Programmering i C Exempel 3

Tentamen *:58/ID100V Programmering i C Exempel 3 DSV Tentamen *:58/ID100V Sid 1(5) Tentamen *:58/ID100V Programmering i C Exempel 3 Denna tentamen består av fyra uppgifter som tillsammans kan de ge maximalt 22 poäng. För godkänt resultat krävs minst

Läs mer

Webprogrammering och databaser. Konceptuell datamodellering med ER-modellen

Webprogrammering och databaser. Konceptuell datamodellering med ER-modellen Webprogrammering och databaser Konceptuell datamodellering med ER-modellen 2 Programutveckling Interaktionsdesign, behovsanalys Programdesign, databasdesign Implementation 3 Programdesign, databasdesign

Läs mer

Webbprogrammering, grundkurs 725G54

Webbprogrammering, grundkurs 725G54 Webbprogrammering, grundkurs 725G54 Bootstrap jquery SEO RWD MuddyCards. Tidigare Muddycards Många positiva kommentarer Ibland för högt tempo på föreläsning Lägg ut labbar tidigare Mer föreläsningar (2

Läs mer

Lab5 för prgmedcl04 Grafik

Lab5 för prgmedcl04 Grafik Lab5 för prgmedcl04 Grafik Viktigt läs detta först:den här labblydelsen är ganska lång, detta betyder inte att labben tar lång tid.en hel del av lydelsen är anvisning om hur man går tillväga för att kunna

Läs mer

Kursplanering för Mikrodatorteknik 4p/5p

Kursplanering för Mikrodatorteknik 4p/5p Kursplanering för Mikrodatorteknik 4p/5p Kursansvarig: Benny Thörnberg Tel: 060-148917 E-post: benny.thornberg@miun.se Kurslitteratur: Rune Körnefors, Mikrodatorer bit för bit, ISBN 91-44-30862-0 Introduktion

Läs mer

VÅREN 2015 SNÖVIT 3-8 år lörd 17/1 kl:13:00 & 15:00 ons-tors 21-22/1 kl:9:30 lörd 24/1 kl:13:00 & 15:00 ons-tors 28-29/1 kl:9:30

VÅREN 2015 SNÖVIT 3-8 år lörd 17/1 kl:13:00 & 15:00 ons-tors 21-22/1 kl:9:30 lörd 24/1 kl:13:00 & 15:00 ons-tors 28-29/1 kl:9:30 Veckans kulturtipps! Tant klavers föreställningar var några av de mest uppskattade under alla år som jag var iväg med barngrupper, så när jag såg den här inbjudan så tänkte jag att jag gärna ville dela

Läs mer

DD2458-224344 - 2014-12-19

DD2458-224344 - 2014-12-19 KTH / KURSWEBB / PROBLEMLÖSNING OCH PROGRAMMERING UNDER PRESS DD2458-224344 - 2014-12-19 Antal respondenter: 26 Antal svar: 18 Svarsfrekvens: 69,23 % RESPONDENTERNAS PROFIL (Jag är: Man) Det var typ en

Läs mer