C# Innehållsförteckning - Polyformia
C# Innehållsförteckning - Polyformia
C# Innehållsförteckning - Polyformia
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