Kmom01: Kom igång med C#
Det första vi skall göra är att skaffa oss en utvecklingsmiljö och kika i kurslitteraturen. C# fungerar på många miljöer och i olika varianter. Vi kommer att skapa och köra C#-program i terminalen. För att uppdatera och felsöka (debugga) vår kod använder vi Visual Studio Code (VS Code).
Vi börjar skriva de första enkla programmen för att komma underfund med hur C# kan användas och hur programmeringsspråket fungerar i grunden. Eftersom vi nyss läst python så jämför vi med det och tittar på hur motsvarande språkkonstruktioner ser ut i C#. Vi tittar även på C# som programmeringsspråk.
Bilden visar på informationsflödet mellan en användare och hårdvaran. Användaren är den som använder, nyttjar, programmet eller applikationen som det också kallas. Hårdvaran är den fysiska datorn och kan vara en PC, Linuxdator eller en Mac. Operativsystem kan vara Windows, Mac eller någon Linuxvariant som Ubuntu. Operativsystemet tillhandahåller resurser som filer och nätverkskommunikation men hanterar även resurser som till exempel minnet.
Applikationen är i vårt fall skrivet i språket C#. Vårt C#-program kompileras för att anpassas till hårdvaran vilket innebär att de kodrader vi skrivit i C# översätts till maskinkod som därefter körs på hårdvaran.
Förberedelser
Section titled “Förberedelser”Innan du börjar med kmom01 så behöver du ha jobbat igenom Kom igång och installerat labbmiljö, kursrepo och utvecklingsmiljö.
Måndag
Section titled “Måndag”
Måndag
Section titled “Måndag”Intro till csharp
Section titled “Intro till csharp”I kursen kommer vi använda boken C# 12.0 in a Nutshell: The Definitive Reference av Joseph Albahari. Det är en omfattande referensbok som täcker alla aspekter av C#-programmering, från grundläggande till avancerade ämnen. Vi nöjer med de grundläggande kapitlen i boken men här finns information även för den avancerade programmeraren.
Boken kommer inte passa allas lärandestil eller så förklaras sakerna inte på det sättet att du förstår det. Det är helt okej. Det finns många andra resurser och böcker som du kan använda för att lära dig C#. Det är OK att använda andra resurser och böcker. Det viktiga är att du hittar något som passar dig och din lärande stil.
Att göra
Section titled “Att göra”-
Läs igenom “C# - vad är det för språk?”.
-
Läs och jobba igenom “Python till C#”. Testa gärna i C# online kompilator (glöm ej att välja senaste kompilatorn i menyn till vänster). Skriv din kodsnutt inuti Main()-metoden.
-
Läs och jobba igenom “Mer C#”. Testa gärna i C# online kompilator (glöm ej att välja senaste kompilatorn i menyn till vänster). Skriv din kodsnutt inuti Main()-metoden.
-
Kom igång med din första C#-app tillsammans med artikeln SkapaApp.
-
Läs igenom följande kapitel i boken C# 12.0 in a Nutshell: The Definitive Reference:
- kapitel 2 C# Language Basics
Det är mycket information i kapitel 2, läs i omgångar eller använd som uppslagsbok.
- kapitel 2 C# Language Basics
Onsdag
Section titled “Onsdag”
Onsdag
Section titled “Onsdag”Jobba igenom seminarium kmom01. 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”-
Gör ett enkelt menyprogram tillsammans med artikeln SkapaMenyApp.
-
Lös uppgifterna under Uppgifter.
Nu har du jobbat igenom det förbereda materialet för veckan. Förhoppningsvis har du inte använt upp alla 20h än. Använd resten av tiden till att öva på det du har lärt dig.
Interaktiva övningar och tutorials
Section titled “Interaktiva övningar och tutorials”- Microsoft Learn – C#
Officiella guider och interaktiva kodexempel direkt i webbläsaren. Bra om du vill lära dig rätt från källan. - Exercism
Gratis, massor av små övningar där du får feedback av communityn. Perfekt för att träna problemlösning i C#. - Codewars
Gamifierat – lös problem (“kata”) och gå upp i nivå. Bra för att öva logik och algoritmer i C#. - LeetCode
Inriktat på algoritmer, datastrukturer och problemlösning. Väldigt bra om du vill bli stark på intervjufrågor och mer avancerad kodning.
Lekfulla/övningsvänliga sidor
Section titled “Lekfulla/övningsvänliga sidor”- Codingame
Lös problem genom att styra spel med C#. Roligare än vanliga uppgifter om du gillar spel. - Dotnetfiddle
Online-editor för C#, där du snabbt kan skriva och testa kod utan att installera något.
Det finns inga extra uppgifter denna veckan men det finns en bra video med Mosh C# Tutorial For Beginners.
Uppgifter
Section titled “Uppgifter”Följande uppgifter skall utföras och resultatet skall redovisas.
-
På Canvas, gör quizzet
Fusk policy. Måste få alla rätt, oändlig med försök. -
På Canvas, gör quizzet
Kmom01 quiz.
- Gör uppgiften “Gör ett menyprogram” för att visa att du har koll på grunderna. Använd gärna flödesschema eller pseudokod för problemlösningen.
Spara alla filer underkmom01.
Resultat & Redovisning
Section titled “Resultat & Redovisning”Läs instruktionen om hur du skall redovisa.
I denna kursen har vi ingen redovisningstext utan quiz att klara av istället.
Målet med kmom01
Section titled “Målet med kmom01”Efter att ha jobbat igenom kmom01 så bör du kunna:
- grunderna i C#
- miljön
- datatyper
- metoder/funktioner
- iterationer
- villkor och logik
- flödesschema & pseudokod
- grunderna i dotnet
- skapa program i C# med dotnet
- köra program med dotnet
- debugga program i VS code