Literatura a studijní materiály
Vlastní materiály ke kurzu:
Kurz je vyučován v prezenčním (BPPC) i kombinovaném programu (KPPC). Doporučuji proto sledovat i druhý kurz (přednášky, cvičení, úkoly, projekty, komentáře ...), který má náplň upravenou rozsahu a možnostem.
Text skript (pdf v zip 1.12MB) – skripta obsahují přehled o programování a sestavení programu v C a C++. Jazyk C a C++ včetně příkladů. Zde je aktuální verze (aktualizace je pružnější než na stránkách fakultních elektronických textů). Kapitoly o C a základy C++ jsou v pořádku, dědění je zatím informativně. Na konci kapitol skript je shrnutí – nutno znát a vědět proč.
Text přednášek (pdf 190kB) – soubor, který je promítán na přednáškách. Obsahuje hesla, která jsou na přednáškách komentována.
Rychlokurs jazyka C++ (pdf 49kB) – soubor, který jednoduchou a značně odlehčenou formou prezentuje základní vlastnosti jazyka C++. Určený pro získání rychlého náhledu (pro naučení se C++ nevhodný).
Semestrální práce, která se zabývá 1D a 2D poli a řetězci (pdf 219kB) (pro inspiraci, není to finální verze, obsahuje i drobné chybičky)
diplomová práce, ve které je popsán způsob kontroly alokace paměti a popis práce se strukturami vázaného seznamu a stromu (pdf 2,7MB). Zdrojové texty (alokace zip 142kB), (struktury zip 127 kB)
Knihy
vychází celá řada knih – nutno zajít do knihovny či knihkupectví, dostupné knihy prolistovat a najít si tu, která nejvíce „sedne“ vašemu stylu myšlení.
Například: Herout, Virius, Stroustrup,
Prata – Mistrovství v C++
Jazyky C a C++ - Virius
M., Grada2006, ISBN 80-247-1494-9
rozbor vlastností jazyka a problémů s tím spojených - Pasti a propasti jazyka C++, virius
Knihy o objektovém programování - Objektové
programování 1,2 Pecinovský, Virius,
Grada,1996, ISBN 80-7169-366-9
Myslíme v jazyku C++ 2 díl,
Eckel, Grada publishing, 2006
Knihy o algoritmech - Algoritmy v C, Robert Sedgewick, softpress, Praha 2003, ISBN 80-86497-56-9
Knihy o programování šablon – Moderní programování v C++ Alexadrescu Andrei, Computer press, 2004, ISBN 80-251-0370-6
Knihy o kultuře programování (týmová
práce, řízení projektů) – Extrémní
programování Kent Beck, Grada 2002, ISBN
80-247-0300-9
Odkazy na www
www.research.att.com/~bs stránky „autora“ C++ Bjarne Stroustrupa
učební materiály na FIT – http://www.fit.vutbr.cz/units/UITS/courses/
učební materiály na FEKT – BPC1, BPC2
je publikován draft (návrh) normy (například na ftp://ftp.research.att.com/pub/c++std/WP/CD2/ dosažitelný též ze stránek Stroustrupa uvedených výše). Samotná norma se platí (cca 7000Kč pro C a pak ještě pro C++ (300$)). Norma pro C má označení ISO/IEC 9899:1999 (cor. 2: 2004(E)). Norma pro C++ má označení ISO/IEC 14882:2003.
www.builder.cz ( http://www.builder.cz/serial24.html )
doporučení (jednoho z) „správného“
programovacího stylu
http://geosoft.no/development/cppstyle.html
nebo
http://developer.symbian.com/wiki/pages/viewpage.action?pageId=530
S www odkazy opatrně, ne všechny www materiály jsou seriozní, ne všechny dopracované. Některé si píší studenti podle toho jak to pochopili a ne jak to je – proto je to jednoduché ale ne precizní.
Ostatní
Na adrese: http://www.gimpel-online.com/OnlineTesting.html
je pristupny online tester korektnosti zdrojovych textu jazyka C/C++
(on line demo, které je na rozdíl od ostré verze
přístupné zdarma). Testovaný kod se nakopíruje,
stiskne se "Analyse Code" a hned se muzete divit co vsechno
neni ve vasem zdrojaku uplne korektne dle normy.
Na adrese http://www.gimpel.com/html/bugs.htm můžete najít na procvičení příklady, ve kterých máte za úkol najít nepřesnosti, nejednoznačnosti, nebo chyby.
Existují programy (doplňky), které usnadňují práci, či kontrolují chyby. Na disku Q jsou u p. Petyovského moduly do programu pro kontrolu paměti v MS VC++. Knihovna která se přidá k programu kontroluje zda je korektní práce s pamětí. Jedná se o VLD (Visual Leak Detektor), který napsal Dan Moulding a je přístupný ze stránek http://dmoulding.googlepages.com/ nebo http://www.codeproject.com/tools/visualleakdetector.asp. V prostředí Builder je tento mechanizmus (trochu jinak) implementován a dá se kontrola nastavit – jmenuje se CodeGuard (v borlandu 6 má stránku v project / options).
Pokud Vás zajímá programování pro paralelní výpočty hledejte klíčová slova – OpenMP, parallel C
Hra s tématem jazyka C - http://www.c-jump.com
Jak by neměly programy v jazyce C vypadat – výběr (překládat jako jazyk C, možná doplnit knihovny, pro globe zadat dva paremtry na řádku parametrů programu)
Volně dosažitelné knihy a články se vztahem k programování http://knihy.root.cz/
wikipedia cz – heslo „návrhový vzor“
wikipedia en – heslo „design pattern“
Překladače
Vlastní programy je možné překládat i na fest.stud.feec.vutbr.cz. Přihlásíte se svým jménem x...00, heslo jako do linuxu, mailu (asi). Komfort je zde oproti VC++ horší (jako v linuxu) ale na procvičení C/C++ to stačí a o překladu se zde patrně naučíte více. Je zde k dispozici řádkový překladač gcc (gcc --help pro začátek), program na zpracování programu make. Vlastní texty je možné psát v editoru textu (dostupný například z mc, nebo v editoru joe).
Je možné stahovat MS Visual C++. Je dostupné postupně ze stránek fakultního intranetu přes sekci informační systémy a položku „program MSDN academic alliance“. (což je adresa http://adam.feec.vutbr.cz/feec/msdnaa/index.php, nebo-li http://msdnaa.feec.vutbr.cz/)
vhodný a dostačující je každý překladač, který ctí normu C++
Poslední změna 2008-09-25