Od C++11 přibyly tzv. typové aliasy (using TypeAlias = OriginalType;). Jedná se o alternativu pro klasický typedef. V příspěvku uvedu několik důvodů, proč od C++11 na typedef zapomenout a využívat pouze typové aliasy.
Občas dochází k zaměňování pojmů znaková sada a kódování. Nejčastěji se s tímto setkávám v případech, kdy dotyčný hovoří o Unicode a např. UTF-8 tak, jako by to bylo to stejné. V příspěvku se podíváme na to, jaký je mezi těmito dvěma termíny rozdíl a budeme si to prakticky ilustrovat na příkladech v Pythonu.
Od C++11 je k dispozici specifikátor override. Lze pomocí něj označit virtuální metodu, která předefinovává (anglicky overrides) virtuální metodu z nadtřídy. V příspěvku uvedu dva důvody, proč je dobré všechny takovéto metody tímto specifikátorem označovat.
Možná jste se již setkali s C++ kódem, kde se místo size_t využívalo std::size_t. V tomto krátkém příspěvku se dozvíte, jaký je v nich rozdíl a který z nich používat.
Již delší dobu jsem uvažoval nad koupí mechanické klávesnice. Nakonec jsem si ji pořídil. V následujícím příspěvku bych se chtěl s vámi podělit o tom, co to je, k čemu to je, mezi čím jsem vybíral, pro co jsem se rozhodl a jaké jsou mé zkušenosti po týdnu používání.
V dalším díle našeho seriálu o produktivitě se podíváme na efektivní práci s počítačem. A věřte, že ač název příspěvku vypadá jako z devadesátých let, tak bude aktuální :). Podíváme se v něm na různé aspekty práce s počítačem, jako je psaní na klávesnici, práce se správcem oken, shellem, editorem atd. Na konci příspěvku pak uvedu odkaz, odkud si můžete stáhnout mé nastavení prostředí a programů.
V příspěvku se podíváme na to, proč v C++ při vkládání objektů do std::map přes operator[] vyvstává potřeba mít definovaný defaultní konstruktor. Následně si ukážeme způsoby vkládání objektů, při kterých tato potřeba odpadá.
Některé skutečnosti si člověk uvědomí či plně docení až u projektů, které trvají několik let a vystřídá se na nich více lidí. Tento příspěvek je o tom, jak učinit takové projekty udržovatelné, tedy schopné odolat náporu času a zásahům programátorů.