Kniha Rozumíme CPP

Z CHWiki

Přejít na: navigace, hledání
Český název:Rozumíme C++
Původní název:Accelerated C++
Autor(ři):Andrew Koenig, Barbara E. Moo
ISBN:ISBN 80-7226-656-X
Originál ISBN:ISBN 0-201-70353-X
Vydáno:březen 2003
Vydavatelství:Computer Press
Edice:Programování
Vydavatel originálu:Addison-Wesley
Originál vydán:2000
Počet stran:412
Cílová skupina:Programátor - mírně pokročilý/pokročilý/odborník



[editovat] Obsah

Předmluva
1. Začínáme
2. Práce s řetězci
3. Smyčky a počítání
4. Práce s dávkami dat
5. Uspořádání programů a dat
6. Sekvenční kontejnery a analýza řetězců
7. Algoritmy knihovny
8. Asociativní kontejnery
9. Psaní obecných funkcí
10. Definování nových typů
11. Správa paměti a nízkoúrovňové datové struktury
12. Definování abstraktních datových typů
13. Přizpůsobení chování třídních objektů hodnotám
14. Dědičnost a dynamické vazby
15. Automatická (téměř) správa paměti
16. Nový pohled na znakové obrázky
17. A co dál?
A. Podrobné informace o jazyku
B. Stručný přehled knihovny
Překladový slovníček pojmů
Rejstřík



[editovat] Anotace

Ke zvládnutí jazyka C++ existuje i v češtině řada učebnic a výukových publikací. Přesto nelze říci, že by se po přečtení většiny z nich rodili zruční programátoři. Možná i vy jste nejednou prošli tradičním schématem studia jazyka C++: nejprve nějaké základy jazyka C, poté definice tříd, objekty a dále zbytek jazyka… Výsledkem je obvykle nemalý zmatek a ztráta odhodlání, protože po řadě lekcí stále nejste schopni psát užitečné programy.

Zcela jiný přístup vyzkoušeli autoři protřelí léty praxe v programování i výuce C++ v okamžiku příchodu nové standardní knihovny: používají standardní knihovnu hned od začátku výuky, soustřeďují se na objektové uvažování a tvorbu smysluplných programů, zatímco detaily jazyka se zabývají až ve chvíli, kdy toho umíte tolik, že detaily můžete produktivně využít. Pokud jste zvyklí programovat v jiném jazyce (včetně C), autoři vás zažitý způsob myšlení odnaučí. Už od začátku budete používat vysokoúrovňové datové struktury a jejich základy si vysvětlíte později.

To, že jejich netradiční přístup funguje, si autoři ověřili v kurzech profesionálního vzdělávání na Univerzitě ve Stanfordu, v nichž jejich studenti zvládnou vytvářet smysluplné programy již během prvního dne.

[editovat] Recenze

Recenzi dnešního titulu začnu v duchu anotace. K programovacímu jazyku C++ na trhu existuje řada knížek, z nichž některé jsou skutečné perly (např. Mistrovství v C++ nebo C++ Standardní knihovna a STL), jiné naopak kvalitou příliš neoplývají. Většina z nich má ale společnou jednu věc. Prakticky od počátku vedou čtenáře skrze prvky jazyka C, aby na to autoři navázali výklad o modernějších možnostech jazyka C++ a čtenář tak mohl získat solidní znalosti.

Ono tohle schéma prakticky nikoho nepřekvapí, protože oba jazyky spolu mají velice úzký vztah a některé věci z původního jazyka jsou velice důležité pro další práci. Překvapilo mě proto, když jsem dostal do rukou následující knížku, jež nese skromný název Rozumíme C++, jakým způsobem se může vést výuka. Sám mám tyto jazyky velice rád (a za zkušeného programátora se rozhodně nepovažuji) a prakticky ihned jsem se tedy do publikace začetl. Jak už bylo popsáno v anotaci, autoři vám ihned vyloží většinu karet na stůl a zbytek knihy vám jednotlivé konstrukce rozumnou formou popisují.

Samozřejmostí je doporučení, že všechny kódy je rozumné zkoušet, protože pouze čtení je sice hezké, ale ne příliš vhodné. Příklady jsou vybrány celkem vhodně, je ale pravděpodobné, že jste většinu z nich už v nějaké podobě dělali. Zejména tato předchozí věta platí, zabývali-li jste se studiem algoritmů a datových struktur. Zde je vše ale pod záštitou standardní knihovny. Zajímáte-li se tedy o C++ a chcete si rozšířit obzory, pak rozhodně nákup knihy doporučuji.

Na úplný závěr jedná drobná poznámka. Jeden z autorů knihy je Andrew Koenig, který má na svém kontě publikaci s názvem C Traps and Pitfalls, která stejně jako aktuální publikace vyšla v originále v prestižním nakladatelství Addison-Wesley. Bylo to v roce 1988. Zmiňuji to proto, že jsem před jistou dobou psal názor na titul Pasti a propasti jazyka C++ od pana Miroslava Viriuse. A právě C Traps and Pitfalls se stalo inspirací pro jeho dílko, jež jistě nejen mně pomohlo rozlišit několik klíčových prvků, které by mi jinak nedaly ještě dnes spát.

artman