Kursöversikt

Välkommen till OOD och problemlösning !

Hej och varmt välkommen tillbaka till studierna! Vi hoppas att ni har haft en fin sommar och känner er utvilade. 😀

Kursrummet i Canvas uppdateras löpande under kursens gång, men här är det viktigaste du behöver veta för att komma igång:

1. Schema och kursstart

  • Schema: Håll koll på schemat via TimeEdit. Det kan förekomma uppdateringar, så kontrollera schemat minst varannan dag (särskilt nu i början).

  • Starta i tid: Vi kör igång direkt måndag eftermiddag vecka 36! Gå in under Moduler redan nu och titta igenom materialet för v. 36 APIE så att du är förberedd.

  • Även om det står föreläsning resp övning i schemat så görs en blandning som kan innehålla genomgångar, övningar, diskussioner etc
  • Gästföreläsningar är alltid obligatoriska.

2. Kursupplägg och programmeringsspråk I denna kurs läser två program tillsammans: IT-säkerhet och Systemvetenskap.

  • Under kursen går vi igenom grundläggande principer och koncept inom objektorientering som gäller oavsett programmeringsspråk. Många av exemplen vi går igenom har C# eller Java som exempel. Övningar görs i C#. Vi rekommenderar även att använd C# tex om kod ska visa på seminarium och i projektarbetet 

  • I kursmaterialet från LinkedIn Learning används främst Java och Python, men principerna kan tillämpas och kodas i vilket objektorienterat språk som helst.

3. Kursmaterial och LinkedIn Learning Börja gärna titta på materialet i LinkedIn Learning så snart du har läst detta anslag (se rekommenderat material att läsa under varje veckas modul).

  • Kostnad & Konto: Nya användare får oftast en månads gratis provperiod på LinkedIn Learning. Därefter kostar det cirka $40/månad, och du kan avsluta abonnemanget när du vill.

  • Instruktioner: Läs mer om hur du skapar och avslutar ditt konto på kursens sida LinkedIn Learning FAQ/How-To sida.

  • Kurslitteratur: Huvudboken Objektoriented Programing using C# av  Simon Kendal finns som gratis pdf. Se också officiella kurslitterturlistan nedan.  

Grovplanering

Se respektive veckomodul för mer detaljer kring vad du ska titta på, läsa och göra.

Vi publicerar inte alla veckomoduler samtidigt utan nån veckomodul åtgången för att  det ska bli lättare att planera dina studierna och fokusera på rätt moment utan att bli överväldigad. Det här upplägget stödjer lärandet och minskar stress.

Vecka Tema
36 Fyra pelare inom OOP (APIE)
37 SOLID
38 Seminaruim(SOLID) och Dugga(APIE, SOLID, UML) 
39 Design patterns
40 Design patterns
41 Seminarium(Design patterns), datatstrukturer och algoritmer
42 Dugga (Design patterns, datastrukturer algoritmer), uppstart projektarbete 
43 Projektarbete och handledning
44 Projektarbete och handledning
45 Redovisning projektarbete

 

Kort FAQ för kursen

Q1. Vilken version av boken Head First Design Patterns ska IT-säk använda? C# finns ju inte som ett alternativ.
A1. För OOP spelar inte programspråket (eller vald bok om den är bra) så stor roll. Java och C# syntax är även väldigt lika varandra. Man kan använda den version av bok man hittar billigt (se förslag på Studiehandledning och kurslitteratur sidan) och LinkedIn Learning använder dessutom olika programspråk.

Q2. Vad gäller för grupparbeten? När och hur ska grupper skapas?
A3. Grupper med 5 deltagare/grupp ska vara klara senast till på måndag v37 (7.e sept.). Vi lärare kommer, i nödfall, att hjälpa till om problem uppstår, samt "frysa" gruppernas deltagare innan redovisningarna.

Q4. Kan IT-säk och Systemvetenskap, bilda grupper tillsammans?
A4. Ja vi lärare uppmuntrar er att skapa grupper tillsammans från de olika programmen.

Q5. När det gäller duggorna bygger frågorna bara på det ni går igenom tex era föreläsningar, lektioner, genomgångar och övningar?
A5. Nej det kommer också från inspelningar och kurslitteraturen.

Q6. För man använda AI?
A6. Ja Du kan använda AI:n som en senior hjälplärare/tutor genom att aktivt be om hjälp på fyra olika nivåer:

Inled prompten med: Du är en senior expert inom tex OOP, SOLID, GRASP, design patterns och APIE. Du är van att förklara komplexa principer för nybörjare och juniora utvecklare. Du ska aldrig ge kodlösningar, kodförslag eller färdiga svar på problem.  Du ska endast hjälpa användaren att tänka, analysera, förstå och reflektera utifrån den nivå av hjälp som efterfrågas.

Nivå 1 – Motfrågor (självständig analys)

Promptmall: "Jag jobbar med X. Ställ korta motfrågor som hjälper mig att analysera ansvar, beroenden och designval i X. Ge inga svar eller lösningar."

Nivå 2 – Ledtråd (riktning, ingen lösning)

Promptmall: "Jag har fastnat på X. Ge en ledtråd på max en mening som pekar mot relevant princip eller mönster, men ge ingen lösning, ingen kod och inga detaljer."

Nivå 3 – Förklaring (analogier för principen)

Promptmall: "Jag förstår inte principen X. Förklara konceptet med en vardaglig analogi, men koppla det inte till min uppgift eller kod."

Nivå 4 – Feedback (reflektion och designförbättring)

Promptmall: "Här är mitt arbete/kodförslag kopplat till X, Y och Z: [klistra in]. Ge konstruktiv feedback utifrån ansvar, beroenden, design patterns och relevanta principer. Förklara vad som kan förbättras och varför, men skriv inte om något åt mig"


Mvh/ Hans och Pär


 

röd dalahäst

Kursplan

Kontaktinformation

lila dalahäst

Litteraturlista

Hans Jernberg

Kursansvarig, Lärare

e-post: hje@du.se

 

Pär Eriksson

Lärare

e-post: pei@du.se