Introduktion til programmering. UML, Uge 45 Computer science, kap 7, særl. 7.4 og 7.5. Martin Fowler: UML distilled, kap. 3. Addision-Wesley, 2004.

Størrelse: px
Starte visningen fra side:

Download "Introduktion til programmering. UML, Uge 45 Computer science, kap 7, særl. 7.4 og 7.5. Martin Fowler: UML distilled, kap. 3. Addision-Wesley, 2004."

Transkript

1 Introduktion til programmering UML, Uge 45 Computer science, kap 7, særl. 7.4 og 7.5. Martin Fowler: UML distilled, kap. 3. Addision-Wesley, 2004.

2 Diagrammer Diagrammer er visuelle fremstillinger af beskrivelser der består af en lang række simple ens sætninger Diagrammer er abstraktioner. De udelader en mængde detaljer Diagrammer er redskaber til at reducere kompleksitet.

3 Hvornår diagrammer? Diagrammer er nødvendige når tingene bliver komplicerede Kør Beggars and Philanthropists

4 Entity-relation De simple sætninger: Entitet har Egenskab Entitet A står-i-relation-til Entitet B Relation Egenskab Entitet

5 ER-diagram Et kæledyr har et navn Et kæledyr har en fødselsdag Et kæledyr er ejet af en person Navn Navn ErEn 1 Art Kæledyr M M Species Fødselsdag Dødsdag Ejet af 1 Person Navn

6 Kald-struktur Structure chart De simple sætninger Funktion A kalder funktion B A B

7 HTML-tabellen def makehtmlpage(tablecontents): return makestart() + maketable(tablecontents) + makeending() def maketable(tablecontents):. htmltabel += makerow(row) return htmltabel def makerow(rowcontents):. htmlrow += makecell(cell). return htmlrow

8 HTML-tabellen makehtmlpage(tablecontents): makestart() maketable(tablecontents) makeending() makerow(rowcontents): makecell(cell)

9 Brugsscenarier Use case diagrams Defineret ved formål Aktør interagerer med Systemmodul Formål her: brugerne og udvikleren retter simuleringen så den passer med brugernes teori

10 Dataflow De simple sætninger Kilde producerer data En klient producerer en forespørgsel Data forsvinder i afløb En klient konsumerer en html-side Proces A omdanner data fra proces B og leverer resultatet til proces C En forespørgsel omdannes til en sqlkommando Process A henter data fra lager En sql-forespørgsel henter et svar fra en sqldatabase Process A gemmer data på lager En sql-kommando indsætter en række i en tabel Source/ sink Process

11 Eksempel Python program Client cgi.fieldstorage Construct sqlcommand SQL-server Sql-command Handle sqlcommand Sql-command Layout information Tuple of tuples Database Make webpage Html code Client

12 UML klassediagrammer De simple sætninger Klasse A er en underklasse/overklasse af klasse B En liste er en underklasse af klassen sekvens Et universitet er en underklasse af klassen organisation Klasse A er en del af/har delen klasse B En liste indeholder objekter som dele Et fakultet er en del af et universitet Klasse A står i relation til klasse B Et institut udbyder uddannelser Klasse A afhænger af klasse B En Python webcrawler er afhængig af httplib Klasse A har attributten B En sekvens har egenskaben længde En ansat har egenskaben lønramme Klasse A kan udføre metoden B En liste kan udføre metoden append Et fakultet kan ansætte og fyre ansatte

13 Generalisering/specialisering Klasse A er en underklasse/overklasse af klasse B Underklassen arver alle overklassens egenskaber og metoder >>> len('xxx') 3 >>> len([1,2,3]) 3 >>> len((1,2,3)) 3 >>> 'xxx'.isalpha() True >>> (1,2,3).isalpha() Traceback (most recent call last): File "<pyshell#9>", line 1, in <module> (1,2,3).isalpha() AttributeError: 'tuple' object has no attribute 'isalpha' >>> String +isalpha() +isdigit() Sequence -length +slicing() +() Tuple List +append() +extend()

14 Aggregering/dekomponering Klasse A er en del af/har delen klasse B

15 Organisationer: Århus Universitet

16 Metoder og attributter De simple sætninger Klasse A kan udføre metoden B Klassen A har attributten B class Ledelse: def init (self, medlemmer, organisation): self.medlemmer = medlemmer self.organisation = organisation def udnaevn(self, medlem): self.medlemmer.append(medlem) def fjern(self, medlem): self.medlemmer.remove(medlem)

17 Klasser Underklassens navn Overklassens navn Instans af underklassen Underklassens init Overklassens init class Organisation(Entitet): def init (self, navn,addresse, ledelse): Entitet. init (self,navn, addresse) self.ledelse = ledelse En instans af klassen dannes ved at skrive klassens navn efterfulgt af init s parametre, undtagen self. Man kalder i virkeligheden init (en constructor ) enorganisation = Organisation( Årh Univ, Ringgaden,enLedelse) Self betyder: mig, denne instans. Man refererer til instansens egenskaber ved at skrive self.egenskab, altså min egenskab. Hvis klassen er en underklasse af en overordnet klasse, skal underklassens init kalde overklassens init

18 Delvis implementering class Entitet: def init (self, navn,addresse): self.navn = navn self.addresse = addresse def verbalize(self): print vars(self) class Organisation(Entitet): def init (self, navn,addresse, ledelse): Entitet. init (self,navn, addresse) self.ledelse = ledelse class Uddannelse(Organisation): def init (self, navn,addresse, ledelse, tilknytning): Organisation. init (self, navn,addresse, ledelse) self.tilknytning=tilknytning class Universitet(Organisation): def init (self, navn,addresse, ledelse, fakulteter): Organisation. init (self, navn,addresse, ledelse) self.fakulteter = fakulteter class Fakultet(Organisation): def init (self, navn,addresse, ledelse, fagområde,institutter,uddannelser): Organisation. init (self, navn,addresse, ledelse) self.fagområde = fagområde self.institutter = institutter self.uddannelser = uddannelser class Institut(Organisation): def init (self, navn,addresse, ledelse,fagområde): Organisation. init (self, navn,addresse, ledelse) self.fagområde = fagområde class Ledelse: def init (self, medlemmer, organisation): self.medlemmer = medlemmer self.organisation = organisation def udnaevn(self, medlem): self.medlemmer.append(medlem) def fjern(self, medlem): self.medlemmer.remove(medlem) class Ansat(Entitet): def init (self, navn,addresse, lønramme,cpr,bankkonto): Entitet. init (self,navn, addresse) self.lønramme = lønramme self.cpr = cpr self.bankkonto = bankkonto if name == ' main ': imv = Institut('imv','IT-byen',[],'IT') humfak = Fakultet('hum fak','nobelparken',[],'humaniora',[imv],[]) imv.verbalize() humfak.verbalize()

19 Implementering Aggregering: en liste af komponenterne Associationer: en list af de associerede objekter Specialisering: subklasser Attributter: variable knyttet til klassen Metoder: funktioner knyttet til klassen

20 Opgave Skriv Python-kode der implementerer ovenstående UML-diagram. Generer instanser af jeres klasser. Check at de er rigtige ved hjælp af kommandoen vars(instans). Den udskriver instansens dictionary. Metoderne behøver I ikke at implementere fuldt. I kan nøjes med at de printer deres eget navn: def sendbesked(self,besked): print 'besked sendes' Husk: En instans af klassen dannes ved at skrive klassens navn efterfulgt af init s parametre, undtagen self. Altså: enorganisation = Organisation( Årh Univ, Ringgaden,enLedelse) Man kalder i virkeligheden init (en såkaldt constructor ) Self betyder: mig, denne instans. Man refererer til instansens egenskaber ved at skrive self.egenskab, altså min egenskab. Hvis klassen er en underklasse af en overordnet klasse, skal underklassens init kalde overklassens init

21 Patterns: reduktion af kompleksitet Standardløsninger på hyppige problemer State pattern Løser problemet at en instans ikke kan skifte klasse Når man bliver lektor skal man oprette en helt ny ansat

22 Associationer Klasse A står i relation til klasse B Multiplicitet Kan være en vigtig afgørelse Kan samme uddannelse ligger under to fakulteter? Tværfaglighed: Ja Studieordninger: Nej Økonomi: Nej

23 Afhængigheder: Det lille system på hjemmesiden EnkeltWebSide DynamicWebPages sql database htmlroutines MySQLdb cgi

24 Kobling Coupling Afhængigheder mellem moduler Kan man rette i eet modul uden at skulle rette i andre moduler? Skal være lav.

25 Sammenhæng Cohesion Sammenhæng indenfor det enkelte modul Logical cohesion: en klasse repræsenterer en sammenhængende verden. Functional cohesion: en klasses metoder kalder hinanden. Skal være høj.

Klasser og Objekter i Python. Uge 46 Learning Python: kap 15-16, 19-22.

Klasser og Objekter i Python. Uge 46 Learning Python: kap 15-16, 19-22. Klasser og Objekter i Python Uge 46 Learning Python: kap 15-16, 19-22. Klasser og objekter En klasse beskriver en klump af samhørende funktioner og variable En klasse er en beskrivelse. En kage form Klassens

Læs mere

Klasser og Objekter i Python. Uge 11

Klasser og Objekter i Python. Uge 11 Klasser og Objekter i Python Uge 11 Klasser og objekter En klasse beskriver en klump af samhørende funktioner og variable En klasse er en beskrivelse. Klassens objekter er instanser af klassen. En programudførelse

Læs mere

Lær Python - Dag 4, modul 2 Objektorienteret programmering

Lær Python - Dag 4, modul 2 Objektorienteret programmering Lær Python - Dag 4, modul 2 Objektorienteret programmering Simon J. Larsen 28. oktober 2017 Institut for Matematik og Datalogi Metoder Metoder Indtil videre har vi kun brugt objekter til at gemme værdier.

Læs mere

klient Webside Forespørgsel/ Nye data Python program Database kommando svar Database

klient Webside Forespørgsel/ Nye data Python program Database kommando svar Database Øvelse 12. Dynamiske web-sider og cgi-modulet Teori: CGI Øvelse: anvendelse af cgi-modulet. I denne opgave skal vi bygge de foregående opgaver sammen til en mini-udgave af det samlede system I skal aflevere

Læs mere

klient Webside Forespørgsel/ Nye data Python program Database kommando svar Database

klient Webside Forespørgsel/ Nye data Python program Database kommando svar Database Øvelse 10. Dynamiske web-sider og cgi-modulet I denne opgave skal vi bygge de foregående opgaver sammen til en mini-udgave af det samlede system I skal aflevere til vintereksamen. klient Forespørgsel/

Læs mere

Øvelse 9. Klasser, objekter og sql-tabeller insert code here

Øvelse 9. Klasser, objekter og sql-tabeller insert code here Øvelse 9. Klasser, objekter og sql-tabeller Denne opgave handler om hvordan man opbevarer data fra databasekald på en struktureret måde. Den skal samtidig give jer erfaringer med objekter, der kommer til

Læs mere

2. Husk at give execute-tilladelser. I Filezilla højreklikker I på den overførte file, så vælger I fileattributes og sætter kryds i execute.

2. Husk at give execute-tilladelser. I Filezilla højreklikker I på den overførte file, så vælger I fileattributes og sætter kryds i execute. Øvelse 10. Dynamiske web-sider og cgi-modulet I denne opgave skal vi bygge de foregående opgaver sammen til en mini-udgave af det samlede system I skal aflevere til vintereksamen. I får udleveret et lille

Læs mere

Lær Python - Dag 4, modul 1 Objektorienteret programmering

Lær Python - Dag 4, modul 1 Objektorienteret programmering Lær Python - Dag 4, modul 1 Objektorienteret programmering Simon J. Larsen 28. oktober 2017 Institut for Matematik og Datalogi Objektorienteret programmering Hvad er objektorienteret programmering? Vi

Læs mere

Analyse, problemområde, anvendelsesområde

Analyse, problemområde, anvendelsesområde OOA&D, kap. 1-5 Fiktiv case Det supermarked I dagligt handler i, skal have et integreret kasse-, lagerstyrings- og EDI-system. Systemet skal gøre det muligt at sænke varebeholdningen uden at der kommer

Læs mere

UML til kravspecificering

UML til kravspecificering UML til kravspecificering UML mini-kompendium - til brug i forbindelse med modellering af kravspecifikationer. Copyright 2006 Teknologisk Institut, IT-Udvikling Aktivitetsdiagram 2/9 Aktion Aktionsnavn

Læs mere

Programmeringscamp Opbygning og specialisering af klassehierarki. Simulering af en kasselinje

Programmeringscamp Opbygning og specialisering af klassehierarki. Simulering af en kasselinje Programmeringscamp Opgave 9 var helt tydeligt for svær det var imponerende at 7 faktisk afleverede! Vi bruger uge 48 til at gå lidt grundigere igennem objektorienteret programmering, specielt teknikken

Læs mere

Lær Python dag 1 - modul 1

Lær Python dag 1 - modul 1 Lær Python dag 1 - modul 1 Introduktion, basis python Steffen Berg Klenow Jonas Bamse Andersen Syddansk Universitet Indhold 1. Velkommen 2. Programmering i python 3. Typer, variabler og udtryk 1 Velkommen

Læs mere

Lær Python - Dag 3, modul 1 Læse og skrive filer

Lær Python - Dag 3, modul 1 Læse og skrive filer Lær Python - Dag 3, modul 1 Læse og skrive filer Simon J. Larsen 15. oktober 2017 Institut for Matematik og Datalogi Læse og skrive filer Persistens Vi har ofte brug for at gemme data på disken som ikke

Læs mere

Børn, unge og sundhed Automatisering

Børn, unge og sundhed Automatisering Gr. 8 Børn, unge og sundhed Automatisering Kage, hvornår? Thomas Qvistorff Kanstrup og Thorbjørn Louring Koch 1.6 Kom/IT RTG 30/4 2010 Indhold Indledning... 3 Planlægning... 3 Kommunikationsplanlægning...

Læs mere

Tilbudsportalen REST testklient

Tilbudsportalen REST testklient Socialstyrelsen Tilbudsportalen REST testklient REST testklienter.net Søren Korgaard Nielsen, Socialstyrelsen 28-01-2014 Indhold 1 Indledning... 3 2 XSD og autogenereret kode... 4 3 Opbygning af blanketter...

Læs mere

Introduktion til programmering

Introduktion til programmering Introduktion til programmering Databaser Uge 37 Computer Science, kap 9. Hugh Darwen: what a database really is, G. Riccardi: Princples of database systems, kap 2., kompendium. Plan Oprette jer på IMV

Læs mere

Introduktion til ActionScript, fortsat

Introduktion til ActionScript, fortsat Introduktion til ActionScript, fortsat Kaspar Rosengreen Nielsen kaspar@interactivespaces.net i n t e r a c t i v e s p a c e s. n e t Kaspar Nielsen, kaspar@interactivespaces.net 1 Dagens program Opsamling

Læs mere

It og informationssøgning Forelæsning 5 4. oktober 2006 Nils Andersen. Tilfældige tal. Statistisk test. Sæt og associationslister.

It og informationssøgning Forelæsning 5 4. oktober 2006 Nils Andersen. Tilfældige tal. Statistisk test. Sæt og associationslister. It og informationssøgning Forelæsning 5 4. oktober 2006 Nils Andersen Tilfældige tal. Statistisk test. Sæt og associationslister. Tilfældige tal Statistik Sæt Associationslister Downey, Elkner & Meyers:

Læs mere

Python 3 Matematik Programmerings kursus:

Python 3 Matematik Programmerings kursus: Python 3 Matematik Programmerings kursus: Kompendiet indeholder: Hello World (første program) Variable (String & Integer) Løkker (while-loop) Regneoperationer If-else statement Funktioner Opgaver o Læg

Læs mere

Generisk programmering - opgave 2 - Doxygen

Generisk programmering - opgave 2 - Doxygen Generisk programmering - opgave 2 - Doxygen Morten Wendelboe Datalogisk Institut, Københavns Universitet Universitetsparken 1, 2100 København Ø morty@diku.dk Resumé. Denne opgave ser på mulighederne for

Læs mere

Aarhus Universitet, Science and Technology, Computer Science. Exam. Wednesday 27 June 2018, 9:00-11:00

Aarhus Universitet, Science and Technology, Computer Science. Exam. Wednesday 27 June 2018, 9:00-11:00 Page 1/12 Aarhus Universitet, Science and Technology, Computer Science Exam Wednesday 27 June 2018, 9:00-11:00 Allowed aid: None The exam questions are answered on the problem statement that is handed

Læs mere

Hassansalem.dk/delpin User: admin Pass: admin BACKEND

Hassansalem.dk/delpin User: admin Pass: admin BACKEND Hassansalem.dk/delpin User: admin Pass: admin BACKEND 1/10 Indledning Dette projekt er den afsluttende del af web udvikling studiet på Erhvervs Lillebælt 1. semester. Projektet er udarbejdet med Del-pin

Læs mere

Software Design (SWD) Spørgsmål 1

Software Design (SWD) Spørgsmål 1 Spørgsmål 1 Unified Process Du skal give en beskrivelse af Unified Process. Beskrivelsen skal indeholde forklaring på følgende begreber: Phase Iteration Discipline Activity Milestone Artifact Spørgsmål

Læs mere

AAU, Programmering i Java Intern skriftlig prøve 18. maj 2007

AAU, Programmering i Java Intern skriftlig prøve 18. maj 2007 AAU, Programmering i Java Intern skriftlig prøve 18. maj 2007 Opgavebesvarelsen skal afleveres som enten en printerudskrift eller som et passende dokument sendt via email til fjj@noea.dk. Besvarelsen skal

Læs mere

It og informationssøgning Forelæsning oktober 2006 Jakob Grue Simonsen. Klasser

It og informationssøgning Forelæsning oktober 2006 Jakob Grue Simonsen. Klasser It og informationssøgning Forelæsning 7 25. oktober 2006 Jakob Grue Simonsen Klasser Downey, Elkner & Meyers: Chapt. 12-14 Andersen & Simonsen: kap. 7 Vi har tidligere set, at Python tilbyder en række

Læs mere

Hvem er vi? Kursus Introduktion. Kursuslærerne. Agenda for i dag

Hvem er vi? Kursus Introduktion. Kursuslærerne. Agenda for i dag Hvem er vi? Kursus Introduktion Anne Haxthausen ah@imm.dtu.dk Informatics and Mathematical Modelling Technical University of Denmark 100 studerende med forskellig baggrund: software teknologi It og Kom

Læs mere

Assignment #5 Toolbox Contract

Assignment #5 Toolbox Contract Assignment #5 Toolbox Contract Created by: René Kragh Trine Randløv E mail address cph rk70@cphbusiness.dk 23 11 2014 1 Introduktion Dette dokument indeholder en vertikal kontrakt for et system som skal

Læs mere

Kursus i OOP og Java. Kursus i Objektorienteret programmering i Java

Kursus i OOP og Java. Kursus i Objektorienteret programmering i Java Kursus i OOP og Java Kursus i Objektorienteret programmering i Java Åben Dokumentlicens Dette foredragsmateriale er under Åben Dokumentlicens (ÅDL) Du har derfor lov til frit at kopiere dette værk Bruger

Læs mere

Vejledning til KL s Excelværktøj

Vejledning til KL s Excelværktøj 1 Vejledning til KL s Excelværktøj Indhold 1. Indledning... 2 2. It-krav... 2 3. Principperne bag værktøjet... 3 2.1 Forklaring af rensningsprocessen... 3 2.2 Forklaring af analyseprocessen... 3 3. Guide

Læs mere

Programmeringscamp. Implementer funktionerne én for én og test hele tiden.

Programmeringscamp. Implementer funktionerne én for én og test hele tiden. Programmeringscamp De to opgaver træner begge i at lave moduler som tilbyder services der kan bruges af andre, samt i at implementere services efter en abstrakt forskrift. Opgave 1 beder jer om at implementere

Læs mere

SDB. MySQL Installation Guide

SDB. MySQL Installation Guide SDB MySQL Installation Guide MERE 2003 D. 05 July, 2003 Installation af MySQL databasen Introduktion...2 Krav for at installere MySQL...2 Installationen...3 Udpak zip filen...3 Start Installationen...3

Læs mere

Side 1. Databaser og SQL. Dagens gang. Databasebegreber. Introduktion til SQL Kap 1-5

Side 1. Databaser og SQL. Dagens gang. Databasebegreber. Introduktion til SQL Kap 1-5 Databaser og SQL Introduktion til SQL Kap 1-5 1 Dagens gang Databaser Database begreber Mapning af klasser til relationel model Normalisering Opgaver til næste gang 2 Databasebegreber A database is a:

Læs mere

Projekt database. 3 Semester - Mul a Projekt 1. Yaser Osman cph-mo102@cphbusiness.dk. Dan Eskildsen cph-de32@cphbusiness.dk

Projekt database. 3 Semester - Mul a Projekt 1. Yaser Osman cph-mo102@cphbusiness.dk. Dan Eskildsen cph-de32@cphbusiness.dk Projekt database 3 Semester - Mul a Projekt 1 Yaser Osman cph-mo102@cphbusiness.dk Dan Eskildsen cph-de32@cphbusiness.dk Ammar Al-Basri cph-aa140@cphbusiness.dk Emre Kandemir cph-ek68@cphbusiness.dk Lotte

Læs mere

Uge 36 Intro Kap 0 og 2 i Computer science

Uge 36 Intro Kap 0 og 2 i Computer science Uge 36 Intro Kap 0 og 2 i Computer science Plan Personer og kompetencer Aula Kususplan Formål Eksamen Computerens historie Computeren som tegnbærer Algoritmer hvad består et program af Maskinarkitektur

Læs mere

Feriepengeforpligtigelse Manuel beregning på ferietotaler (Rapport-ID: 57)

Feriepengeforpligtigelse Manuel beregning på ferietotaler (Rapport-ID: 57) Feriepengeforpligtigelse Manuel beregning på ferietotaler (Rapport-ID: 57) Indhold 1. Hvad er formålet med rapporten?... 1 2. Overblik over rapporten... 1 3. Den færdige rapport... 2 4. Faste, indbyggede

Læs mere

Opgaven fortsat. Opfølgning på Opgave 2 og Use Cases. Opgaven. Trin 1: Væsentlige begreber. Resultatliste: 100 bryst, herrer

Opgaven fortsat. Opfølgning på Opgave 2 og Use Cases. Opgaven. Trin 1: Væsentlige begreber. Resultatliste: 100 bryst, herrer Opfølgning på Opgave 2 og Use Cases originally by Michael R. Hansen modified/extended by Anne E. Haxthausen Informatics and Mathematical Modelling Technical University of Denmark Opgaven fortsat Efter

Læs mere

b) Udvid din implementation af forme til at understøtte.equals. To objekter af samme form er ens hvis de har samme værdier i felterne.

b) Udvid din implementation af forme til at understøtte.equals. To objekter af samme form er ens hvis de har samme værdier i felterne. Exercise 1: Opgave 9.1 på CodeJudge. a) Lav klasserne Cirkel, Rektangel og Kvadrat, som implementerer vedhæftede interface From.java (se CodeJudge). Lav Rektangel før du laver Kvadrat. Kan du bruge nedarvning

Læs mere

Reeksamen, DSDS, forår 2008

Reeksamen, DSDS, forår 2008 Reeksamen, DSDS, forår 2008 Introduktion til Scripting, Databaser og Systemarkitektur Jonas Holbech IT Universitetet i København 22. august 2008 Alle hjælpemidler er tilladte, dog ikke computer og kommunikationsmidler.

Læs mere

Software Dokumentation

Software Dokumentation Software Dokumentation Jan Boddum Larsen Teknologi B og A på HTX Dokumentation af software i Teknologi I samfundet sker der en bevægelse mod mere digitale løsninger i teknologi. Det betyder at software

Læs mere

Specialiseringen Rapport Lavede Af Rasmus R. Sørensen Side 1 af 6

Specialiseringen Rapport Lavede Af Rasmus R. Sørensen Side 1 af 6 Side 1 af 6 Indholdsfortegnelse INDHOLDSFORTEGNELSE 1 INTRO 3 STARTEN AF SPECIALISERINGEN 3 ANKOMST TIL SKOTLAND 4 DATABASER 5 NETVÆRK 5 INTERAKTION 5 AFSLUTNING AF SPECIALISERINGEN 5 KONKLUSION 6 Side

Læs mere

Dokumentation af programmering i Python 2.75

Dokumentation af programmering i Python 2.75 Dokumentation af programmering i Python 2.75 Af: Alexander Bergendorff Jeg vil i dette dokument, dokumentere det arbejde jeg har lavet i løbet opstarts forløbet i Programmering C. Jeg vil forsøge, så vidt

Læs mere

UML-Light (Note: UML-Light T133, ver. 2004) Finn Overgaard Hansen, IHA

UML-Light (Note: UML-Light T133, ver. 2004) Finn Overgaard Hansen, IHA UML-Light (Note: UML-Light T33, ver. 2004) Finn Overgaard Hansen, IHA Programmering PRG + Semesterprojekter PRJ+PRJ2 Version: 20--2004 Indhold Første del: Introduktion til UML-Light og UML Klasser og objekter

Læs mere

Database for udviklere. Jan Lund Madsen PBS10107

Database for udviklere. Jan Lund Madsen PBS10107 Database for udviklere Jan Lund Madsen PBS10107 Indhold LINQ... 3 LINQ to SQL og Arkitektur... 3 O/R designere... 5 LINQ Den store introduktion med.net 3.5 er uden tvivl LINQ(udtales link): Language-INtegrated

Læs mere

ER-modellen. Databaser, efterår Troels Andreasen. Efterår 2002

ER-modellen. Databaser, efterår Troels Andreasen. Efterår 2002 Databaser, efterår 2002 ER-modellen Troels Andreasen Datalogiafdelingen, hus 42.1 Roskilde Universitetscenter Universitetsvej 1 Postboks 260 4000 Roskilde Telefon: 4674 2000 Fax: 4674 3072 www.dat.ruc.dk

Læs mere

Aftenskole i programmering sæson Core Data del 2. Sæson 2-13

Aftenskole i programmering sæson Core Data del 2. Sæson 2-13 Core Data del 2 Sæson 2-13 Sidste uge I sidste uge lavede vi en ny simpel app til brug for at lære Core Data Vi brugte kun elementer i har lært så i burde kunne lave den selv og skulle også helst lave

Læs mere

DESIGN. Blog: http://annehindkjaer.com/blog/index.php. Portfolioer: http://annehindkjaer.com. CPH-mails: cph-ac148@cphbusiness.dk

DESIGN. Blog: http://annehindkjaer.com/blog/index.php. Portfolioer: http://annehindkjaer.com. CPH-mails: cph-ac148@cphbusiness.dk DESIGN Gruppenr: 5 Portfolioer: http://annehindkjaer.com http://mettegottlieb.dk http://metaemilie.dk CPH-mails: cph-ac148@cphbusiness.dk cph-mp327@cphbusiness.dk cph-mh542@cphbusiness.dk Blog: http://annehindkjaer.com/blog/index.php

Læs mere

Grundlæggende Programmering ITU, Efterår 1999. Skriftlig eksamen i Grundlæggende Programmering

Grundlæggende Programmering ITU, Efterår 1999. Skriftlig eksamen i Grundlæggende Programmering Skriftlig eksamen i Grundlæggende Programmering ITU, 20. januar 2000 Alle hjælpemidler tilladt, dog ikke datamat. Eksamen er skriftlig, fire timer, og bedømmes efter 13-skalaen. Opgavesættet består af

Læs mere

Software Construction 1 semester (SWC) Spørgsmål 1

Software Construction 1 semester (SWC) Spørgsmål 1 Spørgsmål 1 Objekter #1 Giv en kort præsentation af begrebet objekt, samt hvorledes du erklærer(declare), opretter(create) og bruger objekter Du kan beskrive o Datatyper o Variable / Instans variable /

Læs mere

Object-Relational Mapping

Object-Relational Mapping Databaser for udviklere () Datamatiker TietgenSkolen Underviser: Allan Helboe 06-06-2010 Problemformulering Denne opgave er et forsøg på at beskrive problemerne der opstår ved anvendelsen af en relationel

Læs mere

APV og trivsel 2015. APV og trivsel 2015 1

APV og trivsel 2015. APV og trivsel 2015 1 APV og trivsel 2015 APV og trivsel 2015 1 APV og trivsel 2015 I efteråret 2015 skal alle arbejdspladser i Frederiksberg Kommune udarbejde en ny grundlæggende APV og gennemføre en trivselsundersøgelse.

Læs mere

A Profile for Safety Critical Java

A Profile for Safety Critical Java A Profile for Safety Critical Java Martin Schoeberl Hans Søndergaard Bent Thomsen Anders P. Ravn Præsenteret af: Henrik Kragh-Hansen November 8, 2007 Forfatterne Martin Schoeberl Udvikler af JOP processoren

Læs mere

Software Design (SWD) Spørgsmål 1

Software Design (SWD) Spørgsmål 1 Spørgsmål 1 Unified Process Du skal give en beskrivelse af Unified Process. Beskrivelsen skal indeholde forklaring på følgende begreber: Phase Iteration Discipline Activity Milestone Artifact Spørgsmål

Læs mere

Kursusgang 11. Oversigt: Sidste kursusgang Værktøjer til udvikling og implementering af HCI-design Oversigt over Java Swing

Kursusgang 11. Oversigt: Sidste kursusgang Værktøjer til udvikling og implementering af HCI-design Oversigt over Java Swing Kursusgang 11 Oversigt: Sidste kursusgang Værktøjer til udvikling og implementering af HCI-design Oversigt over Java Swing Design af brugerflader 11.1 Samme sted Forskellige steder Sidste kursusgang Samtidigt

Læs mere

Introduktion til programmering

Introduktion til programmering Introduktion til programmering Databaser Uge 37 Computer Science, kap 9. Hugh Darwen: what a database really is, G. Riccardi: Princples of database systems, kap 2., kompendium. Sidste gang Computerens

Læs mere

METODER ARV KLASSER. Grundlæggende programmering Lektion 5

METODER ARV KLASSER. Grundlæggende programmering Lektion 5 METODER KLASSER ARV Grundlæggende programmering Lektion 5 1 METODER Sekvenser af kode om samme emne 2 REPETITION Række af statements der udfører en handling Mindst én metode der hedder main Forskellen

Læs mere

Introduktion til programmering. Uge 38.1 Python 2 Learning Python, kap 8-12.

Introduktion til programmering. Uge 38.1 Python 2 Learning Python, kap 8-12. Introduktion til programmering Uge 38.1 Python 2 Learning Python, kap 8-12. Opsummering Store dele af Python kan forstås gennem følgende simple model: En repræsentation/udtryk står for et objekt/en værdi

Læs mere

Programmering C RTG - 3.3 09-02-2015

Programmering C RTG - 3.3 09-02-2015 Indholdsfortegnelse Formål... 2 Opgave formulering... 2 Krav til dokumentation af programmer... 3 ASCII tabel... 4 Værktøjer... 5 Versioner af ASCII tabel... 6 v1.9... 6 Problemer og mangler... 6 v2.1...

Læs mere

Miniprojekt 3: Fejlkorligerende køder Fejlkorrigerende koder

Miniprojekt 3: Fejlkorligerende køder Fejlkorrigerende koder Miniprojekt 3: Fejlkorligerende køder Fejlkorrigerende koder Denne note er skrevet med udgangspunkt i [, p 24-243, 249] Et videre studium kan eksempelvis tage udgangspunkt i [2] Eventuelle kommentarer

Læs mere

ER-modellen. Databaser, efterår 2002. Troels Andreasen. Efterår 2002

ER-modellen. Databaser, efterår 2002. Troels Andreasen. Efterår 2002 Databaser, efterår 2002 ER-modellen Troels Andreasen Datalogiafdelingen, hus 42.1 Roskilde Universitetscenter Universitetsvej 1 Postboks 260 4000 Roskilde Telefon: 4674 2000 Fax: 4674 3072 www.dat.ruc.dk

Læs mere

Ledelsestilsyn/Anvisning

Ledelsestilsyn/Anvisning Ledelsestilsyn/Anvisning 1. Anvisningsrapporten Åbnes i Portal... 3 1.1. Rapporten dannes det tager kun et øjeblik.... 4 2. Dykke ned i rapporten... 5 2.1. Saldo pr. dimension... 6 2.2. Finansposteringer...

Læs mere

Undersøgelse af den Relationelle koordinering i projektet En god start-sammen i Hjørring kommune og Sygehus Vendsyssel

Undersøgelse af den Relationelle koordinering i projektet En god start-sammen i Hjørring kommune og Sygehus Vendsyssel Undersøgelse af den Relationelle koordinering i projektet En god start-sammen i Hjørring kommune og Sygehus Vendsyssel Afslutningskonference for Satspuljeprojekt: Børns trivsel i udsatte familier med overvægt

Læs mere

BILAG A SPØRGESKEMA. I denne At-vejledning præsenteres et kort spørgeskema med i alt 44 spørgsmål fordelt på otte skalaer.

BILAG A SPØRGESKEMA. I denne At-vejledning præsenteres et kort spørgeskema med i alt 44 spørgsmål fordelt på otte skalaer. 16 BILAG A SPØRGESKEMA I denne At-vejledning præsenteres et kort spørgeskema med i alt 44 spørgsmål fordelt på otte skalaer. Skalaernes spørgsmål indgår i et større spørgeskema, der omfatter i alt 26 skalaer

Læs mere

Videregående programmering i Java

Videregående programmering i Java Videregående programmering i Java Dag 9 Andre designmønstre Andre designmønstre: Uforanderlig, Fluevægt, Lagdelt Initialisering, Komposit/Rekursiv Komposition, Kommando/Ændring Fremlæggelse af programmering/status

Læs mere

Polynomier et introforløb til TII

Polynomier et introforløb til TII Polynomier et introforløb til TII Formål At introducere polynomier af grad 0, 1, 2 samt højere, herunder grafer og rødder At behandle andengradspolynomiet og dets graf, parablen, med fokus på bl.a. toppunkt,

Læs mere

Variabel- sammenhænge

Variabel- sammenhænge Variabel- sammenhænge Udgave 2 2009 Karsten Juul Dette hæfte kan bruges som start på undervisningen i variabelsammenhænge for stx og hf. Hæftet er en introduktion til at kunne behandle to sammenhængende

Læs mere

Spørgsmål og svar om håndtering af udenlandsk udbytteskat marts 2016

Spørgsmål og svar om håndtering af udenlandsk udbytteskat marts 2016 Indhold AFTALENS FORMÅL... 2 Hvilken service omfatter aftalen?... 2 Hvad betyder skattereduktion, kildereduktion og tilbagesøgning?... 2 AFTALENS INDHOLD OG OPBYGNING... 3 Hvilke depoter er omfattet af

Læs mere

class subklasse-navn extends superklasse-navn { } NorwaySpruce har superklassen Spruce, som igen har superklassen Tree.

class subklasse-navn extends superklasse-navn { } NorwaySpruce har superklassen Spruce, som igen har superklassen Tree. Programmering 1999 Forelæsning 11, tirsdag 5. oktober 1999 Oversigt Klasse-hierarkier: superklasser og subklasser Nedarvning Polymorfi Programmering 1999 KVL Side 11-1 Hierarkier En klasse repræsenterer

Læs mere

Undervisningsbeskrivelse

Undervisningsbeskrivelse Undervisningsbeskrivelse Stamoplysninger til brug ved prøver til gymnasiale uddannelser Termin Juni 2016 Institution CampusVejle Uddannelse Fag og niveau Lærer(e) Hold Hhx Informationsteknologi C Peter

Læs mere

Introduktion til programmering. Programmeringssprog Uge 44 Computer Science, kap 6. Learning Python: kap 13, 14.

Introduktion til programmering. Programmeringssprog Uge 44 Computer Science, kap 6. Learning Python: kap 13, 14. Introduktion til programmering Programmeringssprog Uge 44 Computer Science, kap 6. Learning Python: kap 13, 14. Plan Programmeringsparadigmer Funktionel programmering i Python Pause Scope: referencekonteksten

Læs mere

PHP 3 UGERS FORLØB PHP, MYSQL & SQL

PHP 3 UGERS FORLØB PHP, MYSQL & SQL PHP 3 UGERS FORLØB PHP, MYSQL & SQL Uge 1 & 2 Det basale: Det primære mål efter uge 1 og 2, er at få forståelse for hvordan AMP miljøet fungerer i praksis, og hvordan man bruger PHP kodesproget til at

Læs mere

Netværk & elektronik

Netværk & elektronik Netværk & elektronik Oversigt Ethernet og IP teori Montering af Siteplayer modul Siteplayer teori Siteplayer forbindelse HTML Router (port forwarding!) Projekter Lkaa Mercantec 2009 1 Ethernet På Mars

Læs mere

It og informationssøgning Forelæsning 7 1. november 2006 Jakob Grue Simonsen. Indlejring og Nedarvning

It og informationssøgning Forelæsning 7 1. november 2006 Jakob Grue Simonsen. Indlejring og Nedarvning It og informationssøgning Forelæsning 7 1. november 2006 Jakob Grue Simonsen Indlejring og Nedarvning Downey, Elkner & Meyers: Chapt. 15-16 Andersen & Simonsen: kap. 8 Vi har tidligere set løkker af forskellig

Læs mere

SWC eksamens-spørgsmål. Oversigt

SWC eksamens-spørgsmål. Oversigt SWC eksamens-spørgsmål Oversigt #1 Typer og variable #2 Aritmetik og logik #3 Klasser (definition, objekter) #4 Klasser (metoder) #5 Klasser (nedarvning, polymorfi) #6 Conditional statements #7 Repetition

Læs mere

Aarhus Universitet, Science and Technology, Computer Science. Mock Exam. Wednesday 27 June 2018, 9:00-11:00

Aarhus Universitet, Science and Technology, Computer Science. Mock Exam. Wednesday 27 June 2018, 9:00-11:00 Page 1/15 Aarhus Universitet, Science and Technology, Computer Science Mock Exam Wednesday 27 June 2018, 9:00-11:00 Allowed aid: None The exam questions are answered on the problem statement that is handed

Læs mere

Objekt-orienteret programmering uden klasser: Self.

Objekt-orienteret programmering uden klasser: Self. Objekt-orienteret programmering uden klasser: Self. Sammenligning klasse-baseret og klasseløs programstrukturering. Basale forhold Singulære objekter Dynamisk nedarvning Variable i forhold til metoder.

Læs mere

Miniprojekt2011. Formålet er at lære og indlære god objektorienteret programudvikling og programmering med Java, samt undervejs at opfylde studiekrav.

Miniprojekt2011. Formålet er at lære og indlære god objektorienteret programudvikling og programmering med Java, samt undervejs at opfylde studiekrav. Miniprojekt2011 Projektbeskrivelse Der skal fremstilles en lille java application på PC, hvor brugeren kan foretage interaktioner med en simpel database på disken via et grafisk brugerinterface. Formålet

Læs mere

DM507 Algoritmer og datastrukturer

DM507 Algoritmer og datastrukturer DM507 Algoritmer og datastrukturer Forår 2013 Projekt, del I Institut for matematik og datalogi Syddansk Universitet 5. marts, 2013 Dette projekt udleveres i to dele. Hver del har sin deadline, således

Læs mere

Datalogi OB, Efterår 2002 OH er, forelæsning 10/ Klasser og nedarvning

Datalogi OB, Efterår 2002 OH er, forelæsning 10/ Klasser og nedarvning Datalogi OB, Efterår 2002 OH er, forelæsning 10/9-2002 Klasser og nedarvning Hvad er formålet? Typer, generisk kode, typeparameterisering Kritisk kig på, hvordan man gør i Java. Eftermiddagens opgave:

Læs mere

Jacob Nordfalk. Ingeniørhøjskolen i København. Nykøbing F itvisioncenter 24. februar 2004

Jacob Nordfalk. Ingeniørhøjskolen i København. Nykøbing F itvisioncenter 24. februar 2004 Genbrugelige komponenter og designmønstre i Java Jacob Nordfalk Ingeniørhøjskolen i København Nykøbing F itvisioncenter 24. februar 2004 Program Om Jacob Nordfalk introduktion (ikke-teknisk del) Komponentbaseret

Læs mere

4 Basal Objekt-orienteret Programmering I.

4 Basal Objekt-orienteret Programmering I. 4 Basal Objekt-orienteret Programmering I. Klasser i forhold til abstrakte datatyper og record-typer. Variable og operationer. Klasse-interfaces. Klasser og typer. Klasse-instantiering og initialisering.

Læs mere

Brug af løbenummer 098 og 099 i HR-Løn. Funktionsvederlag i HR-Løn

Brug af løbenummer 098 og 099 i HR-Løn. Funktionsvederlag i HR-Løn Brug af løbenummer 098 og 099 i HR-Løn Funktionsvederlag i HR-Løn November 2011 Introduktion I denne vejledning kan du læse om, hvordan du kan udbetale funktionsvederlag i HR-Løn. Ved hjælp af løbenummer

Læs mere

Noter til dm529. Jonas Nyrup. 11. november 2011

Noter til dm529. Jonas Nyrup. 11. november 2011 Noter til dm529 Jonas Nyrup 11. november 2011 Indhold 1 Kravdisciplinen: Kravmodellen og Indfangning af Krav 2 1.1 (ikke)-funktionelle krav...................... 2 1.2 Kravattributter...........................

Læs mere

Eksempel: et ordresystem note 5 Lagdeling s. 1

Eksempel: et ordresystem note 5 Lagdeling s. 1 Eksempel: et ordresystem note 5 Lagdeling s. 1 Eksempel: et ordre-system NiceHair er et firma, som sælger udstyr, inventar og frisørartikler til frisørsaloner over hele landet. Det er ejet af et ægtepar

Læs mere

Finde invers funktion til en 2-gradsfunktion - ved parallelforskydning. John V Petersen

Finde invers funktion til en 2-gradsfunktion - ved parallelforskydning. John V Petersen Finde invers funktion til en 2-gradsfunktion - ved parallelforskydning John V Petersen Finde invers funktion til en 2-gradsfunktion - ved parallelforskydning 2015 John V Petersen art-science-soul Indhold

Læs mere

5. Persondataloven 5.1. Indsamling, behandling, behandlingssikkerhed, videregivelse og oplysningspligt Indsamling Behandling

5. Persondataloven 5.1. Indsamling, behandling, behandlingssikkerhed, videregivelse og oplysningspligt Indsamling Behandling 5. Persondataloven Persondataloven er indført bl.a. med det formål at sikre en så god beskyttelse af borgerne som muligt i forhold til den behandling, der finder sted af personoplysninger, og reglerne

Læs mere

UDKAST til Værdighedspolitik. (Orange silhuetter kommer)

UDKAST til Værdighedspolitik. (Orange silhuetter kommer) UDKAST til Værdighedspolitik. (Orange silhuetter kommer) Et værdigt ældreliv i Albertslund Kommunerne skal i 2016 udarbejde en værdighedspolitik for perioden 2016 2019. værdighedspolitikken beskriver,

Læs mere

It og informationssøgning Forelæsning december 2006 Jakob Grue Simonsen. Diverse emner af almen interesse

It og informationssøgning Forelæsning december 2006 Jakob Grue Simonsen. Diverse emner af almen interesse It og informationssøgning Forelæsning 12 6. december 2006 Jakob Grue Simonsen Diverse emner af almen interesse 1 Gemme objekter til filer I python skal en fil på disken åbnes, før man kan læse eller skrive

Læs mere

Programmering og Problemløsning, 2017

Programmering og Problemløsning, 2017 Programmering og Problemløsning, 2017 Martin Elsman Department of Computer Science University of Copenhagen DIKU September 27, 2017 Martin Elsman (DIKU) Programmering og Problemløsning, 2017 September

Læs mere

Python programmering. Per Tøfting. MacFest

Python programmering. Per Tøfting. MacFest Python programmering MacFest 2005 Per Tøfting http://pertoefting.dk/macfest/ Indhold Måder at afvikle Python program på Variabler Data typer Tal Sekvenser Strenge Tupler Lister Dictionaries Kontrolstrukturer

Læs mere

Klasser og objekter. (Afsnit i manualen)

Klasser og objekter. (Afsnit i manualen) Klasser og objekter (Afsnit 4 + 5 i manualen) Grundbegreber Klasser og objekter beskrivelse oprettelse Attributter og metoder tilstand opførsel Indkapsling afskærmning datarepræsentationsuafhængighed Klasser

Læs mere

Introduktion til OO* og UML

Introduktion til OO* og UML Introduktion til OO* og UML Struktureret Systemudvikling Jan Bendtsen Automation and Control Indhold Hvad er OO*? UML Essensen af objekt-orienteret analyse og design: klassebegrebet Relationer mellem objekter

Læs mere

2) Det er let at være produktiv med Python, da Python som regel kun har mellem 67 og 80% færre linier end tilsvarende C eller Java kode.

2) Det er let at være produktiv med Python, da Python som regel kun har mellem 67 og 80% færre linier end tilsvarende C eller Java kode. Denne guide er oprindeligt udgivet på Eksperten.dk I gang med Python I denne artikel vil jeg forsøge at give et kort og hurtigt indblik i programmeringssproget Python, der desværre er alt for overset.

Læs mere

Eksamen, DSDS, forår 2009

Eksamen, DSDS, forår 2009 Eksamen, DSDS, forår 2009 Introduktion til Scripting, Databaser og Systemarkitektur Jonas Holbech IT Universitetet i København 3. juni 2009 Alle hjælpemidler er tilladte, dog ikke computer og kommunikationsmidler.

Læs mere

Statistikkompendium. Statistik

Statistikkompendium. Statistik Statistik INTRODUKTION TIL STATISTIK Statistik er analyse af indsamlet data. Det vil sige, at man bearbejder et datamateriale, som i matematik næsten altid er tal. Derved får man et samlet overblik over

Læs mere

Version Dato Beskrivelse 1.0.0 26/11/2012 Initial version 1.2.0 05/03/2013 Tilføjet eksempel med Template Agent, generelt udvidet dokumentet.

Version Dato Beskrivelse 1.0.0 26/11/2012 Initial version 1.2.0 05/03/2013 Tilføjet eksempel med Template Agent, generelt udvidet dokumentet. MOX og APOS2 Forord Dette dokument er en del af APOS version 2 manualerne. APOS version 2 (APOS2 herefter) er et organisation, klassifikation og personale system baseret på Sag & Dokument standarderne.

Læs mere

Eksamen, DSDS, efterår 2008

Eksamen, DSDS, efterår 2008 Eksamen, DSDS, efterår 2008 Introduktion til Scripting, Databaser og Systemarkitektur Jonas Holbech IT Universitetet i København 6. januar 2009 Alle hjælpemidler er tilladte, dog ikke computer og kommunikationsmidler.

Læs mere

Videregående Programmering for Diplom-E Noter

Videregående Programmering for Diplom-E Noter Videregående Programmering for Diplom-E Noter 1. Uddelegering Ét af de væsentlige principper i objektorienteret programmering er, at enhver klasse selv skal kunne "klare ærterne". Enhver klasse skal altså

Læs mere

Klare tal om effektiviteten i vandsektoren Partner Martin H. Thelle 22. januar 2014

Klare tal om effektiviteten i vandsektoren Partner Martin H. Thelle 22. januar 2014 Klare tal om effektiviteten i vandsektoren Partner Martin H. Thelle 22. januar 2014 Den 30. september 2013 offentliggjorde Foreningen af Vandværker i Danmark (FVD) rapporten Forbrugerejede vandværker og

Læs mere

! Kia Dahlen. Kamilla Klein, Pia Jensen og Maria Korshøj Andersen.

! Kia Dahlen. Kamilla Klein, Pia Jensen og Maria Korshøj Andersen. Copenhagen Business Academy Multimediedesigner 3. semester - 1. projekt, september 2014 Gruppe 1 - MulA Kia Dahlen. Kamilla Klein, Pia Jensen og Maria Korshøj Andersen. Study: Multimedia Design Project:

Læs mere