Kapitola 1 Jak se naučit jazyk hluboce a efektivně 1 1.1 Učení ve srovnání 2 Různé jazyky, jiná pravidla 2 Pravdivé a nepravdivé hodnoty v jazycích C a Ruby 3 Pravdivé a nepravdivé hodnoty v Javě 3 1.2 Učení z historie 4 Pochopte záměr jazykového designéra 4 Nevíme, jaký jazyk se máme naučit 4 Naučte se, co funguje v různých jazycích 5 1.3 Shrnutí 6 Kapitola 2 Historie zrodu programovacích jazyků 7 2.1 Historie zrodu programovacích jazyků 8 Připojení kabelu 8 Program vestavěný 9 Fortranský jazyk vyšel 10 2.2 Důvody vzniku programovacích jazyků 11 Lenost: Jedna ze tří ctností programátora 11 Jazyky mají své vlastní výhody 12 2.3 Shrnutí 13 Kapitola 3 Zrod gramatiky 15 3.1 Co je syntax 16 Priorita operátora 16 Syntax je sada pravidel navržených jazykovými designéry.17 3.2 Zásobníkový stroj a čtvrtý jazyk 17 Proces výpočtu 18 Jak vyjádřit řád výpočtu 18 Stack Machine 19 je stále v provozu 3.3 Syntaktický strom a jazyk Lisp 20 Výpočetní tok 20 Jak vyjádřit pořadí výpočtů 20 Syntaxový strom 21 je stále v provozu Sloupec Pro ověření, zda je porozumění správné, musíte jej nejprve vyjádřit 23 3.4 Notace přípony 24 Gramatický analyzátor 24 Soutěž pravidel 25 Sloupec, když nevíte, co studovat 25 3.5 Shrnutí 26 Kapitola 4 Řízení procesu programu 27 4.1 Zrod strukturovaného programování 28 4.2 Před vznikem výroku if 28 Proč existuje if výrok 28? Proč je tu, pokud... else tvrzení 30 4.3 Zatímco příkaz - opakovaně vykonávej, pokud jsou výroky stručnější 33 Výrazy používající příkazy while 33 Výrazy bez použití příkazů while 34 4.4 Pro výrok – udělejte výrok while s rostoucí hodnotou stručnější 35 Výrazy používané pro tvrzení 35 Výrazy, které se nepoužívají pro věty 35 foreach - řídí operace smyčky založené na objektu, který je zpracováván 36 4.5 Shrnutí 37 Kapitola 5 Funkce 39 5.1 Role funkcí 40 Snadno pochopitelné—jako organizace 40 Snadné znovupoužití – stejně jako části 41 Charakteristiky opětovného využití v programu 41 5.2 Příkaz k návratu 42 Zrod funkcí 43 Dedikovaná paměť 44 pro zaznamenávání destinací skoků Pojmenování sloupcové funkce 45 Stack 45 5.3 Rekurzivní volání 47 Efektivní manipulace s vnořenými strukturami 48 Manipulace s vnořenými strukturami 48 5.4 Shrnutí 52 Kapitola 6 Zpracování chyb 53 6.1 Programy také obsahují chyby 54 6.2 Jak komunikovat chybu 55 Komunikujte chybové informace pomocí vrácené hodnoty 55 Skočte na 58, pokud uděláte chybu 6.3 Struktura příkazu 61 obsahující kód, který může být chybný Stanovisko Johna Goodenougha 61 Zaveden CLU jazyk 62 Zavedení jazyka C++ Language 62 Představujeme Windows NT 3.1 63 6.4 Výjezd vyžaduje pouze jednu 64 Proč byl nakonec představen model 64 Párový provoz bez vynechání 64 6.5 Kdy hodit výjimku 68 Nedostatečné parametry, když je funkce volána jako 68 Pole odcházející 69 Ihned po chybě vyhoďte výjimku 70 6.6 Výjimka Passing 71 Doručování problému 71 s výjimkou Výjimky pro inspekci jazyka Java 71 Důvody, proč nejsou vyšetřovací abnormality široce používány 73 Sloupec konkrétních znalostí a abstraktní znalosti 73 Učení ve sloupcích klade důraz na žvýkání a polykání pomalu 74 6.7 Shrnutí 74 Sloupec Začíná tam, kde potřebujete číst 75 Kapitola 7 Název a rozsah 77 7.1 Proč název 78 Jak vybrat jméno 79 Konflikt jmen 80 Jak se vyhnout konfliktu 80 7.2 Vývoj Scopes 81 Dynamický Scope 82 Statický Scope 84 7.3 Je statický zaměřovač dokonalý 88? Rozsah v jiných jazycích 88 Problém 89 s vnořenými funkcemi Převazba externích dalekohledů 91 7.4 Shrnutí 93 Kapitola 8 Type 95 8.1 Co je typ 96? 8.2 Výrazy zapnutých a vypnutých hodnot 97 Vynález digitálních číslic 97 Sedmisegmentový digitální elektronkový displej 98 Abacus 99 8.3 Kolik žárovek je potřeba na digitální číslici 100 Od desetinného po binární 100 Oktal vs. Hex 102 8.4 Jak vyjádřit reálná čísla 103 Počet pevných bodů – pozice desetinné čárky je určena číslem 103 Číslo s plovoucí desetinnou čárkou – Samotná hodnota obsahuje informace o tom, kde začíná desetinná část 104 8.5 Proč se vyskytuje typ 107 Žádné žánrové problémy 107 Typ 108 v raném jazyce Fortran Uveďte procesorovou proměnnou typ 108 Implicitní převod typu 109 8.6 Různé vývoje typů 111 Uživatelsky definovaný a objektově orientovaný 112 Typ 112 jako vlastnost Generické typy, generika a šablony 113 Dynamický typ 116 Odvod typu 118 8.7 Shrnutí 122 Sloupec Master osnovy před přečtením detailů 122 Kapitola 9 Kontejnery a řetězce 125 9.1 Různorodost kontejnerů 126 9.2 Proč existují různé druhy kontejnerů 127 Pole vs. Propojený seznam 127 Silné a slabé stránky propojených seznamů 130 Sloupec Big O – Stručné vyjádření vztahu mezi výpočetním časem a datovým svazkem 131 Rozdíly v jazyce 132 9.3 Slovníky, hashe a asociativní pole 132 Hash list 133 Strom 134 Doba čtení prvku 136 Neexistuje univerzální kontejner 138 9.4 Co je to postava 139? Znakové sady a způsob kódování znaků 139 Coding 140 před vznikem počítačů Kódování znaků v EDSAC je 142 Éra ASCII a éra EBCDIC 142 Japonský kód 144 shift_jis kódování naruší program 145 Magic Annotator 147 Unicode přináší jednotný 148 9.5 Co je to String 150? Pascalové řetězce s informací o délce a C řetězce bez této informace 150 1 znak je 16 bitů řetězce 153 v jazyce Java Změna návrhu zavedená v Pythonu 3 153 Výzva 154 pro Ruby 1.9 9.6 Shrnutí 155 Kapitola 10 Paralelní zpracování 157 10.1 Co je paralelní zpracování 158 10.2 Rozdělení před rokem 158 10.3 Střídání dvou metod 159 Režim kolaborativního multitaskingu – střídejte 159 na příslušném uzlu Režim preemptivního multitaskingu – střídání o 160 stupňů po určité době 10.4 Jak se vyhnout závodní podmínění 160 Tři podmínky pro stanovení závodních podmínek 161 Žádné sdílení – model procesu a aktéra 162 Žádné úpravy – const, val, immutable 164 Žádný zásah 164 10.5 Problémy a protiopatření zámků 166 Problém se zámky 166 Vyřešit 167 s pomocí transakční paměti Historie transakční paměti 168 Transakční paměť uspěje 169 10.6 Shrnutí 170 Kapitola 11 Předměty vs. třídy 171 11.1 Co je objektově orientované 172 Objektově orientované konotace se liší podle jazyka 172 Objektem je skutečný model 174 Co je třída 175? 11.2 Metody modelování agregačních proměnných a funkcí 175 11.3 Metoda 1: Modul, Balíček 176 Co je modul, balíček 176 Objekt návrhu balíčku 177 v Perlu Samotné moduly nestačí. 178 Uložená data samostatně 179 Předejte parametru jiný hash 179 Zadejte také proces inicializace do balíčku 180 Propojení hashů a balíčků dohromady 181 11.4 Metoda 2: Vložte funkci také do hashu 183 První třída 183 Vložte funkci do hashe 184 Vytvořte více čítačů 185 Vložte sdílené atributy do prototypu 186 Je to objektově orientované 189? 11.5 Metoda 3: Uzavření 190 Co je uzavření 190? Proč se tomu říká closure 191? 11.6 Metoda 4: Třída 191 Třída 192, kterou si představoval Hall Třída 192 v jazyce C++ Role popisů funkcí 193 Tři hlavní funkce tříd 193 11.7 Shrnutí 194 Kapitola 12 Dědictví a opětovné použití kódu 195 12.1 Co je Dědictví 196? Dědění různých implementačních strategií 197 Dědictví je dvousečná zbraň 199 Richterův princip obživy 199 12.2 Vícenásobné nástupnictví 201 Věc je v několika klasifikacích 201 Vícenásobné dědičnost je velmi pohodlná pro implementaci opětovného použití režimů 202 12.3 Problém vícenásobné dědičnosti – stále existuje konflikt 203 Řešení 1: Vypnout dědičnost více 205 Řešení 2: Vyhledávání 207 postupně Řešení 3: Smíšené zpracování 211 Řešení 4: vlastnost 213 12.4 Shrnutí 216 Sloupek kapitola po kapitole od začátku 217
Odkazy:https://pan.baidu.com/s/1PN5Kicx4DdUgFOYQfr1yzQ&shfl=sharesetExtrakční kód:Turisté, pokud chcete vidět skrytý obsah tohoto příspěvku, prosím Odpověď
|