8000 Fix index formatting · HowProgrammingWorks/Book@4946701 · GitHub
[go: up one dir, main page]

Skip to content

Commit 4946701

Browse files
authored
Fix index formatting
1 parent 37f218b commit 4946701

File tree

1 file changed

+108
-13
lines changed

1 file changed

+108
-13
lines changed

content/Index.cz.md

Lines changed: 108 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,110 @@
11
# Obsah
22

3-
1. Úvod 1.1. Přístup k výuce programování 1.2. Příklady v jazycích JavaScript, Python a C 1.3. Modelování: abstrakce a opětovné použití 1.4. Algoritmus, program, syntaxe, jazyk 1.5. Dekompozice a separace odpovědnosti 1.6. Přehled specializace softwarového inženýra 1.7. Přehled programovacích paradigmat
4-
2. Základní pojmy 2.1. Hodnota, identifikátor, proměnná a konstanta, literál, přiřazení 2.2. Datové typy, skalární, referenční a strukturované typy 2.3. Kontexty a lexikální rozsah 2.4. Operátor a výraz, blok kódu, funkce, smyčka, podmínka 2.5. Procedurální paradigma, volání, zásobník a halda 2.6. Funkce vyššího řádu, čistá funkce, vedlejší účinky 2.7. Uzávěry, funkce zpětného volání, zabalení a události 2.8. Výjimky a řešení chyb 2.9. Monomorfní kód v dynamických jazycích
5-
3. Stav aplikace, datové struktury a kolekce 3.1. Stavové a bezstavové přístupy (stateful and stateless) 3.2. Struktury a záznamy 3.3. Pole, seznam, sada, n-tice 3.4. Slovník, hashovací tabulka a asociativní pole 3.5. Zásobník, fronta, deque 3.6. Stromy a grafy 3.7. Projekce a zobrazení datových sad 3.8. Odhad výpočetní složitosti
6-
4. Rozšířené koncepty 4.1. Co je technologický stack 4.2. Vývojové prostředí a ladění 4.3. Iterace: rekurze, iterátory a generátory 4.4. Stavební bloky aplikací: soubory, moduly, komponenty 4.5. Objekt, prototyp a třída 4.6. Částečná aplikace a curryfikace, skládání funkcí 4.7. Řetězení pro metody a funkce (chaining) 4.8. Mixiny (mixins) 4.9. Závislosti a knihovny
7-
5. Běžná programovací paradigmata 5.1. Imperativní a deklarativní přístup 5.2. Strukturované a nestrukturované programování 5.3. Procedurální programování 5.4. Funkcionální programování 5.5. Objektově orientované programování 5.6. Programování založené na prototypech
8-
6. Návrhové antivzory 6.1. Společné anti-vzory pro všechna paradigmata 6.2. Procedurální antivzory 6.3. Objektově orientované antivzory 6.4. Funkční antivzory
9-
7. Vývojový proces 7.1. Životní cyklus softwaru, analýza předmětné oblasti 7.2. Programovací konvence a normy 7.3. Testování: jednotkové testy, systémové a integrační testování 7.4. Kontrola a refaktoring kódu 7.5. Odhad zdrojů, plán rozvoje a harmonogram 7.6. Analýza rizik, slabá místa, nefunkční požadavky 7.7. Koordinace a úprava procesů 7.8. Průběžná integrace a nasazení 7.9. Optimalizace mnoha aspektů
10-
8. Pokročilé koncepty 8.1. Události, časovače a EventEmitter 8.2. Introspekce a reflexe 8.3. Serializace a deserializace 8.4. Regulární výrazy 8.5. Memoizace 8.6. Návrhové vzory: Factory, Poll 8.7. Typovaná pole 8.8. Projekce 8.9. I/O (vstup-výstup) a soubory
11-
9. Architektura 9.1. Dekompozice, pojmenování a spojování 9.2. Interakce mezi softwarovými komponentami 9.3. Propojení přes jmenné prostory 9.4. Interakce s voláními a zpětnými voláními 9.5. Interakce s událostmi a zprávami 9.6. Rozhraní, protokoly a smlouvy 6.7. Cibulová (onion) nebo vícevrstvá architektura
12-
10. Základy paralelních výpočtů 10.1. Asynchronní programování 10.2. Paralelní programování, sdílená paměť a synchronizační primitiva 10.3. Asynchronní primitiva: Thenable, Promise, Future, Deferred 10.4. Koprogramy, gorutiny, async/await 10.5. Adaptéry mezi asynchronními kontrakty 10.6. Asynchronní a paralelní kompatibilita 10.7. Přístup předávání zpráv a model aktorů 10.8. Asynchronní fronty i asynchronní kolekce 10.8. Bezzámkové datové struktury (lock-free)
13-
11. Pokročilá programovací paradigmata 11.1. Generické programování 11.2. Událostní a reaktivní programování 11.3. Programování automatů: konečné automaty (stavové stroje) 11.4. Jazykově orientované programování a DSL 11.5. Programování toku dat 11.6. Metaprogramování 11.7. Dynamická interpretace metamodelu
14-
12. Databáze a perzistentní úložiště 12.1. Historie databáze a navigační databáze 12.2. Klíč-hodnota a další abstraktní datové struktury 12.3. Relační datový model a ER-diagramy 12.4. Bezschémové, objektově orientované a dokumentově orientované databáze 12.5. Hierarchické a grafové databáze 12.6. Sloupcové databáze a databáze v paměti 12.7. Distribuované databáze
15-
13. Distribuované systémy 13.1. Meziprocesová komunikace 13.2. Bezkonfliktní replikované datové typy (CRDT) 13.3. Konzistence, dostupnost a distribuce 13.4. Strategie řešení konfliktů 13.5. Konsensuální protokoly 13.6. CQRS, EventSourcing
3+
1. Úvod 1.1. Přístup k výuce programování
4+
1.2. Příklady v jazycích JavaScript, Python a C
5+
1.3. Modelování: abstrakce a opětovné použití
6+
1.4. Algoritmus, program, syntaxe, jazyk
7+
1.5. Dekompozice a separace odpovědnosti
8+
1.6. Přehled specializace softwarového inženýra
9+
1.7. Přehled programovacích paradigmat
10+
2. Základní pojmy
11+
2.1. Hodnota, identifikátor, proměnná a konstanta, literál, přiřazení
12+
2.2. Datové typy, skalární, referenční a strukturované typy
13+
2.3. Kontexty a lexikální rozsah
14+
2.4. Operátor a výraz, blok kódu, funkce, smyčka, podmínka
15+
2.5. Procedurální paradigma, volání, zásobník a halda
16+
2.6. Funkce vyššího řádu, čistá funkce, vedlejší účinky
17+
2.7. Uzávěry, funkce zpětného volání, zabalení a události
18+
2.8. Výjimky a řešení chyb 2.9. Monomorfní kód v dynamických jazycích
19+
3. Stav aplikace, datové struktury a kolekce
20+
3.1. Stavové a bezstavové přístupy (stateful and stateless)
21+
3.2. Struktury a záznamy
22+
3.3. Pole, seznam, sada, n-tice
23+
3.4. Slovník, hashovací tabulka a asociativní pole
24+
3.5. Zásobník, fronta, deque
25+
3.6. Stromy a grafy
26+
3.7. Projekce a zobrazení datových
27+
3.8. Odhad výpočetní složitosti
28+
4. Rozšířené koncepty
29+
4.1. Co je technologický stack
30+
4.2. Vývojové prostředí a ladění
31+
4.3. Iterace: rekurze, iterátory a generátory
32+
4.4. Stavební bloky aplikací: soubory, moduly, komponenty
33+
4.5. Objekt, prototyp a třída
34+
4.6. Částečná aplikace a curryfikace, skládání funkcí
35+
4.7. Řetězení pro metody a funkce (chaining)
36+
4.8. Mixiny (mixins)
37+
4.9. Závislosti a knihovny
38+
5. Běžná programovací paradigmata
39+
5.1. Imperativní a deklarativní přístup
40+
5.2. Strukturované a nestrukturované programování
41+
5.3. Procedurální programování
42+
5.4. Funkcionální programování
43+
5.5. Objektově orientované programování
44+
5.6. Programování založené na prototypech
45+
6. Návrhové antivzory
46+
6.1. Společné anti-vzory pro všechna paradigmata
47+
6.2. Procedurální antivzory
48+
6.3. Objektově orientované antivzory
49+
6.4. Funkční antivzory
50+
7. Vývojový proces
51+
7.1. Životní cyklus softwaru, analýza předmětné oblasti
52+
7.2. Programovací konvence a normy
53+
7.3. Testování: jednotkové testy, systémové a integrační testování
54+
7.4. Kontrola a refaktoring kódu
55+
7.5. Odhad zdrojů, plán rozvoje a harmonogram
56+
7.6. Analýza rizik, slabá místa, nefunkční požadavky
57+
7.7. Koordinace a úprava procesů
58+
7.8. Průběžná integrace a nasazení
59+
7.9. Optimalizace mnoha aspektů
60+
8. Pokročilé koncepty
61+
8.1. Události, časovače a EventEmitter
62+
8.2. Introspekce a reflexe
63+
8.3. Serializace a deserializace
64+
8.4. Regulární výrazy
65+
8.5. Memoizace
66+
8.6. Návrhové vzory: Factory, Poll
67+
8.7. Typovaná pole
68+
8.8. Projekce
69+
8.9. I/O (vstup-výstup) a soubory
70+
9. Architektura
71+
9.1. Dekompozice, pojmenování a spojování
72+
9.2. Interakce mezi softwarovými komponentami
73+
9.3. Propojení přes jmenné prostory
74+
9.4. Interakce s voláními a zpětnými voláními
75+
9.5. Interakce s událostmi a zprávami
76+
9.6. Rozhraní, protokoly a smlouvy
77+
9.7. Cibulová (onion) nebo vícevrstvá architektura
78+
10. Základy paralelních výpočtů
79+
10.1. Asynchronní programování
80+
10.2. Paralelní programování, sdílená paměť a synchronizační primitiva
81+
10.3. Asynchronní primitiva: Thenable, Promise, Future, Deferred
82+
10.4. Koprogramy, gorutiny, async/await
83+
10.5. Adaptéry mezi asynchronními kontrakty
84+
10.6. Asynchronní a paralelní kompatibilita
85+
10.7. Přístup předávání zpráv a model aktorů
86+
10.8. Asynchronní fronty i asynchronní kolekce
87+
10.8. Bezzámkové datové struktury (lock-free)
88+
11. Pokročilá programovací paradigmata
89+
11.1. Generické programování
90+
11.2. Událostní a reaktivní programování
91+
11.3. Programování automatů: konečné automaty (stavové stroje)
92+
11.4. Jazykově orientované programování a DSL
93+
11.5. Programování toku dat
94+
11.6. Metaprogramování
95+
11.7. Dynamická interpretace metamodelu
96+
12. Databáze a perzistentní úložiště
97+
12.1. Historie databáze a navigační databáze
98+
12.2. Klíč-hodnota a další abstraktní datové struktury
99+
12.3. Relační datový model a ER-diagramy
100+
12.4. Bezschémové, objektově orientované a dokumentově orientované databáze
101+
12.5. Hierarchické a grafové databáze
102+
12.6. Sloupcové databáze a databáze v paměti
103+
12.7. Distribuované databáze
104+
13. Distribuované systémy
105+
13.1. Meziprocesová komunikace
106+
13.2. Bezkonfliktní replikované datové typy (CRDT)
107+
13.3. Konzistence, dostupnost a distribuce
108+
13.4. Strategie řešení konfliktů
109+
13.5. Konsensuální protokoly
110+
13.6. CQRS, EventSourcing

0 commit comments

Comments
 (0)
0