Podíváme se krátce na to, v čem se liší zpracování textových a binárních souborů. Vše si budeme ilustrovat v Pythonu. Tento příspěvek volně navazuje na můj předchozí příspěvek o rozdílech mezi znakovou sadou a kódováním.
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.
V dnešním příspěvku se podíváme na to, proč je dobré psát kód na jedné úrovni abstrakce (angl. single level of abstraction). Ukážeme si několik příkladů kódu, který tomuto principu nevyhovuje, poté jej upravíme a uvidíme, jaké výhody nám to přineslo.
Existuje mnoho druhů duplikace. Nejznámějším typem je duplikování kódu. Mezi další typ patří strukturální duplikace, o kterém jsem psal nedávno (Deméteřin zákon). Dneska se podíváme na další typ: duplikace znalostí a s tím související princip DRY.
Neberte mě špatně - Python je skvělý jazyk. Je mým oblíbeným jazykem a programuji v něm s přestávkami od roku 2007 (někdy od verze 2.5). Žádný jazyk ale není perfektní a Python není žádnou výjimkou. V dnešním příspěvku bych se s vámi chtěl podělit o skutečnosti, které se mi na Pythonu příliš nelíbí.
V dalším díle našeho seriálu o chybách v návrhu se podíváme na nešvar, kterého se mnohdy nevědomky dopouštíme: místo doménových typů k reprezentaci složených dat používáme řetězce.
Když chcete v Pythonu vyhodit výjimku, napíšete raise Exception. Od Pythonu 3 existuje méně známé rozšířená příkazu raise obsahující dodatek from AnotherException. Právě o tomto rozšíření pojednává následující příspěvek.
Python obsahuje řadu vestavěných objektů, které jsou unikátní. Mezi notoricky známé patří např. None, True či False. Jedním z těch méně známých je výpustka (angl. ellipsis), zapsaná jako tři tečky (...). V tomto příspěvku se dozvíte, o co jde a k čemu se tento objekt hodí.