Kmom06: Begrepp inom OOP & Kodkvalitet
I detta kursmoment tittar vi på fler begrepp inom objektorienterad programmering som
abstrakta klasser och abstrakta metoder, “properties” och gränssnitt (interface). Ett interface i C# är som ett kontrakt som säger vilka metoder en klass måste ha, men inte hur de ska göras.
Med den inbyggda rapportgeneratorn i .NET genererar vi dokumentation om vår kod utifrån XML-kommentarer i koden. Vi lär oss läsa och skriva till filer asynkront. Vi tittar också på kodanalys och lär oss titta kritiskt på vår kod.
Förberedelser
Section titled “Förberedelser”Innan du börjar med kmom06 så behöver du ha jobbat igenom Kmom05.
Måndag
Section titled “Måndag”
Måndag
Section titled “Måndag”cd dbwebb-kurser/csharp-<din akronym>code .Att göra
Section titled “Att göra”-
Lär dig om kodanalys i artikeln Kodanalys. Artikeln ger exempel på dålig kod och bra kod och beskriver skillnaden.
-
Läs och jobba igenom Kapitel 3 - Mer objektorientering i guiden Kom igång med objektorienterad programmering i C#.
-
Lär dig mer om skillnaden på
constochreadonlyi artikeln Skillnad på const och readonly. -
Lär dig mer om mjukvaruutveckling i artikeln Olika metoder för mjukvaruutveckling.
Onsdag
Section titled “Onsdag”
Onsdag
Section titled “Onsdag”Jobba igenom seminarium kmom06. Det görs på onsdagens lektion.
Torsdag och fredag
Section titled “Torsdag och fredag”
Torsdag och fredag
Section titled “Torsdag och fredag”Att göra
Section titled “Att göra”-
Läs och jobba igenom artikeln Automatiskt dokumentera C# kod för att lära dig automatgenerera XML-kommentarerna som dokumenterar din C# kod.
-
Läs och jobba igenom artikeln Filer - läs och skriv asynkront för att lära dig att läsa och skriva asynkront till filer.
-
Lös uppgifterna under Uppgifter.
-
Titta gärna igenom artikeln Introduktion till rekursion.
-
Lär dig mer om att läsa och skriva JSON data till filer i Filer med JSON data. Vi tittar också på intern klass.
-
Lär dig mer om klassbibliotek C# classlib.
Uppgifter
Section titled “Uppgifter”Följande uppgifter skall utföras och resultatet skall redovisas.
- På Canvas, gör quizzet
Kmom06 quiz.
- Uppgiften är att bygga ut refaktorera planeringsverktyget MyPlanner från kmom05, se MyPlanner2. Det innefattar att skriva testplan, enhetstester och att utveckla projektet färdigt.
Spara alla filer under
kmom06.
Resultat & Redovisning
Section titled “Resultat & Redovisning”Läs instruktionen om hur du skall redovisa.
Utöver en vanlig inlämning ska du också göra en Pull Request. Titta speciellt på kapitel PR kmom06 för att tolka resultatet.
Gör en inlämning i Canvas med länken till din PR.
Målet med kmom06
Section titled “Målet med kmom06”Efter att ha jobbat igenom kmom06 så bör du kunna:
- mer om abstrakta klasser och abstrakta metoder
- mer om kodanalys
- se kritiskt på din kod och göra kodanalys
- använda inbyggda kodanalysen i .NET
- dokumentera din kod
- mer om mjukvaruutveckling
- vattenfallsmetoden
- agilutveckling
- Kanban
- skillnaden på const och readonly
- mer om att läsa och skriva till fil med StreamReader och StreamWriter