Programovat lze v podstatě úplně v čemkoliv, od prostých textových editorů až po sofistikovaná vývojová prostředí. Vývojová prostředí, Integrated Development Editor (IDE) jsou komplexní programy, jejichž nastavení je nezřídka velmi složité. V začátcích je proto klíčové pochopení základních principů, osvojení si programovacích dovedností a následné vyladění prostředí. Velmi užitečným pomocníkem je obarvování kódu a jeho formátování, které zvládné téměř libovolný editor. Naopak našeptávání syntaxe je pro začátečníka zavádějící, protože úplně nepříspívá k osvojí úplných základů. V případě delších kódu je však výhodné využít doplňování jmen proměnných a definovaných funkcí tak, aby nedošlo ke zbytečné frustraci nebo volbě zkratkovitých a tím méně srozumitelnách jmen. Další užitečné funkcí je ladění (debugging) kódu.
Začít se dá v editoru gedit
následně přejít na prokročilejší IDE, která se liší podporovanými jazyky, licencí i nabízenými nástroji. Příklad možných IDE je následující.
IDE | Podporované jazyky | Licence |
---|---|---|
Visual Studio Code | témeř cokoliv | zdarma |
NetBeans | Java, C/C++ | zdarma |
CLion | C/C++ | placené/ČVUT licence zdarma |
Ve cvičeních předmětu PRG budeme primárně pracovat s editorem Visual Studio Code. Nicméně konkrétní volba je vždy na vás.
Při instalaci VS Code na operační systém Ubuntu si můžeme vybrat ze dvou způsobů, a to z instalace přes terminál a instalace pomocí instalačního balíčku.
Ze stránek VS Code si stáhneme příslušný .deb balíček. Tento soubor funguje obdobně jako instalační soubory na Windows – otevřeme ho pomocí programu Software Installer a kliknutím na tlačítko Install nainstalujeme VS Code.
VS Code instalujeme podle stránky https://linuxize.com/post/how-to-install-visual-studio-code-on-ubuntu-18-04/
sudo apt update sudo apt install software-properties-common apt-transport-https wget wget –q https://packages.microsoft.com/keys/microsoft.asc -O- | sudo apt-key add – sudo add-apt-repository „deb [arch=amd64] https://packages.microsoft.com/repos/vscode stable main“ sudo apt install code===== Otevírání zdrojových souborů ===== Ve VS Code otevřeme adresář s podadresářem .vscode, nikoliv jednotlivé soubory *.c !
Rozšíření „Microsoft C/C++ extension“ je již součástí instalace.
1. VS Code instalujeme ze stránky https://code.visualstudio.com/download
2. Instalace MingW ze stránek http://www.mingw.org
3. Instalace „Microsoft C/C++ extension“ podle stránky https://code.visualstudio.com/docs/languages/cpp
Další informace: https://code.visualstudio.com/docs/cpp/config-mingw
Abychom mohli plně využít VS Code pro vývoj v jazyce C/C++, je potřeba mít nainstalované rozšíření Microsoft C/C++ Extension. V tuto chvíli by rozšíření mělo být jíž nainstalované, což můžeme ověřit následujícím způsobem.
Ctrl+Shift+X
)
Pokud je balíček již nainstalovaný, uvidíme následující.
Fig. 2: Nainstalované rozšíření C/C++ od Microsoftu..
Pokud balíček není nainstalován, uvidíme následující.
Fig. 3: Nenainstalované rozšíření C/C++ od Microsoftu..
V takovém případě můžeme rozšíření nainstalovat kliknutím na zelené tlačítko Install.
V projektovém adresáři bychom měli mít složku .vscode, ve které se nacházejí konfigurační soubory. Pokud otevřeme složku, ve které podsložka .vscode není, VS Code ji automaticky vytvoří.
code <cesta k projektové složce>
VS Code editor můžeme spustit klasicky pomocí ikonek, ale mnohem užitečnější je spouštění z terminálu. V terminálu slouží ke spuštění příkaz code
. Velkou výhodou je, že VS Code umí pracovat s konceptem pracovního adresáře a můžeme tedy rovnou otevřít požadovanou složku.
cd
code .
Příklad tohoto spuštění je
cd prp/hw01 code .
Samozřejmě můžeme spouštět i projekty v jiných složkách než je aktuální pracovní adresář. V našem případě bychom použili příkaz code prp1/hw01
. Informace o projektech (adresáři) jsou uloženy ve skryté složce .vscode
a v souborech .json
, které definuji jak soubor kompilovat a spouštět.
ctrl+`
ovšem okno terminálu zavírá. Pokud chceme vidět obsah terminálu i při editaci kódu, můžeme změnit chování této klávesové zkratky takto:
Z nabídek File
/ Preferences
/ Settings
vybereme Keyboard Shortcuts
. Vpravo nahoře klepneme na ikonu dokumentu se šipkou Open Keyboard Shortcuts (JSON)
. Otevře se soubor keybindings.json
, kam do hranatých závorek přidáme následující řádky:
{ "key": "ctrl+`", "command": "workbench.action.terminal.focus", "when": "editorTextFocus" },{ "key": "ctrl+`", "command": "workbench.action.focusActiveEditorGroup", "when": "terminalFocus" }
a soubor uložíme.
VS Code je ve výchozím nastavení konfigurováno pro formátování prostřednictvím clang-format
s možností využití uživatelsky definované konfigurace.
Nastavení file znamená, že se VS Code dívá do aktuálního pracovního adresáře a pokud tam existuje soubor .clang-format
použijej. Jako fall-back je pak nastaveno formátování Visual Studio.
Prostřednictvím terminálu ve VS zjistíme jak pracovní adresář, tak můžeme vytvořit .clang-format
, například doporučované nastavení
{BasedOnStyle: llvm, IndentWidth: 4, BreakBeforeBraces: Linux}
Níže zmíněné postupy nám mohou ulehčit mnoho práce a v budoucnu je jistě budeme všichni používat. Jelikož ale naším cílem je se naučit programovat a pochopit, co se při tom děje, je vhodné se naučit kompilovat manuálně, nikoliv pomocí magického tlačítka. Níže zmiņované možnosti tedy uvádíme jako informativní, abychom věděli, že existují, ale jejich používání v předmětu PRG je silně nedoporučované.
V adresáři, kde jsou umístěné zdrojové kódy C vytvoříme podadresář .vscode
a s následujícím obsahem: c_cpp_properties.json, launch.json, settings.json, tasks.json
.
Tyto soubory s vzorovým nastavením pro Windows a Ubuntu můžete stáhnout zde.
Pokud se rozhodneme použít tyto předpřipravené soubory, je potřeba správně nastavit argumenty kompilace, tj. přepínače a zdrojové soubory. Otevřeme soubor tasks.json
a najdeme náš task podle operačního systému – (gcc) Compile Win
nebo (gcc) Compile Linux
. V sekci args
správně nastavíme přepínače a zdrojové soubory, vždy na jeden řádek jeden.
Pokud máme správně nastavený projekt, tj. nastavili jsme soubory ve složce .vscode, pro kompilaci použijeme klávesovou zkratku Ctrl+Shift+B
a pak vybereme z nabídky (gcc) Compile Win
či (gcc) Compile Linux
podle našeho operačního systému. Pokud vše proběhne v pořádku, vytvoří se nám ve složce spustitelný soubor se shodným názvem jako zdrojový kód c, ale bez extenze, např. prvni_test
, který můžeme spustit z terminálu pomocí ./prvni_test
.
Použijeme klávesovou zkratku Ctrl+F5
(Run) nebo F5
(Debug), v případě potřeby v záhlaví panelu Debug (symbol brouka) nalevo vybereme konfiguraci (gdb) Launch Win
nebo (gdb) Launch Linux
.