Vozuch
Období: Týden 11/2026 (od 15.03.) Skupina: tria URL: https://github.com/tomasskudrzyk-dev/Vozuch.git
1. Splnění základních podmínek
| Podmínka | Status |
|---|---|
| Alespoň 3 commity v daném týdnu | ✅ SPLNĚNO |
| Rozestup alespoň 12h mezi 3 commity | ✅ SPLNĚNO |
| Projektová dokumentace (README, projekt.md) | ❌ NESPLNĚNO |
2. Přehled commitů
- 2026-03-16 08:29: Vytvoření středového kruhu, skóre, zprávy o výhře a popisu hry v README.md
- 2026-03-18 15:30: Přidání možnosti restartovat hru po vítězství jednoho z hráčů, úprava pozice zobrazení zprávy o vítězství, přidání popisu o tom jak restartovat hru v README.md
- 2026-03-20 15:12: Vytvoření zprávy o získání 10 bodů, změna čtverců na obdelníky, úprava odrazu míčku, přidání zrychlování míčku po odrazu od čtverců
3. Výsledky AI analýzy kódu
| Metrika | Hodnota |
|---|---|
| Celkové body (AI) | 16 / 20 b. (80%) |
| Náročnost projektu (Index) | 3 |
| Počet commitů | 3 |
| Změněné soubory | 2 |
| Počet přid./odeb. řádků kódu | 173 |
Komentář a zpětná vazba od AI
Ahoj! Jako tvůj pedagogický asistent jsem prošel tvůj progres za uplynulý týden. Je vidět, že jsi na hře Ping Pong zapracoval a přidal několik klíčových herních mechanik, jako je zrychlování míčku nebo restartování hry.
Zde je tvé hodnocení:
1. Smysluplnost popisů u commitů [3 body]:
Splněno. Tvé commity jsou velmi popisné, přehledné a jasně vysvětlují, co se v dané verzi změnilo (např. přidání restartu, úprava odrazu, zrychlování). To je skvělá praxe.
2. Smysluplnost komentářů v kódu [6 bodů]:
V kódu komentuješ v podstatě každý řádek. Pro účely výuky je to v pořádku, protože tím prokazuješ, že rozumíš tomu, co který příkaz dělá. Oceňuji, že jsi nezapomněl aktualizovat komentáře i po přejmenování proměnných (ze čtverců na obdélníky).
3. Kvalita a srozumitelnost dokumentace a struktura repozitáře [0 bodů]:
Zde musím body strhnout kvůli porušení pravidel struktury.
- Struktura: Soubory /ping_pong.py, /README.md a /ab.code-workspace máš umístěny přímo v kořenovém adresáři (rootu). Podle metodiky musí mít každý projekt svou vlastní složku.
- Dokumentace: README.md je sice přehledné a obsahuje návod k ovládání, ale chyba ve struktuře je v tomto hodnocení zásadní.
4. Logika řešení a přemýšlení studenta v Pythonu [7 bodů]:
V logice jsi udělal velký posun, ale objevilo se pár nedostatků:
- Progrese: Implementace zrychlování míčku (rychlost_micek_x += 1) a stavu vítězství je logicky správná a posouvá hru na vyšší úroveň.
- Duplicita kódu: Kolizi s pálkou kontroluješ v kódu dvakrát (jednou pro odraz a podruhé pro zrychlení). Měl bys obojí spojit do jednoho bloku if, aby byl kód efektivnější.
- Magické konstanty: Začal jsi používat pevné hodnoty 20 a 100 pro velikost pálky přímo v podmínkách kolize a vykreslování, místo abys používal proměnné velikost_obdelniku. To ztěžuje budoucí úpravy.
- Logická chyba v hranicích:
if obdelnik1_x > SIRKA // 2 - velikost_obdelniku1: obdelnik1_x = SIRKA // 10 - velikost_obdelniku1
zde je chyba – tato podmínka způsobí, že se pálka při pokusu o překročení poloviny hřiště "teleportuje" na pozici jedné desetiny šířky, místo aby se o hranici prostě zastavila.
Celkem získáno bodů: [16 / 80%] ze 20 možných
DIFFICULTY_INDEX: [3]
Kontrolní otázka k obhajobě
Všiml jsem si, že v úvodu kódu nastavuješ
velikost_obdelniku1na 50, ale v podmínkách pro kolizi a pohyb u spodního okraje používáš natvrdo hodnotu 100 – co přesně se stane s pálkou ve hře a jejím odrazem, pokud nyní v úvodu programu změníš hodnotu proměnnévelikost_obdelniku1na 200?