Princípy tvorby softvéru

Letný semester 2017/2018


Prednáčajúci: Robert Lukoťka (na hlavnú stránku)
Prednáška: štvrtok 13:10 M-V, streda 18:10 F-108
Konzultačné hodiny: po dohode mailom
Adresa: lukotka zavinac dcs.fmph.uniba.sk


Stránka LS 2017
Stránka LS 2016
Domáce úlohy z LS 2015

Hodnotenie predmetu:

50% skúška, informácie
50% domáce úlohy (odovzdávajú sa cez Moodle).
Zadanie domácej úlohy č.1 (do 28.3.2018)
Zadanie domácej úlohy č.2 (do 17.4.2018)
Zadanie domácej úlohy č.3 (do 28.4.2018)
Zadanie domácej úlohy č.4 (do 11.5.2018), riešenie s veľa komentarmi

Program a materiály:

Dátum Téma Materiály
štv 22.2. Proces vývoja softvéru
Agile contracting
Úvod
Procesy tvorby softvéru
str 28.2. Markdown, Makefile, GIT, ... GIT a iné
štv 1.3. Požiadavky, zachytávanie požiadaviek Požiadavky
str 7.3. Python Ukážkové zdrojáky
štv 8.3. Architektúra, architektonické štýly Architektúra
str 14.3. Architektúra "cvičenia" Rozoberali sme možnosti pre fyzickú organizaciu rozsiahleho systému na zber minútových dát z terénu. Snažili sme sa rozdeliť komplexný SW systém pre reštauráciu na menšie časti a špecifikovať interfacy medzi časťami (čosi ako táto dekompozícia systému na simulovanie priebehu kvalifikácie na MS vo futbale.)
štv 15.3. Modelovanie domény Modelovanie domény+ príklad modelu
str 21.3. Modelovanie domény "cvičenia" Kvalifikácia MS - analytický model (blízky doménovému), Minimodel reštauračného systému - analytický model (vzdialený doménovému + bez pokecu k ničomu, dole je lepšia verzia)
štv 22.3. Design princípy dizajnu (so zameraním na OO dizajn) Dizajnové princípy
štv 5.4. (prednáška sa nekonala) Logovanie v Pythone, Práca s časom a dátumom Logovanie v Pythone, Práca s časom a dátumom
str 11.4. Design patterns, Design smells, Code smells, Refactorization Design patterns
štv 12.4. Verifikácia a validácia Kvalita, testovanie
Unit testy zle, lepšie
str 18.4. Implementacia, coding konvencie Implementácia
štv 19.4. Konkurencia a paralelnosť Konkurencia a paralelnosť
štv 26.4. Prednáška sa nekoná Aby ste náhodou nedostali absťák od PTS, tu máte zopár videí od lepších prednášajúcich ako som ja (materiál z videí neskúšam):
Seven Ineffective Coding Habits of Many Programmers - zdôraznujem, že sám prednášajúci hovorí, že ak so všetkým súhlasíte, asi ste nepočúvali.
Go Concurrency Patterns - použiteľné aj mimo GO
The Value of Values - immutable data a konkurencia
Explaining Agile
How to Write Clean, Testable Code - trochu menej oddychové
The Three Laws of TDD - TDD do extrému, Kotlin, čo vedia editory
str 2.5. Perzistencia, databázy Perzistencia, databázy
štv 3.5. Project management, tvorba odhadov Management, estimácie
str 9.5. Dokumentácia, Údržba, Integrácia, Continious delivery Dokumentácia, údržba
Integrácia, Continious delivery
štv 10.5. Architektúra a návrh, opravný termín, Mikroservisy Diagram skonštruovaný na prdnáške (nie moc užitočný bez doprovodného pokecu)
Mikroservisy, video, M.Fowler
štv 17.5. Agile, Scrum, Lean, Lean Startup Agile, Lean + linky na videá o lean startup (stačí pozrieť jedno)