Skip to content

Latest commit

 

History

History
87 lines (51 loc) · 2.3 KB

readme.md

File metadata and controls

87 lines (51 loc) · 2.3 KB

Pod pokličkou SW inženýra (Arduino Day 2019)

Podklady pro přednášku z Arduino Day 2019 v Praze.

Psaní programu je jen malý kousek skládačky. Opravdový SW inženýr™ toho umí mnohem víc. V této přednášce se koukneme na některé věci z kuchyně SW inženýra, které by se mohly hodit i na takové to domácí programování…

Osnova

  • Co je SW proces
  • Verzování zdrojového kódu
  • Architektura a design aplikace
  • Testování (Unit Test)
  • Continuous Integration

Co je SW proces

SDLC


Verzování (nejen) zdrojového kódu

Proč?

  • historie - přístup ke všem Ctrl+S které jste kdy udělali
  • kooperace - abyste si s parťákem nepřepsali změny
  • branches - na pokusy
  • single point of true - co není verzované jako by nebylo
  • záloha

GitHub

  • nejen verzovací systém, ale i nástroj pro celý životní cyklus SW
  • dokumentace a sdílení

Příklady:

Tipy

  • Všechny závislosti musí byt verzované nebo explicitně uvedené (např. verze knihoven)
  • Primárně se verzuje zdrojový kód (text), ale obecně vše co je potřeba k sestaveni artefaktu
  • Knihovny a ext. závislosti neverzovat pokud jsou dostupné pres uložiště (repozitory), které verzovani umožňuje (pio lib), v opačném případě raději verzovat kopii než googlem
  • To co je v gitu by mělo stačit pro build

Vícevrstvá architektura

💡 PlatformIO


Unit Testy


Continuous Integration

  • Build po každém commitu
  • Build pro všechny prostředí, načisto
  • Spuštění Unit testů na CI prostředí
  • Uložení artefaktů (*.hex, *.elf)

Ukázka: