Variabler & Datatyper

Variabler och Datatyper
Man skapar en variabel för att lagra information som ska finnas kvar medan applikationen körs. Tänk er att varje variabel är en behållare som vi ska placera något i. Varje variabel (behållare) har olika ändamål, ska variabeln lagra heltal (exv. 13) eller text (exv. ”Hello World”)? Titta i er egen kyl som exempel; flaskor, tuber, burkar eller en matlåda. I kodning är dessa alla variabler (behållare). Alla dessa behållare i kylskåpet är skapta för att innehålla just en typ av mat: läsk i flaskan, kaviar i tuben, sylt i burken och en kotlett med potatis i matlådan. Smart eller hur? Vi måste göra på samma sätt med informationen/datan vi vill lagra i våra variabler – att rätt typ av data (datatyp) placeras i rätt variabel som är skapt för just den datatypen vi vill lagra. I kylskåpsexemplet skulle vi ha jävligt svårt att få i kotletten och potatisarna i flaskan, och lika svårt att få ut måltiden igen. Samma gäller att lagra läsken i matlådan, bara dumt. Rätt data i rätt variabel. Detta görs genom att vi deklarerar vad variabeln tar för datatyper när vi skapar variabeln.
Vi kan lagra en massa olika typer av data i våra variabler. Då det finns många olika former av data behöver variabeln kunna lagra just den typen av data. Här följer några exempel på värden av olika datatyper: 13, “Hello World”, TRUE, 0.482 .
Precis som att läsken lagras bäst i flaska är det av högsta vikt att rätt typ av data hamnar i rätt typ av variabel, annars blir allt fel. Så för att rätt typ av data ska hamna i rätt variabel måste vi tala om vad det är för en typ av variabel, dvs. vilken datatyp den ska kunna innehålla. Datatyperna som är direkt grundläggande att kunna är: int, string, bool, float.
int = 13, -26, 512, 0
Detta innebär att alla HELTAL passar i variabler av datatypen int.
string = “Hello World”
Alla ALFANUMERISKA symboler passar in i variabler av datatypen string.
bool = TRUE, FALSE
Alla “Sant” eller “falskt” svar passar in i variabeln av datatypen bool.
float = 0.482, -2.676,
Alla DECIMALTAL placeras I variabler av datatypen float (flyttal)

Skulle du nu försöka placera FALSE som värde i xPos (som är en int):
xPos = FALSE
Ni kommer att få konverteringsproblem ”cannot convert bool to int” eftersom datatypen för variabeln är int och värdet är av typen bool (TRUE). Så går det när ni försöker pressa in en lax i en syltburk ”cannot convert lax to sylt” .
Hur man deklarerar variabler?
Okej, nu har vi kikat på vad en variabel är och en datatyp samt hur det fungerar i teorin. Nu ska vi kika på hur vi använder variabler i praktiken. När vi deklarerar en variabel gör vi det på följande sätt:

int xVar;
i exemplet ovan är datatypen ”int” vilket innebär att variabeln vi skapar ska kunna ta heltal. Variabelns namn är ”xVar”.
Ett till exempel följer här nedan:
bool lampOn;
I exemplet ovan är heter variabeln ”lampOn” som kan lagra antingen TRUE eller FALSE data då datatypen är bool.
Ni gör på samma sätt med alla deklareringar av variabler.
Namnkonvention för variabler?
Som ni ser i mina två exempel på variabler har jag givit dem namnen ”xVar” och ”lampOn”. Denna form av notation kallas för ”Camel Case” och är det sätt man vanligtvis använder som notation gällande variabler. Camel Case innebär att första ordet skrivs med små bokstäver och andra ordet börjar med stor bokstav.
Varje variabel måste ha som först symbol en bokstav eller _ eller @. Använder ni en bokstav som första symbol ska den vara liten (precis som jag gjorde med ”xVar” och ”lampOn”).
Variabelns namn får INTE innehålla ”mellanslag”/”tomrum”, utan måste skrivas samman till ett ord som exempelvis mitt exempel lampOn.
Det är mycket viktigt när ni namnger variabler att dessa inte är nyckelord som tillhör C# eller bibliotek ni använder (så som xna).
C# är Caps-känsligt, detta innebär att en variabel som heter exempelvis ”Test” inte är samma som en variabel som skrivs ”test”. Kom ihåg detta för att det är ett vanligt fel.
Ytterligare en sak att tänka på är att variabeln ska BESKRIVA vad variabeln gör. Lagrar variabeln antalet liv som din hjälte har så bör den heta exempelvis ”heroLife” och inte ”skitKiss”. Detta faller sig logisk då andra som läser koden direkt kunna förstå vad variabeln gör, eller om du återvänder till koden två månader senare – att försöka lista ut vad du menade med ”skitKiss” kommer ta längre tid än om du skrivit ”heroLife”.

Pascal Case för Metoder och Funktioner
Som ni såg i början av texten skrev jag “Camel Case” vilket innebär att innebär att första ordet skrivs med små bokstäver och andra ordet skrivs med stor bokstav. Denna namnkonvention gäller för variabler. Namngivning av funktioner eller metoder skrivs enligt notationen ”Pascal Case”. Detta innebär att första bokstaven i namnet på funktionen eller metoden är STOR.
Exempel på detta är metoden AddText().

METODER och FUNKTIONER börjar med STOR bokstav.Detta skiljer sig alltså från hur vi skrev variabelns namn, då vi använde liten bokstav.

Hur vi ger variabeln data?
Som jag beskrev tidigare deklarerade vi variabler så här:
int xPos;
Det vi aldrig gjorde var att ge variabeln xPos något. Detta innebär att vi inte kan skriva ut variabeln med metoden WriteLine(xPos); Försöker vi det så kommer det att bli fel då variabeln inte innehåller något heltal (exempelvis 5)
Genom att skriva på en ny rad (efter föregående kodsnutt) på nedanstående sätt sätter vi heltalet “5” in i variabeln “xPos”.
xPos = 5;
Variabeln av typen int (och merparten av dem) kan enbart innehålla ett värde. Hade vi skrivit exempelvis:
xPos = 5;
xPos = 7;
Så kommer xPos att innehålla heltalet 7 och inte 5. Varför? Jo, det är så enkelt som att symbolen = inte betyder ”lika med” utan ”tilldelas”. Ni ska alltså läsa koden
xPos = 7;
xPos TILLDELAS 7;
Senaste tilldelningen är den som kommer att lagras!
Vi kan skapa två variabler av typen int samtidigt också:
int xPos, yPos;
Vi kan även ge våra variabler värden samtidigt:
int xPos = 5, yPos = 7;

Nu borde ni kunna grunderna för variabler och datatyper!