Kursplanering – Objektorienterad programmering Fakta Ämne Poäng Kurskod Klass Programmering 40 Yh-poäng YSYS-OOP Systemutvecklare.NET 1 Syfte och koppling till yrkesrollen Syftet är att få en stabil grund inom objektorienterad programmering. Nästan alla program som utvecklas idag skapas med hjälp av ett objektorienterat programspråk. Innehåll Objektorienterad programmering kan användas för nästan all typ av programmering och därför är denna kurs en bra grund för efterkommande kurser på utbildningen. Denna kurs behandlar objektorienterad programmering i C# och objektorienterad design för Windowsapplikationer. Mål Efter genomgången kurs skall den studerande kunna: Redogöra för objektorienterad programmeringsteknik Redogöra för principer och begrepp inom objektorienterad programmering, såsom polymorfism, typkontroll, typomvandling, klasser, arv, pekare, referenser samt klass- och funktionsmallar Planera för och konstruera objektorienterade program Planera för och konstruera grafiska användargränssnitt Dokumentera arbetet enligt de riktlinjer som lärts ut i kursen Redogöra för kravställningar som en del av programutvecklingen och kravställningens relation till andra delar av utvecklingsprocessen, t.ex. analys, design och test Utifrån en given kravspecifikation, kunna utveckla robust, flexibel och lättförstådd kod Beskriva olika faktorer och tekniker som påverkar ett programs robusthet och flexibilitet Redogöra för på vilka olika sätt objektorienterad programmering underlättar återanvändning av programvara Använda viktiga principer för objektorienterad analys och design Använda designmönster och kunna referera till dessa designmönster när studenten diskuterar en design Uttrycka kod i UML och kunna översätta UML-diagram till kod Kritiskt och systematiskt utvärdera olika förslag på programdesign enligt fastställda kriterier Redogöra för en designs för- och nackdelar och då referera till vedertagna termer Lärare och kursansvarig Mahmud Al Hakim [email protected] 076-1659879 Sida 1 av 8 Obligatorisk Litteratur Titel Skarp programmering med C# Författare Jan Skansholm Kommentar Upplaga: 1 Utgivningsår: 2008 Sidantal: 570. Kompletterande material till boken finns här: http://www.cse.chalmers.s e/~skanshol/skarp/ Den obligatoriska litteraturen ingår i examinerande moment. Titel Referenslitteratur Författare Område som fördjupningen behandlar Visual C# resources http://goo.gl/rtBGia Allt C# Svenska Spellista http://goo.gl/w4ztlc Videor som behandlar grunderna inom C# C# Tutorials http://goo.gl/ZEaJod Bra exempel och övningar Csharpskolan.se www.csharpskolan.se Div. C# artiklar Referenslitteraturen ger dig en möjlighet att fördjupa dig inom ämnets olika områden. Du kan även använda referenslitteraturen för att skapa större utmaningar i dina studier. Denna litteratur ingår inte i examinerande moment. Schema Datum Tid Moment 26/8 09.00-16.00 Förmiddag (9.00–12.00) Introduktion till kursen och genomgång av kursplanering Introduktion till Programmering .NET C# och Visual Studio Kompilering och exekvering av C#-program Litteraturhänvisning Att läsa: Sid. 140 Eftermiddag (13.00–16.00) Variabler Selektioner (if-satsen) Dialogrutor Inlämningsuppgift 1 delas ut. (redovisas senast 9-10/9) 27/8 09.00-16.00 Förmiddag (9.00–12.00) Laboration 1 - Grupp 1 Eftermiddag (13.00–16.00) Laboration 1 - Grupp 2 Sida 2 av 8 Arbeta med övn. 1-6 sid. 57 8/9 9/9 10/9 09.00-16.00 09.00-16.00 09.00-16.00 Förmiddag (9.00–12.00) Repetitioner (while-satsen och for-satsen) Nästlade repetitioner Introduktion till grafiska program Att läsa: sid. 4157 Eftermiddag (13.00–16.00) Övningar Övning 10-11 sid. 58 Förmiddag (9.00–12.00) Klasser och objekt Introduktion till objektorientering Introduktion till UML Klassdiagram Klassdeklarationer Mer om variabler Lokala variabler, instansvariabler Datatyper (enkla typer) Operatorer Intro till Statiska variabler (klassvariabler) Tilldelning och typomvandling Metoder Att läsa: sid. 5991 Eftermiddag (13.00–16.00) Laboration 2 - Grupp 1 Inlämningsuppgift 1 redovisas. Arbeta med övn. 7-11 sid. 57-58 och övn. 1-9 sid.115-116 Förmiddag (9.00–12.00) Standardklassen String Konstruktorer Överlagrade metoder Standardklassen Random Struct-typer Egenskaper (properties) Objektinitierare och anonyma typer Att läsa: sid. 92115 Inlämningsuppgift 2 Delas ut. (redovisas senast 23-24/9) Eftermiddag (13.00–16.00) Laboration 2 - Grupp 2 Inlämningsuppgift 1 redovisas. Sida 3 av 8 Arbeta med övn. 7-11 sid. 57-58 och övn. 1-9 sid.115-116 22/9 09.00-16.00 Förmiddag (9.00–12.00) Mer om klasser och typer Namnrymder Inkapsling och synlighet Statiska variabler Konstanter Att läsa: sid.117-134 Eftermiddag (13.00-16.00) Självstudier 23/9 09.00-16.00 Förmiddag (9.00–12.00) Standardklassen Math Parameteröverföring Referensen this Tilläggsmetoder Uppräkningstyper Att läsa: sid. 134-148 Eftermiddag (13.00–16.00) Laboration 3 - Grupp 1 Arbeta med övn. 1-10 sid. 149-150 Inlämningsuppgift 2 redovisas. 24/9 09.00-16.00 Förmiddag (9.00–12.00) Objektorienterad programutveckling Objektorienterad Analys, design och programmering Algoritmer Relationer Att läsa: sid. 151172 Inlämningsuppgift 3 delas ut (redovisas senast 7-8/10 ) Eftermiddag (13.00–16.00) Laboration 3 - Grupp 2 Inlämningsuppgift 2 redovisas Arbeta med övn. 1-10 sid. 149150 6/10 13.00-16.00 Eftermiddag (13.00–16.00) Fält (array) Sökning och sortering Att läsa: sid. 173196 7/10 09.00-16.00 Förmiddag (9.00–12.00) Listor Flerdimensionella fält Delegater Att läsa: sid.196218 Eftermiddag (13.00–16.00) Laboration 4 - Grupp 1 Arbeta med övn. 1-11 sid. 218220 Inlämningsuppgift 3 redovisas Sida 4 av 8 8/10 09.00-16.00 Förmiddag (9.00–12.00) Läsning och skrivning Nationella inställningar Redigering av text Avkodning av data Felkontroll Textfiler Datum och tider Att läsa: sid. 221238 Inlämningsuppgift 4 delas ut (redovisas senast 21-22/10 ) Eftermiddag (13.00–16.00) Laboration 4 - Grupp 2 Arbeta med övn. 1-11 sid. 218220 Inlämningsuppgift 3 redovisas 20/10 09.00-16.00 Förmiddag (9.00–12.00) Arv Subklasser Virtuella metoder Dynamisk bindning Objektsamlingar Abstrakta klasser Att läsa: sid. 239260 Eftermiddag (13.00-16.00) Självstudier 21/10 22/10 09.00-16.00 09.00-16.00 Förmiddag (9.00–12.00) Gränssnitt (Interface) Jämförbara objekt Ett objektorienterat exempel Att läsa: sid. 261280 Eftermiddag (13.00–16.00) Laboration 5 - Grupp 1 Inlämningsuppgift 4 redovisas Arbeta med övn. 1-8 sid. 281-282 Förmiddag (9.00–12.00) Exceptionella händelser Try-catch Att läsa: sid. 283294 Inlämningsuppgift 5 delas ut (redovisas senast 4-5/11 ) Eftermiddag (13.00–16.00) Laboration 5 - Grupp 2 Inlämningsuppgift 4 redovisas Sida 5 av 8 Arbeta med övn. 1-8 sid. 281-282 3/11 09.00-16.00 Förmiddag (9.00–12.00) Grafiska användargränssnitt del 1 Att läsa: sid. 295324 Eftermiddag (13.00–16.00) Övningar 5/11 09.00-16.00 Förmiddag (9.00–12.00) Grafiska användargränssnitt del 2 Att läsa: sid. 325346 Inlämningsuppgift 6 delas ut (redovisas senast 18-19/11 ) 17/11 09.00-16.00 Eftermiddag (13.00–16.00) Laboration 6 - Grupp 1 Inlämningsuppgift 5 redovisas Arbeta med övn. 1-7 sid. 376-378 Förmiddag (9.00–12.00) Grafiska användargränssnitt del 3 Att läsa: sid. 346376 Eftermiddag (13.00–16.00) Gästföreläsning Systemutvecklingsprocessen, olika roller i ett projekt och vilka egenskaper som krävs för att vara konsult. Övningar 18/11 09.00-16.00 Förmiddag (9.00–12.00) Konstruktion av egna grafiska komponenter Att läsa: sid. 379400 del 1 19/11 09.00-16.00 Eftermiddag (13.00–16.00) Laboration 7 - Grupp 1 Inlämningsuppgift 6 redovisas Arbeta med övn. 1-7 sid. 413-414 Förmiddag (9.00–12.00) Konstruktion av egna grafiska komponenter del 2 Att läsa: sid. 400413 Inlämningsuppgift 7 (VGUppgift) delas ut Obligatorisk om du satsar på betyget VG OBS! Du måste lämna in alla uppgifter för att få VG i kursen. (redovisas senast 2-3/12 ) Sida 6 av 8 28/11 fredag 1/12 09.00-16.00 09.00-16.00 Eftermiddag (13.00–16.00) Laboration 7 - Grupp 1 Inlämningsuppgift 6 redovisas Arbeta med övn. 1-7 sid. 413-414 Förmiddag (9.00–12.00) Mer om användargränssnitt Att läsa: sid. 415-455 Eftermiddag (13.00–16.00) Övningar Arbeta med övn. 1-6 sid. 455-456 Förmiddag (9.00–12.00) Generiska konstruktioner och containerklasser Att läsa: sid. 483513 Eftermiddag (13.00–16.00) Extra redovisningstillfälle Att läsa: sid. 457482 Strömmar och filer (egen läsning/överkurs) 2/12 3/12 10/12 Examination och betygssättning 09.00-16.00 09.00-16.00 09.00-12.00 Förmiddag (9.00–12.00) do-satsen switch-satsen Villkorsoperatorn goto-satsen Att läsa. sid. 515524 Eftermiddag (13.00–16.00) Laboration 8 - Grupp 1 Inlämningsuppgift 7 redovisas Arbeta med övn. 1-9 sid. 549-550 Förmiddag (9.00–12.00) Rekursion Trådar Att läsa. sid. 533549 Eftermiddag (13.00–16.00) Laboration 8 - Grupp 2 Inlämningsuppgift 7 redovisas Arbeta med övn. 1-9 sid. 549-550 Skriftligt prov I denna kurs kommer betyget i huvudsak sättas utifrån följande underlag: Kursen examineras genom totalt 7 inlämningsuppgifter inkl. en VGUppgift samt ett slutprov på plats. Inlämningsuppgifterna delas ut varannan vecka och behandlar centrala moment under de aktuella avsnitten. Det räcker att redovisa uppgift 1-6 om man enbart satsar på betyget G. Alla inlämningsuppgifter måste vara inlämnade innan onsdag den 3 december 2014 kl. 16.00 Sida 7 av 8 Allt som den studerande presterar under kurstiden kommer att vägas in vid betygssättningen. Det gäller till exempel prov, inlämningsuppgifter och de kunskaper, färdigheter samt den förståelse som uppvisas under lektionstid. Betygskriterierna för Godkänd respektive Väl godkänd är: Godkänd Den studerande redogör för objektorienterad programmeringsteknik Den studerande redogör för principer och begrepp inom objektorienterad programmering, såsom polymorfism, typkontroll, typomvandling, klasser, arv, pekare, referenser samt klass- och funktionsmallar Den studerande planerar för och konstruerar objektorienterade program Den studerande planerar för och konstruerar grafiska användargränssnitt Den studerande dokumenterar arbetet enligt de riktlinjer som lärts ut i kursen Den studerande skriver kommentarer till varje algoritm Den studerande redogör för kravställningar som en del av programutvecklingen och kravställningens relation till andra delar av utvecklingsprocessen, t.ex. analys, design och test Den studerande utvecklar robust, flexibel och lättförstådd kod utifrån en given kravspecifikation utveckla robust, flexibel och lättförstådd kod beskriver olika faktorer och tekniker som påverkar ett programs robusthet och flexibilitet Den studerande redogöra för på vilka olika sätt objektorienterad programmering underlättar återanvändning av programvara Den studerande använder viktiga principer för objektorienterad analys och design Den studerande använder designmönster och kan referera till dessa designmönster när studenten diskuterar en design Den studerande uttrycker kod i UML och kan översätta UML-diagram till kod Den studerande utvärderar kritiskt och systematiskt olika förslag på programdesign enligt fastställda kriterier Den studerande redogör för en designs för- och nackdelar och kan referera till vedertagna termer Väl godkänd Den studerande planerar för och konstruerar självständigt och med säkerhet objektorienterade program med hjälp av C# Den studerande visar förmåga att självständigt kunna implementera en objektorienterad design med hjälp av C# Sida 8 av 8
© Copyright 2024