1. týždeň

Úvod

Čim sa budeme zaoberať na tomto predmete?

Ciele

  1. Zistiť, čo je to softvérové inžinierstvo.
  2. Zistiť podmienky získania zápočtu.
  3. Naučiť sa inštalovať nástroje potrebné pre vývoj.

Postup

Krok 1: Obsah cvičení

Vývoj softvéru sa neskladá len zo samotného programovania. Je to zložitý proces, ktorého sa zvyčajne zúčastňuje viacero ľudí. Na tomto predmete sa zoznámite s postupmi a nástrojmi, ktoré sa používajú pri profesionálnom vývoji softvéru.

  1. Softvér sa vyvíja postupne. Preto sa budeme zaoberať nástrojmi, ktoré nám v tom pomôžu. Predovšetkým systému pre správu verzií Git. Rozšírite svoje vedomostí o pokročilejšie možnosti tohto nástroja a hlavne prácu s vetvami.

  2. Softvér musí skutočne riešiť problém zákazníka a my musíme jeho problém a potreby používateľov pochopiť. Preto sa ďalej budeme venovať analýze požiadaviek a spôsobom ako stručne a jednoznačne opísať to s čím náš softvér má pracovať. Tomu bude venované aj prvé zadanie.

  3. Softvér musí spoľahlivo robiť to, na čo je určený. Aby sme sa v tom uistili, musíme ho testovať, najlepšie automaticky. Tomu, ako vytvárať takéto automatizované testy, sa budeme venovať v ďalšom bloku cvičení.

  4. Softvér sa vyvíja tímom, preto je podstatná organizácia tímu, prideľovanie úloh a komunikácia. Preto sa pozrieme aj na systémy pre sledovanie úloh, a tiež na prácu s pull/merge requests.

  5. Zároveň svoju prácu potrebujeme automatizovať. Preto sa budeme zaoberať nástrojmi ako CI servery a Docker.

Krok 2: Zadania a hodnotenie

Úloha 2.1

Krok 3: Nástroje

Pri vývoji softvéru sa používa množstvo nástrojov, ktoré zjednodušujú našu prácu, alebo ju robia efektívnejšou. Je potrebné naučiť sa tieto nástroje inštalovať a používať.

Inštalácia programátorských nástrojov v systéme Linux je väčšinou veľmi jednoduchá. Stačí použiť systém pre správu balíkov vašej distribúcie. Napríklad na inštaláciu Gitu a nástrojov pre vývoj v jazyku C stačí zadať jeden príkaz:

apt install git gcc make  # Ubuntu/Debian
dnf install git gcc make  # Fedora

V macOS je možné použiť nástroj Homebrew. Po jeho inštalácii použíte príkaz brew:

brew install git
brew install gcc
brew install make

Pre Windows odporúčame nainštalovať virtualizované postredie Windows Subsystem for Linux (WSL). V tomto prostredí pracujete podobne ako v Linuxovom prostredí a môžete použiť rovnaký postup pre inštaláciu nástrojov, ako je uvedené vyššie. Toto prostredie je zároveň potrebné pre nástroje, ktoré budete využívať neskôr (napríklad Docker).

Poznámka

Prostredie WSL sa správa ako virtuálny stroj, takže premenné prostredia a rôzne konfigurácie je nutné nastaviť podľa potreby v tomto prostredí, ako napríklad SSH kľúč pre použitie so školským GitLab systémom. Zároveň myslite na to, že nainštalované nástroje sú dostupné len v tomto prostredí, takže odporúčame nástroj GIT nainštalovať súčasne aj do systému Windows kvôli integrácii s vývojovými prostrediami.

Alternatívou k WSL je inštalácia nástrojov priamo v systéme Windows pomocou nástroja Chocolatey. Po tom, čo si ho nainštalujete, môžete ďalšie programy inštalovať jedným príkazom a Chocolatey zabezpečí zvolenie potrebných parametrov inštalácie a nastavenie premenných prostredia potrebných pre používanie inštalovaných nástrojov (napríklad premennej PATH). Takže inštalácia Gitu a nástrojov pre vývoj v C bude spočívať v týchto príkazoch:

choco install git --params "/GitAndUnixToolsOnPath /WindowsTerminal /Editor:VisualStudioCode"
choco install mingw
choco install make

Jedným z najpodstatnejších nástrojov programátora je editor zdrojového kódu alebo integrované vývojové prostredie. Na počítačoch v učebni máte nainštalovaný populárny editor Visual Studio Code. Aj ten je možné nainštalovať pomocou Chocolatey:

choco install vscode

Poznámka

VS Code podporuje množstvo funkcií, ktoré je možné dopĺňať pomocou rozšírení. Funkcie sa dajú nájsť v palete príkazov prístupnej pomocou skratky Ctrl+Shift+P.

Krok 4: Domáca úloha

Úloha 4.1

Nainštalujte si na svoj počítač nástroje podľa návodu v predchádzajúcom kroku. Pokiaľ je to možné, doneste si na budúce cvičenie vlastné notebooky s nainštalovaným nástrojmi.

Úloha 4.2

Pre efektívne používanie systému Git, ale i v bežnej praxi softvérového inžiniera je potrebné ovládať prácu s nástrojmi príkazového riadku. Prečítajte si doplňujúce zdroje k tomuto cvičeniu a uistite sa, že viete dobre používať tzv. unixový shell.

Úloha 4.3

Prečítajte si aspoň dve podkapitoly z knihy Pro Git:

Vytváranie SSH kľúčov a ďalšie príkazy si zopakujte pomocou materiálov z predmetu ZAP.

Zdroje

  • Scott Chacon a Ben Straub. Pro Git book — základná účebnica Gitu

Doplňujúce zdroje