Omtentamen i OOPW, 29 augusti 2013 kl. 9-13

Relevanta dokument
Ordinarie tentamen i OOSU2, 26 mars 2014

Omtentamen i OOSU2, 16 maj 2014

Omtentamen i OOSU2, 21 augusti 2014

7,5 högskolepoäng. Objektorienterad systemutveckling I Provmoment: Ladokkod: 21OS1B Tentamen ges för: Lycka till! /Peter & Petter

7,5 högskolepoäng. Objektorienterad systemutveckling I. Lycka till! /Peter & Petter. Provmoment: Ladokkod: 21OS1B Tentamen ges för:

Systemvetarutbildningen och dataekonomutbildningen

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

Grundläggande programmering med C# 7,5 högskolepoäng

Systemvetarutbildningen och dataekonomutbildningen

Systemvetarutbildningen och dataekonomutbildningen

Viktigt! Glöm inte att skriva tentamenskod på alla blad du lämnar in.

Laboration 1 - Grunderna för OOP i Java

PROGRAMMERINGSTEKNIK TIN212

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

1 Repetition av viktiga begrepp inom objektorienterad programmering

OBJEKTORIENTERAD PROGRAMVARUUTVECKLING. Övningstentamen 1

Tentamen i TDP004 Objektorienterad Programmering Praktisk del

Diagnostiskt Prov. Antaganden Om förutsättningar saknas I en uppgift skall rimliga antaganden göras och nedtecknas.

Teoretisk del. Facit Tentamen TDDC kl (6) 1. (6p) "Snabba frågor" Alla svar motiveras väl.

Repetition av viktiga begrepp inom objektorienterad programmering

Tentamen i Objektorienterad programmering

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

DAT043 - Föreläsning 7

Projekt i programmering 1 (ver 2)... 2 Projektidé... 2 Planering... 2 Genomförande... 2 Testning och buggar... 3 Utvärdering... 3 Planering...

1 Översikt Vad är kontokoder? Konto/Mapp uppbyggnad Tillgång till Kontokoder Område Kontokoder...5

Det här dokumentet är till för att ge en översikt över ASP.NET MVC samt hur WCF Services används från.net applikationer.

Telia Connect för Windows

Självservice för Timanställda

Objektorienterad Programkonstruktion, DD1346. Tentamen , kl

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

Objektorienterad programmering Föreläsning 10. Copyright Mahmud Al Hakim Sorteringsalgoritmer

Game of 40. Regler och om sidan är in princip samma sak. Det som skiljer dem åt är att de inte har samma text.

TENTAMEN I PROGRAMMERING. På tentamen ges graderade betyg:. 3:a 24 poäng, 4:a 36 poäng och 5:a 48 poäng

Grundläggande programmering med C# 7,5 högskolepoäng. Provmoment: Ladokkod: Tentamen ges för:

Högskolan Dalarna sid 1 av 7 DI-institutionen Hans-Edy Mårtensson Sten Sundin

Version

"Är en"-relation. "Har en"-relation. Arv. Seminarium 2 Relevanta uppgifter. I exemplet Boll från förra föreläsningen gällde

Polymorfi. Objektorienterad och komponentbaserad programmering

Inloggning och hitta till dina sidor

Office 365 Kompetens 2014 / MB

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

Skapa spellista i play.lnu.se Gör en samling med filmer som hör ihop

Teoretisk del. Facit Tentamen TDDC (6)

Manual 1.0 för att posta nyheter på IF Åland orienterings hemsida (

Översikt. Installation av EasyPHP 1. Ladda ner från Jag använder Release Installera EasyPHP.

Kopiering av objekt i Java

DIAGNOSTISKT PROV. Tid. Hjälpmedel. Antaganden. Rättning. Övrigt. Diagnostiskt Prov. Klockan Inga

Omtentamen för TDA540 Objektorienterad Programmering. Institutionen för Datavetenskap CTH HT-17, TDA540. Dag: , Tid:

Objektorienterad Programkonstruktion. Föreläsning jan 2016

TENTAMEN PROGRAMMERING I JAVA, 5P SOMMARUNIVERSITETET

Manual för nyheter och kalendarium-publicering

Objektorienterade programmeringsspråk. Objektorienterade språk. Den objekt-orienterade modellen. Jämför med icke-oo

Tentamen i Grundläggande programmering STS, åk 1 fredag

Tentamen för kursen Objektorienterad programvaruutveckling GU (DIT010)

Kom igång. Readyonet Lathund för enkelt admin. Logga in Skriv in adressen till din webbsida följt av /login. Exempel:

Att använda ELSA. Vad behövs för att använda ELSA?. Felrapportering och support

Att koppla FB till AD-inloggning

2I1049 Föreläsning 5. Objektorientering. Objektorientering. Klasserna ordnas i en hierarki som motsvarar deras inbördes ordning

Office 365 MB. Innehåll. Inledning / Inställningar Outlook (e-post) Kalender Personer (kontakter)... 5 OneDrive molnet... 5.

Användarmanual Brunskog Transportbokning.

Testning av applikationer

Marknadsföringslistor

TENTAMEN OOP

Tentamen, Algoritmer och datastrukturer

Arg-administratörens guide till Umbraco v 1.2.1

Förstå grunderna i LINQ. Mål med lektionen!

Lösningsförslag till tentamen för TDA540 Objektorienterad Programmering

Manual för ParaDifo Vårdgivare/Utförare inom Individ och Familjeomsorg

Mål med lektionen! Repetera och befästa kunskaperna.

Grundläggande programmering med C# 7,5 högskolepoäng. Provmoment: Ladokkod: Tentamen ges för: TEN1 NGC011 ADAEK17, ASYST17 samt öppen för alla

Introduktion till arv

1. Allmänt. 2. Logga in till hemsidan. Manual

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

Självservice för Timanställda

Introduktion. Klasser. TDP004 Objektorienterad Programmering Fö 2 Objektorientering grunder

Objektorienterad Systemutveckling 1 (7,5 hp)

Redaktörshandbok. Produktvarianter. Caupo Produktvarianter - 1 -

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

HANDBOK NYHETER (inkl. logga och pdf) I OEW

Objektorientering: Lagring och livstid

SKOLFS. beslutade den -- maj 2015.

Utskrift av karta. Skriv ut en karta. Skriv ut skärmområde

Tentamen i TDP004 Objektorienterad Programmering Lösningsförslag

Statistik över heltal

Laboration 1 Introduktion till Visual Basic 6.0

TENTAMEN I DATAVETENSKAP

Objektorientering: Lagring, räckvidd och livstid

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

Imperativ programmering. Föreläsning 4

Labb i Datorsystemteknik och programvaruteknik Programmering av kalkylator i Visual Basic

First Class uppgift 2

Innehåll. Inloggningen. Kort manual för dig som ska jobba med medarbetare som publicerare. Den innehåller lite

Webbinställningar. Opus Online Client. Sida 1 av 16

Rapportera avhandling/uppsats

Tentamen Grundläggande programmering

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

TDDE10 TDDE11, 725G90. Objektorienterad programmering i Java, Föreläsning 3 Erik Nilsson, Institutionen för Datavetenskap, LiU

FrontPage Express. Ämne: Datorkunskap (Internet) Handledare: Thomas Granhäll

Omtentamen för TDA540 Objektorienterad Programmering. Institutionen för Datavetenskap CTH HT-16, TDA540. Dag: , Tid:

LÖSNINGSFÖRSLAG TENTAMEN

Transkript:

Petter Dessne, HIT 2013-08-19 Omtentamen i OOPW, 29 augusti 2013 kl. 9-13 Maxpoäng: 100. Betygsgränser: A: 90p + B: 80p + C: 70p + D: 60p + E: 50p + Mindre än 50 poäng ger underkänd tentamen. Poängen kan fördelas hur som helst mellan uppgifterna. Observera att varken jag (Petter) eller Björn Abelli finns tillgängliga på tentamensdagen, men frågorna bör vara enkla att förstå. Är det något du inte uppfattar så förklara hur du tolkar uppgiften och gör så gott du kan. Hjälpmedel: Papper och penna, samt dator för programmeringsuppgiften (det är alltså endast EN programmeringsuppgift som kräver dator). Du kan lösa flera uppgifter på samma pappersark om du vill, eftersom jag rättar alla uppgifterna denna gång. Resultatet på omtentan bör vara dig tillhanda senast den 18 september. Lycka till! Petter

Frågor till omtentamen i OOPW, augusti 2013 Del 1, allmänt om OO,.Net samt C# (svara på papper) Uppgift 1. (7 p) Du har fått i uppdrag av din chef att ge förslag på en strategi för ett egenutvecklat administrativt system. Du bestämmer dig snart för att jobba med Microsoft-teknik eftersom det är lätt att integrera med organisationens övriga system. Men ett system kan vara både webbaserat (Asp.Net) och Windows-baserat (Windows Forms). Vad är det som avgör vilken väg du väljer? Beskriv alltså för- och nackdelar med att ha ett system baserat på Asp.Net, respektive för- och nackdelar med att ha ett system Windows Forms-baserat. När (storlek på organisationen, typ av organisation, typ av system etc) passar vilken strategi bäst? Uppgift 2. (6 p) Beskriv vad är List (även kallad List<T>) är för något i C#. Skriv vad den används till och ge exempel på användbar List-syntax för att t.ex. lägga till, sortera, plocka fram och ta bort element. Uppgift 3. (12 p, tre poäng per rätt svar) (a) Om felhantering: När exekveras kod som skrivs i finally-blocket? Alternativ: A. Bara om koden i catch-blocket har exekverats (ett fel uppstod). B. Alltid, oberoende om ett fel uppstod eller ej. C. Det finns inget som heter finally! D. Bara om koden i try-blocket har exekverats (dvs. inget fel uppstod). (b) Vad skrivs ut från följande kod? object[] arr = new object[4]; arr[0] = new StringBuilder(); arr[1] = "hej"; arr[2] = new int[1]; arr[3] = "oopw"; var result = array.oftype<string>(); foreach (var element in result) { Console.WriteLine(element); } (c) En metod som endast kan anropas inifrån en instans eller den egna klassen, kallas för en? Alternativ: A. Statisk metod. B. Publik metod. C. Abstrakt metod. D. Privat metod.

(d) Hur skriver man i C# i klassdeklarationen för klassen Barn för att visa att klassen Barn ärver klassen Pappa? Uppgift 4. (15p) Här följer ett antal frågor om objektorientering och i viss mån C#. Svara så gott du kan, och rita gärna figurer för att förklara. a) Vad är ett interface? b) Vad menas med en association? Ge även exempel på associationer! c) Vad menas med överskuggning? Ge även exempel! d) Vad är polymorfism? När kan polymorfism vara användbart? e) Vad innebär att en metod är static? Vad är det bra för?

Del 2, Asp.Net (svara på papper) Uppgift 5. (25 p) Beskåda skärmdumpen nedan. Det är som kanske framgår en inloggningssida till ett administrationsgränssnitt för en portal. Här följer ett antal frågor/uppgifter rörande Asp.Net/C# och inloggning mm. Använd så många pappersark som du behöver, det viktiga är att det syns tydligt vad du skriver. Om du inte kan exakt syntax så skriv i pseudokod. a) Skriv.aspx-koden för textboxarna och lablarna etc, dvs koden mellan div-taggarna för det färgade fältet. b) Skriv lämplig kod i code-behind, som ska triggas när man trycker på login-knappen: Skriv kod för validering. Skriv även kod för att sätta en variabel (vilken typ ska det vara förresten?) som behåller personen inloggad ett tag, samt kod för att skicka vidare personen till lämplig sida, samt kom-ihåg-mig-kod så att man slipper skriva in namnet (petter) nästa gång man kommer till den här sidan. Skriv kod för nästa sida för att kolla om personen är inloggad. Om personen inte är det ska han eller hon skickas tillbaka till sidan du ser nedan.

Del 3, WinForms (praktisk kodning) Uppgift 6. (35 p) Du har pga. det soliga sommarvädret fått solsting och därför fått för dig att skapa ett skivregister i WinForms. Skapa alltså ett sådant enligt följande kriterier. Ifall tekniken kraschar på tentadagen, skriv ned vad du kan på papper, i pseudokod om du inte kan exakt kod. Allmänt: Ett system där man kan skriva in skivor, och också lista skivor som man äger. Skivorna lagras (helst) centralt i en separat klass. Startsida: En välkomstsida med välkomsttext etc efter behag En knapp som leder till sida där man skriver in en skiva En knapp som leder till en sida där man ser skivor Ny skiva: Textboxar och lablar för skivor läggs till efter förstånd. En skiva har titel, artist och årtal, vilket är lämpligt att lägga som tre comboboxar. Tabbordning ska fungera. Görs med attributet TabIndex för varje kontroll. Med andra ord: först textbox för artist, sedan trycker man på tabb och hamnar på titel och sedan på årtal. När man klickar på en Lägg till-knapp ska skivinformationen sparas (se nedan). Tidpunkt (datum och klockslag) ska läggas till per automatik när skivinfon sparas. Data ska alltså sparas på valfritt objektorienterat sätt, förslagsvis till en egen klass. (Ju bättre OO-lösning desto bättre, men gör så gott du kan och gör annorlunda om du fastnar.) Det som ska sparas är artist, titel, årtal och alltså tidpunkt. Fönstret ska stängas när skivan har lagts till. Skivlista: Lista helt enkelt alla skivor i en datagridview eller motsvarande. Rubrikerna i din datagridview ska ha lämpliga namn. Listningen kan t.ex. göras med hjälp av en datatable utifrån en loopning av dina sparade data. Lyckas du inte fylla tabellen så gör så gott du kan i övrigt, alternativt lista dina data på annat sätt. Lista helst i någon bra ordning, t.ex. sorterat på artist. Lägg också till en knapp som stänger fönstret. Övrigt: Alla sidor ska ärva från en base form i stället för från Page. Alla textboxar (eller andra kontroller om du föredrar det) i programmet ska ärva utseende (t.ex. ljusgrå bakgrund) från base form (kan göras via Linq om man så vill). Alla kontroller ska ha vettig namngivning. Alla metoder ska kommenteras på ett vettigt sätt. Obs! Stöter du på problem så strunta i kravet/egenskapen och gör så gott du kan!