Skip to content

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.

Innan du börjar med kmom06 så behöver du ha jobbat igenom Kmom05.


Terminal window
cd dbwebb-kurser/csharp-<din akronym>
code .
  1. Lär dig om kodanalys i artikeln Kodanalys. Artikeln ger exempel på dålig kod och bra kod och beskriver skillnaden.

  2. Läs och jobba igenom Kapitel 3 - Mer objektorientering i guiden Kom igång med objektorienterad programmering i C#.

  3. Lär dig mer om skillnaden på const och readonly i artikeln Skillnad på const och readonly.

  4. Lär dig mer om mjukvaruutveckling i artikeln Olika metoder för mjukvaruutveckling.


Jobba igenom seminarium kmom06. Det görs på onsdagens lektion.


  1. Läs och jobba igenom artikeln Automatiskt dokumentera C# kod för att lära dig automatgenerera XML-kommentarerna som dokumenterar din C# kod.

  2. 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.

  3. Lös uppgifterna under Uppgifter.

  1. Titta gärna igenom artikeln Introduktion till rekursion.

  2. 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.

  3. Lär dig mer om klassbibliotek C# classlib.


Följande uppgifter skall utföras och resultatet skall redovisas.

  1. På Canvas, gör quizzet Kmom06 quiz.
  1. 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.

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.

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