Kurz "C++ Developer" - kurz 126 000 rub. z Yandex Workshop, školení 9 měsíců, datum: 11. prosince 2023.
Různé / / November 28, 2023
Naučíte se jen to, co se vám ve vaší práci bude určitě hodit.
C++ je komplexní jazyk pro složité systémy: samořídící auta a robotiku, webové prohlížeče, mikrokontroléry, servery a videohry. Kurz není jednoduchý, ale zvládnou ho i začátečníci, pokud učení věnují dostatek času a úsilí.
Vedoucí vývojový inženýr elektroniky, ctižádostivý vývojář a mentor na workshopu.
Kurz "C++ Developer"
Můžete si vybrat mezi základním a pokročilým programem: osvojte si pouze to nejnutnější, co je pro juniorního vývojáře nutné, nebo získejte více dovedností, rozšiřte svůj životopis a rychle vyražte na střední úroveň. Materiály pravidelně aktualizujeme – dozvíte se jen to, co budete v praxi určitě potřebovat.
Volitelný modul zdarma10 hodinZákladní koncepty programování
Naučíte se základy programování a naučíte se psát jednoduché programy v C++
Úvod do C++
Proměnné a vstup
Podmínky pro smyčku
Funkce
Tento modul je volitelný, ale pomůže vám seznámit se s naším školicím formátem.
1 modul 20 hodin
Úvod do C++
Seznámíte se se základními možnostmi jazyka C++ a napíšete v něm více než 25 programů.
Sprint 0. Základy C++.
• Čísla a řádky. Operace na nich. Vstup a výstup
• Stav a cykly
• V znamená vektor
• Funkce
• Sada kontejnerů
• Hluboké kopírování, reference a stálost
• Mapový kontejner
• Git
Prohledat projekt serveru
Vytvořte základ pro svůj vlastní vyhledávač.
2 modul 120 hodin
Základní pojmy jazyka C++ a jeho standardní knihovny
Osvojíte si pojmy důležité pro plnohodnotný vývoj C++:
• iterátory – pro práci se všemi standardními algoritmy,
• konstruktory – usnadňují vytváření objektů,
• šablony funkcí - pro psaní univerzálního kódu.
A také se naučte, jak zacházet se složitými programy: rozdělte kód do několika souborů a otestujte jej.
Sprint 1. Studujeme základní algoritmy, struktury a datové třídy. Ponoříme se do detailů a vyhýbáme se duplicitě kódu.
• Jednoduché algoritmy
• Struktury a třídy
• Funkce lambda
Sprint 2. Podívejme se blíže na celočíselné typy C++, stejně jako na n-tice a šablony funkcí. Pojďme zjistit, jak se C++ věnuje úspoře zdrojů, a naučíme se, jak se vyhnout chybám s tím spojeným.
• Práce s prostředím Visual Studio Code
• Číselné typy
• Páry a n-tice
• Šablony funkcí
• Viditelnost a inicializace proměnných
Sprint 3. Testování kódu a zvládnutí výkonu a flexibility tříd.
• Úvod do testování
• Nástroje pro testování a ladění
• Životní cyklus objektu
• Přetížení obsluhy
• Chyba při zpracování. Výjimky
Sprint 4. Rozdělíme kód do několika souborů a prohloubíme naše znalosti standardních algoritmů.
• Iterátory
• Algoritmy vyhledávání
• Zásobník, fronta, dek
• Distribuce kódu mezi soubory
Prohledat projekt serveru
Udělejte kód objektově orientovaný, napište rámec pro testy jednotek a rozdělte kód do souborů.
3 modul 130 hodin
Výkon a optimalizace
Naučíte se vyhodnocovat efektivitu vysoce výkonné aplikace před a po jejím vývoji. Naučte se pracovat se soubory a regulárními výrazy. Seznamte se s vnitřní strukturou kontejnerů. To vám umožní pochopit, jak nakonfigurovat jazykové prvky, aby fungovaly efektivně. Chcete-li se vyhnout zbytečnému kopírování kódu, ovládněte sémantiku přesunu.
Sprint 5. Pracujeme na rychlosti kódu a se soubory.
• Profilování a zrychlení
• Streamovací triky
• Jen o složitosti. Teorie rychlosti
• Práce se soubory
Sprint 6. Naučit se hospodařit s pamětí.
• Paměťový model v C++
• Jednotlivě propojený seznam
Sprint 7. Chápeme vnitřní strukturu kontejnerů a ovládáme sémantiku pohybu.
• Efektivní lineární kontejnery
• Přesun sémantiky
Projekt „Váš vlastní preprocesor“
Část C++ si implementujete sami, a to preprocesor, který předává zdrojový kód kompilátoru a zpracovává direktivy.
Projekt "Singly Linked List"
Vytvoříte si vlastní verzi samostatně propojeného seznamu, kontejneru, který podporuje efektivní přidávání a odebírání prvků.
Projekt "Simple Vector"
Napíšete si vlastní verzi vektoru, kontejneru, který poskytuje efektivní přístup k prvkům.
4 modul 120 hodin
Kvalita kódu
Naučíte se nástroje, které udržují kód v pořádku a chrání jej před lidskou chybou: jmenné prostory, stálost, RAII. Naučte se, jak zachránit svůj program před růstovými bolestmi. Osvojit si dynamický polymorfismus.
Sprint 8. Studujeme asociativní kontejnery a jmenné prostory.
• Asociativní kontejnery
• Jména a jmenné prostory
Sprint 9. Zjednodušujeme kód pomocí chytrých ukazatelů a rozumíme konceptu nedefinovaného chování.
• Inteligentní ukazatele
• Nedefinované chování
Sprint 10. Pokračujeme ve zjednodušování kódu pomocí dědičnosti a polymorfismu.
• Dědičnost a polymorfismus
Sprint 11. Ovládáme postupy softwarového designu.
• Stálost jako prvek návrhu programu
• Idiom RAII
Sprint 12. Dosažení elegance kódu.
• Filozofie dobrých vlastností
• Předávání dat funkci
• Získávání dat z funkce
• Refaktoring
Projekt "Dopravní adresář"
Napište program, který vám umožní budovat autobusové trasy ve městě.
5 modulů 140 hodin
Navrhování složitých programů
Napíšete plnohodnotný vektor, seznámíte se s variadickými šablonami a zárukami bezpečnosti výjimek.
Sprint 13. Zkusme se jako vývojáři knihoven a uvažujme o umístění objektů v paměti.
• DIY Vector
• Ukládání objektů do paměti
Sprint 14. Podíváme se dovnitř, jak funguje polymorfismus, prostudujeme oblíbený systém sestavení CMake, naučíme se používat knihovny třetích stran a budeme psát své vlastní.
• Tabulka virtuálních metod
• Sbíráme novým způsobem. CMake
Projekt "Kontejnerový vektor"
Vyvinete vektor, který automaticky zvětší svou velikost, efektivně pracuje s pamětí a nekopíruje objekty nadarmo.
Projekt "Dopravní adresář"
Rozdělte transportní adresář na dva programy: jeden vytváří databázi, druhý zpracovává dotazy.
6 modulů 40 hodin
Projekt "Tabulka"
Posílíte dovednosti psaní jasného a škálovatelného kódu: vyvinete velký program, který můžete vyvíjet v budoucnu.
Sprint 15. Absolventský projekt
Diplomový projekt "Tabulkový kalkulátor"
Diplomový projekt "Tabulkový kalkulátor"
Nejprve budete obhajovat návrhový projekt tabulky s buňkami a vzorci, poté napíšete kód.
Modul 7148 hodin (pouze v pokročilém kurzu)
C++ pro backend
Po základním programu můžete pokračovat v další specializaci a používat C++ pro back-endový vývoj.
Za 3 měsíce:
• Vyvíjet software pro Linux.
• Získejte dovednosti při zátěžovém testování.
• Naučte se pracovat s Docker a PostgreSQL DBMS.
• Rozšiřte své znalosti o vývojových knihovnách C++ a použijte ve svém projektu boost:: asio a boost:: beast.
Projekt "Hra na kurýra"
Napište kód pro backend malé hry. Hráči kurýrů v něm soutěží o to, kdo se nejlépe zorientuje v labyrintu ulic a doručí maximální počet objednávek.
K
kudryashovda
03.10.2020 G.
Složit!
Rád bych se podělil o své postřehy ohledně kurzu C++ Developer. Kurz začal před 4 týdny plus před tím jsem celý měsíc řešil problémy v bezplatné části kurzu. Hned upřesním – tým kurzu neustále sbírá zpětnou vazbu od studentů – nejprve vyplňováním anonymních formulářů a nyní prostřednictvím recenzní soutěže. Za recenzi na téma soutěže bylo slíbeno balení kávy :) Jinak jak jinak...
Vývojář C# je osoba, která do počítače zapíše magické „kouzlo“ – kód. Aby počítač pochopil, co a kdy počítat, dělat a zobrazovat na obrazovce. Každý vývojář C# cítí, jak moc ho jeho okolí respektuje. Sám se rozhoduje, kde bude pracovat. A proto občas pracuje pod palmami.
4,1
19 990 ₽