Podrobná dokumentácia všetkých postupov a nástrojov používaných v predmete.
Akékoľvek návrhy, chyby a iné pripomienky prijímame emailom alebo v diskusnom fóre predmetu.
Spätnú väzbu oceníme a pomôže to tiež ostatným študentom! 🙂
Začíname
Návody v tomto manuáli slúžia na to, aby sme vedeli používať a nastaviť si všetky nástroje, ktoré počas predmetu budeme používať, či už doma, alebo na fakultných počítačoch.
Kapitoly manuálu sú rozdelené podľa operačných systémov, každému OS sa totiž viaže rozdielna sada nástrojov/postupov. Pri výbere určitej cesty je vhodné dohodnúť sa s cvičiacim. Nemusí nám totiž vedieť neskôr poradiť.
V úvode kapitoly sú uvedené možnosti, ako na danom OS pracovať:
Odovzdávanie a kontrola domácich úloh prebieha na študentskom serveri Aisa, s ktorým sa na začiatku zoznámime. Na fakultných počítačoch/Aise nemusia byť vždy dostupné všetky programy, ktoré potrebujeme, programy ale môžeme pridať cez modulový systém.
Na prvej prednáške tiež budú predstavené programy na spravovanie kódu, verzovacie systémy — konkrétne git, pomocou ktorého budeme ukladať svoj kód.
Rozdiely oproti jazyku Python
Po prvých cvičeniach tiež pravdepodobne budeme dosť uvažovať nad syntaxou C a odporúčame čerstvo po absolvovaní Úvodu do programovania pozrieť rozdiely oproti jazyku Python.
Kde hľadať dokumentáciu jazyka
-
Ak vyvíjame na Linuxe alebo macOS, najlepšie sú vstavané manuálové stránky — zobrazíme ich príkazom
man
.niektoré funkcie v C sa prekrývajú s názvami príkazov a vtedy je potrebné povedať, že chceme otvoriť kapitolu 3: man printf
zobrazí bash príkaz, zatiaľ čoman 3 printf
nám ukáže knižničnú funkciu, ktorú hľadáme. -
Veľmi presná dokumentácia C/C++. Vyhľadávanie nefunguje na približné slová — je treba hľadať cez externý vyhľadávač.
-
Webová aplikácia zjednocujúca veľké množstvo dokumentácií. Pre C využíva údaje z cppreference.
|
Aisa a kontr, pripojenie pomocou ssh
Aisa je náš študentský fakultný server. Funguje na ňom program kontr, ktorý hodnotí domáce úlohy.
Pro práci s Aisou se vám budou hodit tipy pro práci s bashem a Linuxem.
Nástroje
V rámci předmětu budete pracovat s mnoha nástroji na kompilaci a správu kódu, jejich přehled a návod na práci s nimi najdete zde.
git (verzovací systém)
Nástroj na zprávu kódu, bez kterého se v rámci tohoto předmětu neobejdet. Proto se bude hodit manuál pro práci s gitem.
Nastavení vlastního vývojového prostředí
Na cvičeních můžete pracovat na školních počítačích nebo vlastních noteboocích. Kromě výše zmíněných nástrojů budete potřebovat i program, ve kterém budete psát samotný kód. Jaký editor nebo IDE použijete, je čistě na vás, níže jsme vám sepsali pár návodů a triků pro jednotlivé operační systémy.
Vývoj na Windows
Na Windows máme viac možných ciest, používať budeme vývojové prostredia (viac o IDE).
IDE a editory
Integrated Development Environment (IDE) je softvér s grafickým rozhraním združujúci viaceré nástroje pre programátora. Bežné IDE obsahuje editor zdrojového kódu, kompilátor, integruje build a verzovacie systémy, debugger. Zvláda tiež inteligentne doplňovať kód, teda našepkáva programátorovi syntax, zvýrazňuje chyby a prípadne navrhuje opravy. Jednou z výhod sú aj jednoduché nástroje na refaktoring (zmena názvu premennej, predpisu funkcie, atp.).
Užívateľská prívetivosť je ale dvojsečná zbraň — to, že IDE pred nami skrýva viacero jednoduchých vecí, nám bráni porozumieť celému procesu, ktorý sa často, a úplne zbytočne, stane magickým. Z edukačného hľadiska odporúčame používať IDE, keď dokážeme pracovať iba v termináli. |
Visual Studio Code
Editor, který lze pomocí rozšíření dostat na úroveň plnohodnotného IDE, vhodný pro Windows, Linux i MacOS.
Vim
Terminálový editor pro Linux a MacOS. Dá se použít i na Windows v rámci WSL.
Qt Creator
IDE pro Windows, Linux i MacOS.
Za konzultácie a korektúry patrí vďaka Romanovi Lackovi, Lukášovi Zaoralovi a Lukášovi Ručkovi. Osobitná vďaka patrí tiež Matúšovi Talčíkovi, od ktorého som prebral časti starších návodov. A rovnako ďakujem študentom, ktorí nám pošlú spätnú väzbu!
— Marko Řeháček