Tartalomjegyzék Bevezetés Kinek szól a könyv? A könyv témája A könyv felépítése Mire van szükség a könyv használatához? A könyvben használt jelölések Forráskód Hibajegyzék p2p.wrox.com
1.
2.
Mi a programozás?
xiii xiii xiv xiv xvi xvii xviii xviii xix
1
A programozás története Mi a programozás? Miért van szükség ennyi programozási nyelvre? Különböző kód, azonos eredmény A programok létrehozásához szükséges programok Fejlesztői környezet Fordítók Összegzés
1 5 6 8 12 12 13 13
Miért tanuljunk programozni?
15
Miért programozzunk? A „karrier” programozó Problémamegoldás A hozzájárulás élménye A szórakozás kedvéért Hírnév Mit tanuljunk? A programozás területei Programozás: tények és tévhitek 1. tévhit: a programozáshoz szükséges eszközök drágák 2. tévhit: ahhoz, hogy programozók legyünk, szakirányú végzettség szükséges 3. tévhit: egy programnyelv elsajátítása éveket igényel 4. tévhit: a programozás a fiataloknak való 5. tévhit: a programozáshoz a legújabb csúcsszámítógép szükséges 6. tévhit: a programozás függőséget okoz
15 16 19 20 21 21 22 22 28 28 28 28 29 29 29
Tartalomjegyzék
3.
4.
5.
vi
7. tévhit: a programnyelvek folyamatosan változnak 8. tévhit: ha megtanultunk egy programnyelvet, a többi nyelv elsajátítása már könnyű Összefoglalás
29 30 30
Hogyan „olvassák” a számítógépek a kódot?
31
A kód beolvasása Felülről lefelé A kód felosztása Az utasítás Függvények/eljárások Mondatok és bekezdések a programozásban Sorok a kódban Bekezdések a kódban Adattárolás Az adatok Összefoglalás
31 31 34 37 39 39 40 41 41 43 46
A koncepciótól a kódolásig. A kódolás nyelve
47
A bináris A bináris értelmezése Nagy számok A bitek csoportosítása Bináris aritmetika Miért bináris? Hexadecimális A hexadecimális értelmezése A hexadecimális és a Windows-számológép A karakterek jelölése Operátorok Aritmetikai operátorok Értékadó operátorok Összehasonlító operátorok Logikai operátorok Sztringoperátorok Összefoglalás
48 48 50 52 56 61 61 62 64 65 73 73 74 74 75 76 77
A programozás eszközei
79
A munkahely kialakítása A billentyűzet A munkahely Az íróasztal A monitor A nyelvválasztás
79 79 80 81 81 83
Tartalomjegyzék
Megtanulni programozni Iskolarendszerű oktatás Munkahelyi képzés A hobbiprogramozó A nyelvek Hogy fogom programozni tanítani? Az eszközök Általános eszközök és segédprogramok Programozási eszközök Összefoglalás
84 85 86 87 87 88 89 89 97 106
6.
Egyszerű kódolás Kommentek (vagy más néven megjegyzések) a kódban VBScript-megjegyzések JavaScript-megjegyzések C++-megjegyzések Változók Változók működés közben Feladatok Sztringek Mi a sztring? Sztringkezelés A bemenetek feldolgozása Változómanipulálás – egyszerű matematika Összegzés
107 107 108 111 114 115 118 135 136 136 138 143 144 147
7.
A kód struktúrája A struktúra célja Előnyök A struktúra vizsgálata Gyors bevezető a C++ programozási nyelvbe Függvények Még több függvény Feltételes utasítások Programozási döntések Feltételes utasítások Bővebben a feltételesekről Ciklusok For ciklusok While ciklusok A do while ciklus Tömbök Kétdimenziós tömb Többdimenziós tömb Összefoglalás
149 149 150 150 150 164 166 172 172 173 178 189 189 192 194 196 198 199 201 vii
Tartalomjegyzék
8.
Problémamegoldás A problémamegoldás alapjai Legyen tisztában a követelményekkel Kutatás A probléma felbontása kisebb problémákra Áttérés a kódolási szakaszra A kód szebbé tétele Összefoglalás
9.
Hibakeresés Tévedni emberi dolog Hibák, hibák, hibák! Különböző típusú hibák Fordítási hibák Futásidejű hibák Logikai hibák A hibák felismerése Olvassunk végig minden sort, miután lenyomjuk az Enter billentyűt! Ellenőrizzük a korábbi utasításokat! Ügyeljünk az áttekinthető megjelenésre! Kommentek, kommentek, kommentek! Kerüljük a nehezen érthető kódot! Pontosvessző Teszteljük a kódot! Tartsuk számon a változókat! Összefoglalás
10. A felhasználói felület Mi a felhasználói felület? A felhasználói felület jelentősége Mi a felhasználói felület? Minden szoftvernek van felhasználói felülete? Elemezzük a felhasználói felületet! A szöveges felület A program céljának ismertetése Az adatbekérés helyes módszere A kimenet értelmezése A kilépés megerősítése Egyszerű súgó létrehozása Megerősítés A szöveges felületen túl
viii
203 204 204 208 211 213 221 229
231 231 232 232 233 247 252 256 257 257 257 258 258 259 260 260 266
267 267 270 271 272 272 272 275 277 281 282 283 289 291
Tartalomjegyzék
Parancsgombok Menük A jelölőnégyzet A rádiógombok Az egysoros szövegdoboz A többsoros szövegdobozok A legördülő lista Amikor minden a helyére kerül Egyszerű alkalmazások Összetettebb alkalmazások Összefoglalás
11. Amikor minden a helyére kerül A programozási projekt tervezése Ha elmarad a tervezés Tervezés Az elgondolás A követelmények A programozás fázisa Az alapok programozása Tesztelés Az eredményesebb teszteléshez vezető út Kiegészítő funkciók Kód finomítása Végső tesztelés Összegzés
12. Fájlok kezelése Az adatok mentésének alapelvei A fájl életciklusa Munka a fájlokkal Az eszközök A fájlkezelés Fájl létrehozása VBScript segítségével Az alapok Mappa létrehozása Több fájl létrehozása Feltételes utasítások használata A változók használata Tegyük rugalmasabbá a kódot – fájl- és mappanevek bekérése Másodpéldányok ellenőrzése Létező fájl szerkesztése Működés közben Hozzáfűzés a fájl tartalmához
291 293 295 296 297 298 299 299 300 307 310
311 311 311 312 313 316 320 320 323 324 327 328 328 329
331 331 332 334 334 335 335 335 339 340 341 342 343 346 347 348 350 ix
Tartalomjegyzék
Fájl megnyitása olvasásra A ReadAll, a ReadLine és a Read metódusok Fájlok és mappák törlése Fájlok törlése Mappák törlése Összegzés
13. A Windows rendszerleíró adatbázisa A Windows rendszerleíró adatbázisa Mi a Windows rendszerleíró adatbázisa? Definíció Regedit és Regedit32 Biztonsági másolat készítése a rendszerleíró adatbázisról Munka a rendszerleíró adatbázissal A Windows rendszerleíró adatbázisának kezelése programozással A rendszerleíró adatbázis módosítása VBScripttel A rendszerleíró adatbázis módosítása JScripttel A Windows rendszerleíró adatbázisának lehetséges felhasználási területei Végül Összefoglalás
14. Szervezés, tervezés és verziókezelés Rendezés, rendezés és rendezés! Önmagunk rendezése A munkahely rendezése A fő esemény: a számítógép rendezése Munkahely létrehozása Mappák, mappák és mappák Nyelv szerinti csoportosítás Projekt szerinti csoportosítás Jegyzet a mappa tartalmához Fájlnévellenőrzés Még több verziókezelési tipp Verzióinformáció megadása a kódhatástalanító megjegyzésblokkokban Verziókezelés: a kiadásnál távolabbra tekintve Szoftver-verziókezelés Összefoglalás
x
350 351 355 355 356 356
357 357 358 358 360 362 383 397 397 403 405 406 407
409 409 409 410 412 412 414 414 416 416 419 421 421 427 429 429
Tartalomjegyzék
15. A kód fordítása és a fordítás alternatívái
431
A kód fordítása Minden fordító ugyanolyan? Hibakezelés Mi a helyzet a különböző nyelvekkel? A fordítás előnyei A szellemi tulajdon védelme Sebesség Fokozott funkcionalitás Biztonság Hibakeresés A fordított kódok alternatívái Legyen a kódunk nehezen követhető Összefoglalás
431 433 440 444 448 448 449 450 450 450 451 451 458
16. A projekt közzététele Terjesztési módok Fizikai terjesztés Lemezek írása Virtuális terjesztés Összefoglalás
459 459 459 465 475 479
„A” függelék: Szójegyzék
481
„B” függelék: Webes erőforrások
489
Programozási eszközök Java-eszközök Java-webhelyek C++-eszközök C++-webhelyek BASIC-eszközök BASIC-webhelyek Webes szkriptnyelvek CD-írás Tömörítőprogramok Egyéb eszközök Egyéb webhelyek
489 491 492 493 494 495 496 497 497 498 501 502
Tárgymutató
505
A szerzőkről
515
xi