Programovací projekt Mgr. Jakub Večeřa
Cílem předmětu je poskytnout a rozvíjet dovednosti, které souvisí se zapojením do již běžícího softwarového projektu. Studenti by si v rámci tohoto kurzu měli vyzkoušet zejména spolupráci s dalšími programátory, navázání na předchozí práci jiných programátoru a také práci s reálnou infrastrukturou pro správu projektů.
Hlavní náplní předmětu je zpracování projektu, který představuje novou ucelenou funkcionalitu, která je součástí již existujícího softwarového celku.
Charakter projektu
- Časová náročnost projektu by měla odpovídat přibližně 60 až 80 hodinám práce.
- Projekt může být open-source i komerční, tj. ve spolupráci s firmou.
- Téma projektu je možné zvolit z nabídnutého seznamu nebo podle vlastního uvážení.
U vlastního tématu, by se mělo jednat o běžící projekt, na kterém pracuje více osob.
U projektů komerčního charakteru je forma spolupráce nechána na individuální domluvě.
U žádného projektu by se nemělo jednat o opravy chyb, lokalizaci, pouhé úpravy konfigurace.
Postup při řešení projektu
- Student či studentka si zvolí téma a svou volbu oznámí vedoucímu semináře na email
jakub.vecera01@upol.cz
. - Pokud se nejedná o vlastní téma, dostane student či studentka kontakt na osobu, mentora, která mu nebo jí, poskytnete podrobnější vysvětlení a případně další informace.
- V případě, že bude zvolené téma v pořádku (je stále volné, odpovídá povaze předmětu), vypracuje student či studentka návrh projektu. Návrh projektu by měl být text v rozsahu cca půl strany A4, ze kterého bude patrné, co bude předmětem projektu.
- Po schválení projektu vedoucím semináře, se může student či studentka pustit do vypracování projektu. Nejzazší termín na vypracování projektu je do konce zimního semestru. V případě spolupráce s firmami je vhodnější domluvit dřívější termín.
- Zápočet bude udělen
- po předložení závěrečné zprávy, cca půl strany A4 shrnující práci na projektu,
- a doložení, že projekt byl skutečně zpracován, např. odkazem na repozitář, předvedením programu.
Témata projektů
Seznam témat se připravuje. Jako inspirace slouží následující témata z předchozích ročníků.
- Rozšíření MolMeDB (více projektů, open-source, UPOL).
-
Rozšíření NextCloud (více projektů, open-source, UPOL):
- Plugin do NextCloud, pro usnadnění zakládání adresářů pro odevzdávání závěrečných prací.
-
Rozšíření bakalářské práce Upolníček:
- Implementace automatického testování úkolů a nějaké rozumné zpracování výsledků.
- Plugin do nějakého vývojového prostředí pro systém Upolníček, který by umožňoval odevzdávat úkoly přímo z IDE.
-
Projekty v C#
- Unity - více témat. Contribution guide: https://docs.unity3d.com/2020.1/Documentation/Manual/ContributingToUnity.html
- AvaloniaUI - více témat. [https://github.com/AvaloniaUI/Avalonia]
-
Testovací framework XUnit - více témat
- Implementace varování v případě asynchronních assertů [https://github.com/xunit/xunit/issues/2346]
- Podpora odkazů v textech s cizí abecedou [https://github.com/xunit/xunit/issues/2513]
-
Testovací framework NUnit - více témat
Jeden z příkladů: Sjednocení kódu pro konverzi typů [https://github.com/nunit/nunit/issues/3219] - MoneyFox (sestavování rozpočtu) - Implementace dynamických kategorií k filtrům [https://github.com/MoneyFox/MoneyFox/issues/2741]
- TerraFX - Implementace XAudio2 nebo WASAPI pro audio přehrávač na Windows [https://github.com/terrafx/terrafx/issues/108]
- TerraFX - Implementace systému pro kameru [https://github.com/terrafx/terrafx/issues/105]
- Rozšíření Pandoc - Způsob zadání pozice caption ve výstupu LaTeX. [https://github.com/jgm/pandoc/issues/5116]
- Rozšíření Linear - synchronizace github issues. [https://github.com/linear/linear/issues/227]
-
Rozšíření Godot Engine:
- Úprava přepínání scény [https://github.com/godotengine/godot/issues/81314]
- Při projevení zájmu - vymyšlení tématu v Common Lispu.
-
Doplňky do PDF prezentačního nástroje Pympress [https://github.com/Cimbali/pympress]
- Pamatování kreslení (highlight) napříč slajdy a možnost jeho uložení a načtení do/ze souboru
- Schovávání a interaktivní změna velikosti softwarového laseru
- Volně editovatelné anotace (poznámky)
Je možné si zvolit vlastní téma.
Stránka byla převzata od Dr. Krajči a Mgr. Vyjídáčka