04.09.2013 Views

C# Innehållsförteckning - Polyformia

C# Innehållsförteckning - Polyformia

C# Innehållsförteckning - Polyformia

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Innehållsförteckning</strong><br />

Ämne Sida Program<br />

Kapitel 1 Introduktion till programmering 9<br />

1.1 Vad är programmering? 10<br />

1.2 Vad är en algoritm? 12<br />

1.3 Olika sätt att beskriva en algoritm 15<br />

1.4 Pseudokod och flödesplan 16<br />

1.5 Vad är objektorienterad programmering? 21<br />

‐ Objekt, klass och metod 21<br />

‐ Anrop av metoder 22<br />

‐ Objektorienteringens termer 23<br />

1.6 Programmering: En kort historik 27<br />

Övningar till kapitel 1 31<br />

Kapitel 2 <strong>C#</strong> – språket och miljön 33<br />

2.1 Vad är <strong>C#</strong> ? 34<br />

2.2 Kompilering och exekvering 36<br />

2.3 Microsoft Visual Studio 2012 39<br />

‐ IDE 39<br />

‐ Vad är .NET? 39<br />

‐ Installation av Visual Studio 2012 40<br />

2.4 Visual Studio 2012 – konfiguration och<br />

användning 41<br />

‐ Två olika typer av applikationer 41<br />

‐ Projekt i Visual Studio 2012 42<br />

‐ ETT projekt för alla Console applikationer 46<br />

Kapitel 3 Att komma igång med <strong>C#</strong> 48<br />

3.1 Vårt första <strong>C#</strong>-program 49 First<br />

‐ Metoden Main() 51<br />

3.2 Radbyte och tabulator 54 Radbyte<br />

‐ Metoden Write() 55 Output<br />

3.3 Konkatenering med + 56 Concat<br />

3.4 Utskrift till en grafisk miljö 58 MessageBox<br />

3.5 Visuell programmering 60<br />

‐ <strong>C#</strong> Windows Forms Application 60<br />

‐ Att designa formfönstret 62 WindowsForm<br />

3.6 Interaktiva grafiska gränssnitt 67 Interaction<br />

Övningar till kapitel 3 73<br />

Kapitel 4 Grundbegrepp i programmering 75<br />

4.1 God programmeringsstil 76<br />

4.2 Datatyper 78 Datatyp<br />

5


Ämne Sida Program<br />

4.3 Definition och initiering av variabler 81 Variabel<br />

‐ Vad händer när en variabel definieras? 83 DefInit<br />

‐ Deklaration vs. definition 87<br />

4.4 Inläsning av data 88 Input<br />

4.5 Överskrivning eller kan x = x + 1 vara sant? 90 Overwrite<br />

4.6 Operatorer och uttryck 93 Operator<br />

‐ Inmatning – Bearbetning – Utmatning 94<br />

4.7 Överlagring av operatorer 96 OverloadOp<br />

4.8 Ökningsoperatorn ++ 99 PlusPlus<br />

4.9 Sammansatta tilldelningar 102 SamTilld<br />

Övningar till kapitel 4 104<br />

Kapitel 5 Enkla datatyper 107<br />

5.1 Kan datorn lagra hur stora tal som helst? 108 Primitives<br />

‐ Overflow 110 Limits<br />

‐ Type System Unification 112<br />

5.2 Datatypen char 114 Char<br />

5.3 ASCII-tabellen 116 Int2char<br />

‐ Explicit typkonvertering 117 Char2int<br />

5.4 Escapesekvenser 120 Escape<br />

5.5 Unicode 122 Unicode.java<br />

5.6 Decimaltalstyperna 124 Decimaltal<br />

5.7 Automatisk typkonvertering 127 AutoKonv<br />

Sammanfattning av kapitel 4 och 5 131<br />

Övningar till kapitel 5 132<br />

Kapitel 6 Kontrollstrukturer 133<br />

6.1 Algoritmers byggstenar 134<br />

6.2 Enkel selektion: if-satsen 135 EnkelIf<br />

‐ Jämförelseoperatorer 137<br />

‐ Sortering med flera satser i if 138 MiniSort<br />

‐ Villkorlig initiering 140 (O)VillkorInit<br />

6.3 Tvåvägsval: if-else-satsen 143 IfElse<br />

6.4 Flervägsval: switch-satsen 145 Switch<br />

6.5 Programserien "Gissa tal" 150<br />

‐ med nästlad if-else 150 GissaIfElse<br />

‐ med kombination av switch och if-else 151 GissaSwitch<br />

6.6 Efter-testad repetition: do-satsen 153 GissaDo<br />

‐ Hantering av slumptal 156 DoSlump<br />

‐ "Gissa tal" med slumptal 157 GissaDoSlump<br />

‐ Evighetsloop 160<br />

6.7 För-testad repetition: while-satsen 161<br />

‐ ASCII-tabellen med while 162 Ascii<br />

6.8 Bestämd repetition: for-satsen 164 ForSlump<br />

6


Ämne Sida Program<br />

‐ Räckvidden av for-satsens räknare 167<br />

6.9 Nästlade for-satser 168 NestedFor<br />

‐ Multiplikationstabellen 170 MultipTab<br />

Övningar till kap. 6 (Projekten Löpande texten & Pyramiden) 172<br />

Kapitel 7 Logik för blivande programmerare 175<br />

7.1 Logiska operatorer 176 OCH_ELLER<br />

‐ Sanningstabeller 178<br />

7.2 Datatypen bool 181 SannTab<br />

7.3 NEGATION som logisk operator 183<br />

‐ "Gissa tal" med NEGATION 183 GissaNEG<br />

‐ Logiska uttryck 184<br />

7.4 Programserien "Testa lösenord" 186 Passwd<br />

‐ Metoden Equals() 187<br />

‐ Kombination av NEGATION, OCH, ELLER 188 PasswdCapslock<br />

Övningar till kapitel 7 190<br />

Kapitel 8 Klasser, objekt och referenser 193<br />

8.1 Vad är en klass? 194 Password<br />

‐ "Testa lösenord" som klass 195 PasswordTest<br />

8.2 Objekt med new 200<br />

‐ Vad är en referens? 200<br />

8.3 Användning av klasser 202<br />

‐ Deklaration av en klass 203 Anst<br />

‐ Definition av ett objekt 204 AnstTest<br />

‐ Automatisk initiering av datamedlemmar 207<br />

‐ Åtkomst till objektets medlemmar 209<br />

8.4 "Gissa tal" som klass 211 GissaTal<br />

8.5 Statiska datamedlemmar 214<br />

‐ Modifieraren static 214 StatDemo<br />

‐ Klass- och instansvariabler 215 StatDemoTest<br />

8.6 Inkapsling och klassens konstruktor 217<br />

‐ Åtkomstmodifieraren private 217 Circle<br />

‐ Klassens konstruktor 219 Inkapsling<br />

‐ Default-konstruktorn 222 KontoD<br />

‐ Flera konstruktorer 223 SkapaKontoD<br />

Övningar till kapitel 8 (Projekt Automaten) 226<br />

Kapitel 9 Metoder 231<br />

9.1 Vad är en metod? 232<br />

9.2 Metoder med returvärde 234 ReturMetod<br />

‐ Deklaration av metoder 236<br />

‐ Anrop av metoder 238<br />

7


Ämne Sida Program<br />

9.3 Externlagrade metoder 243 SlumpTal<br />

9.4 Statiska metoder 245<br />

9.5 Referens som parameter och returvärde 247 KryptString<br />

9.6 void-metoder 250 VoidMetod<br />

9.7 Värde- och referensanrop 253 CallByVal/ByRef<br />

9.8 In- och utparametrar 258 Utparam<br />

9.9 Variablers räckvidd 261 Block<br />

9.10 Rekursiva metoder 264 Fibonacci<br />

Övningar till kapitel 9 (Projekt Kalkylatorn) 267<br />

Kapitel 10 Array och andra datastrukturer 271<br />

10.1 Vad är en array? 272<br />

10.2 Definition och initiering av en array 275 Array<br />

‐ Initieringslista 278 ArrayInit<br />

10.3 Texthantering med array av char 281 ArrayChar<br />

‐ Slumplösenord 282<br />

10.4 Array av referenser 284 ArrayAvRef<br />

10.5 Array som parameter i metoder 287 Arrayparam<br />

10.6 Sökning och sortering 291 SlumpArray<br />

- Slumptal i en array 291 Search<br />

- Bubbelsortering 294 Bubbel<br />

10.7 Kryptering av text 298 KryptChar<br />

10.8 Tvådimensionell array 301 DoubleArray<br />

10.9 Listor 305 Lista<br />

Övningar till kapitel 10 (Projekt Master Mind) 309<br />

Kapitel 11 Undantagshantering 311<br />

11.1 Automatiskt genererade undantag 312 TryCatchTest<br />

11.2 Egengenererade undantag 314 ThrowTest<br />

‐ throw-satsen 314<br />

Projektuppgifter<br />

Löpande texten 172<br />

Pyramiden 173<br />

Automaten 227<br />

Kalkylatorn 268<br />

Mater Mind 309<br />

Lösningsförslag till övningar (Facit) 317<br />

Programförteckning 365<br />

Register 369<br />

8

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!