Maximistr
Období: Týden 15/2026 (od 12.04.) Skupina: tria
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 | ❌ NESPLNĚNO |
| Projektová dokumentace (README, projekt.md) | ✅ SPLNĚNO |
Vypočtený Index za tento týden: 304
Týdenní Index Náročnosti dodaných skriptů (1-5): 4
2. Kvantitativní přehled úprav
| Metrika | Hodnota |
|---|---|
| Počet všech commitů | 3 |
| Počet změněných souborů | 2 |
| Počet přid./odeb. řádků kódů | 207 |
Přehled commitů
- 2026-04-17 21:04: Add initial implementation of Minesweeper automation script
- 2026-04-18 09:45: Refactor Minesweeper automation script for improved readability and structure; add project documentation outlining functionality and technical details.
- 2026-04-18 20:58: Enhance Minesweeper automation script to improve cell state detection and handling; add functionality for flagging cells based on neighboring mines.
3. Hodnocení asistentem AI (Logika a úsilí)
Dobrý den, jako tvůj pedagogický asistent jsem zhodnotil tvou práci na projektu automatizace hry Hledání min (Minesweeper) za uplynulý týden. Vedl sis velmi dobře, zejména v oblasti dokumentace a struktury kódu.
Zde je podrobné hodnocení podle stanovené metodiky:
1. Smysluplnost popisů u commitů [3 body]:
Splněno. Commity jsou velmi kvalitní, popisné a sledují standardy (např. používání sloves jako "Enhance", "Refactor", "Add"). Jasně z nich vyplývá, co se v daném kroku v projektu změnilo.
2. Smysluplnost komentářů v kódu [6 bodů]:
Splněno. V refaktorované verzi souboru test.py jsi doplnil vyčerpávající komentáře, které vysvětlují nejen co kód dělá, ale i proč (např. vysvětlení empirických offsetů nebo principu match-case). To výrazně pomáhá čitelnosti.
3. Kvalita a srozumitelnost dokumentace a struktura repozitáře [2 body]:
Splněno.
- Struktura: Všechny projekty mají své vlastní složky, v rootu se nacházejí pouze konfigurační a přehledové soubory (README.md, .gitignore), což je v pořádku.
- Dokumentace: Soubor 06_pyautogui_see_test_projekt.md je zpracován precizně, obsahuje technické detaily, seznam knihoven i popis algoritmu.
- Výtka: Soubor s hlavním kódem se jmenuje test.py, což je velmi obecný název. Příště zvol raději výstižnější jméno, např. minesweeper_solver.py.
4. Logika řešení a přemýšlení studenta v Pythonu [7 bodů]:
V této kategorii oceňuji tvůj posun od prostého čtení pixelů k vytvoření 2D reprezentace hracího pole (rows), což umožňuje implementovat logiku řešení. Použití match-case pro barvy je moderní a elegantní řešení.
V kódu se však objevila logická chyba v části pro označování min (flagging):
Ve smyčce, kde kontroluješ sousedství, máš následující blok:
if temp == 1 and target:
<span style='color: red;'>rows[tr][tc] = "F"</span>
<span style='color: red;'>tr, tc = target</span>
Zde se snažíš přistoupit k proměnným tr a tc dříve, než do nich přiřadíš hodnotu z target. Program v tomto místě vyhodí chybu NameError: name 'tr' is not defined. Správně by mělo být nejprve přiřazení souřadnic a až poté zápis do seznamu.
Dále je tvá metoda detekce prázdných buněk pomocí relativního pohybu o 10 pixelů a kontroly bílé barvy (pag.moveRel(-10,0)) sice kreativní, ale velmi křehká (závislá na konkrétním rozlišení a skinu hry). Nicméně jako proof-of-concept pro středoškolský projekt je to zajímavý přístup k automatizaci.
Celkem získáno bodů: [18 / 90%] z 20 možných
DIFFICULTY_INDEX: [4]