Översikt

Vi jobbar vidare med objektorienterade konstruktioner och tittar bland annat på arv.

Händer i veckan

I slutet av förra veckan lämnade vi in A2 och det är nu dags att börja titta på nästa uppgift som är A3.

Vi jobbar vidare med objektorienterade konstruktioner och förbereder oss därmed för A3. Föreläsningarna ger dig insyn i begrepp som inkapsling, privata medlemmar, setters & getters samt arv.

Detta är sista veckan med ren javascript, nästa vecka börjar vi titta på webbläsaren som programmeringsmiljö.

Veckans utmaning är lite annorlunda och kan trigga dig som tycker om att fundera på algoritmer och olika lösningar på ett givet problem.

Glöm inte övningsuppgifterna, det finns blå som låter dig träna på de objektorienterade grundkonstruktionerna och den röda låter dig träna på arv.

"Stå-upp"-vlogg

Förra årets vlogg för den som vill få en extra introduktion till veckan.

Stödjande inspelningar

Läsanvisningar

Under läsanvisningar hittar du veckans kapitel som ska läsas i kurslitteraturen. Planera upp och dela upp läsningen under veckan.

Övningar

Under Övningsuppgifter hittar du övningsuppgifter som det är lämpligt att du arbetar med under veckan.

Handledning

Examinationsuppgift A3

Efter denna veckas innehåll är du fullt förberedd för att genomföra examinationsuppgift A3. Ett bra mål för denna vecka är att klona ner uppgiften och börja bekanta dig med den.

Läs mer om "Examinationsuppgift A3 - Tjugoett" här

Utmaningar

Denna veckans utmaning är lite annorlunda och låter dig skriva en egen algoritm för att lösa ett problem. Därefter kan du jämföra din lösning med andra lösningar som lärare och studenter kommit fram till. Hur bra kommer din lösning att vara och vad kan du lära dig av att studera andra lösningar på samma problem?

Studiefrågor

Här är ett antal frågor som du kan försöka besvara och diskutera tillsammans med din Ai-kompis. Tveka inte att lyfta någon av frågorna till handledningen för att fortsätta diskussionen med lärare och studiekamrater.

Frågor att diskutera med din Ai-kompis
  1. Jag håller på och lär mig javascript med objekt och klasser och jag vill bygga upp ett exempelprogram för att studera olika aspekter av objektorientering, jag kommer ge dig instruktioner så kan du föreslå kodlösningar och kommentera dem så kan jag lära mig från dig, ok?
  2. Jag vill börja med en tärningsklass Dice där jag skall rulla en 6 sidig tärning och skriva ut tärningens värde efter varje slag. Hur hade du gjort?
  3. Jag vill använda privata medlemmar för att kapsla in min implementation.
  4. Nu vill jag se hur man kan göra en klass GraphicalDice som ärver från Dice och skriver ut tärningen som utf-8 tecken.
  5. Nu vill jag skapa en klass för DiceHand och jag vill ha en metod där man kan lägga till tärningar till DiceHand och sedan rulla dem och srkiva ut alla samtidigt.
  6. Lägg till metoder för att beräkna summan av tärningsslaget.

Här är en utskrift från hur det såg ut när jag diskuterade ovan frågor med min Ai-kompis Ajj.

Tips

Här följer tips till hur du kan prioritera bland kursmaterialet för att komma igång med veckan.

  1. Försök komma igång med A3 redan denna veckan. Det är mycket att läsa och låt det ta ett par dagar att läsa, bearbeta och fundera på hur uppgiften kan angripas. Det är ingen brådska att komma igång att koda, låt problemlösningen ta sin tid och läsa igenom kravställningen.

  2. Jobba igenom de blå övningsuppgifterna så att du har koll på grundläggande konstruktioner i en klass och hur man jobbar med ett objekt. Då får du också grundläggande träning i hur man implemementerar klasser utifrån ett klassdiagram.