Titan
Období: Týden 12/2026 (od 22.03.) Skupina: tria URL: https://github.com/viktordamek-lang/Titan.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) | ✅ SPLNĚNO |
2. Přehled commitů
- 2026-03-23 07:15: uprava a doplneni programu
- 2026-03-23 07:37: pridani komentařu
- 2026-03-27 16:56: uprava programu
- 2026-03-28 16:21: uprava programu
3. Výsledky AI analýzy kódu
| Metrika | Hodnota |
|---|---|
| Celkové body (AI) | 13 / 20 b. (65%) |
| Náročnost projektu (Index) | 3 |
| Počet commitů | 4 |
| Změněné soubory | 2 |
| Počet přid./odeb. řádků kódu | 778 |
Komentář a zpětná vazba od AI
Ahoj, jsem tvůj pedagogický asistent a prošel jsem tvou práci na repozitáři za uplynulý týden. Zde je tvé hodnocení:
1. Smysluplnost popisů u commitů [1 bod]
Popisy tvých commitů jsou bohužel velmi strohé a málo vypovídající. Zprávy jako „uprava programu“ nebo „pridani komentařu“ sice říkají, co se obecně dělo, ale neříkají nic o tom, co se v programu změnilo (např. že jsi přidal 5 nových funkcí do GUI). V profesionální praxi je důležité, aby z popisu bylo jasné, jakou konkrétní změnu commit přináší.
2. Smysluplnost komentářů v kódu [6 bodů]
V této kategorii jsi odvedl skvělou práci. Kód je velmi detailně okomentován, a to i u základních konstrukcí (vysvětlení self, pack(), Toplevel). I když je to pro pokročilého programátora až příliš detailní, pro účely tvého studia to ukazuje, že rozumíš tomu, co která část kódu dělá. Oceňuji vysvětlivky u knihovny Tkinter a logiky List comprehension u hesla.
3. Kvalita a srozumitelnost dokumentace a struktura repozitáře [1 bod]
Dokumentace (soubory _projekt.md) je velmi obsáhlá a přehledná. Bohužel však musím strhnout body za porušení pravidel struktury repozitáře:
- Chybné pojmenování souborů: Soubor /kalkulacka/1.py má nesmyslný název, který nijak nepopisuje svůj obsah.
- Soubory v rootu: V hlavní složce máš soubor /Kalkulator (bez přípony nebo nezařazen v podsložce).
- Překlepy v názvech: Složka <span style='color: red;'>konventor</span> obsahuje překlep (správně má být zřejmě "konvertor").
- README.md: Formátování v README (mezery mezi písmeny) je velmi nepraktické pro čtení a vyhledávání.
4. Logika řešení a přemýšlení studenta v Pythonu [5 bodů]
Tvůj posun od konzolových aplikací ke grafickému rozhraní (Tkinter) je velmi chvályhodný. Program je strukturovaný do třídy, což je správný objektový přístup. Použití slovníků pro převodní faktory a try-except pro ošetření vstupů jsou pokročilé techniky.
Bohužel jsem však v logice převodníku jednotek našel zásadní chybu:
- Ve funkci convert používáš vzorec: result = val * factors[t_unit] / factors[f_unit].
- Pokud převádím 100 cm na metry (kde factors pro 'm' je 1 a pro 'cm' je 0.01), tvůj výpočet provede: 100 * 1 / 0.01 = 10 000. Výsledek by měl být 1. Máš tedy prohozený čitatel a jmenovatel, nebo špatně definované faktory. I tvůj komentář v kódu obsahuje matematický nesmysl: 100 × (1 / 0.01) = 100 × 100 = 1 m (100 * 100 je 10 000).
Celkem získáno bodů: [13 / 65%] ze 20 možných
STUPNICE NÁROČNOSTI (Index 1-5): DIFFICULTY_INDEX: [3]
Kontrolní otázka k obhajobě
V komentáři u převodníku jednotek vysvětluješ příklad převodu 100 cm na metry výpočtem „100 × 100 = 1 m“ – mohl bys mi vysvětlit, proč jsi tam tento výpočet napsal a jaký výsledek by mi tvůj program vyhodil ve skutečnosti?