Övningsuppgift
Övningsuppgift kap 1-18
Utveckla en grafisk app i Python med Tkinter. Uppgiften tränar programmering, projektmetodik, planering, testning och utvärdering med koppling till Teknik 2.
Innehåll
Uppgiften bygger på det du har arbetat med i kapitel 1-18.
Syfte och uppgift
Du ska planera, genomföra och utvärdera ett mindre tekniskt arbete där du utvecklar en app i Python. Appen ska byggas med Tkinter och ha ett tydligt syfte för en användare.
Appen ska kunna användas på macOS och lämnas in så att den kan startas direkt som en app-fil, utan att användaren först behöver öppna Python-koden manuellt.
Uppgiften ska kunna lösas med vanlig Python och sådant ni har arbetat med i kursen. Appens funktion ska inte kräva sensorer, extra hårdvara eller externa moduler.
Du ska visa att du kan
- gå från idé till färdig lösning
- planera innan du programmerar
- skapa ett grafiskt gränssnitt
- testa, felsöka och förbättra
- utvärdera resultatet
Tekniska krav
Appen ska:
- vara skriven i Python
- använda Tkinter som grafiskt gränssnitt
- kunna köras på macOS
- kunna startas direkt som en app-fil i macOS
- ha ett grafiskt fönster med till exempel knappar, etiketter, textfält eller menyer
- byggas med kunskaper från kursen och läromedlet
- inte kräva sensorer, extra hårdvara eller externa moduler för själva appens funktion
- vara tillräckligt tydlig för att en användare ska förstå hur den används
Exempel på appidéer
Du får välja en egen idé, men den ska passa nivån och gå att bygga med Python och Tkinter.
- miniräknare
- Yatzy eller annat enkelt tärningsspel
- quiz-app
- poängräknare
- budgetapp
- enkel bokningsapp
- temperatur- eller enhetsomvandlare
- registerapp
- att-göra-lista
- menybaserad spel- eller verktygsapp
Det här ska lämnas in
1. Planering
- beskrivning av uppgiften eller problemet
- syfte med appen
- vem appen är tänkt för
- pseudokod, skiss eller flödesschema
- enkel plan för hur appens gränssnitt ska byggas
2. Kod och app
- fungerande Pythonkod
- Tkinter-gränssnitt
- tydliga namn på variabler och funktioner
- kommentarer där det behövs
- kod som är möjlig att följa
- en fungerande app-fil för macOS som kan öppnas direkt
3. Test och utvärdering
- hur du testat appen
- vilka fel som uppstod
- hur du löste felen
- vad som fungerar bra
- vad som kan förbättras
- kontroll att appen fungerar som app-fil i macOS
E-nivå: Enkel och fungerande app
För E-nivå ska du genomföra en enkel och fungerande app.
Appen ska
- ha ett grafiskt gränssnitt i Tkinter
- lösa en enkel uppgift
- använda variabler
- använda inmatning och utskrift eller visning i fönstret
- innehålla villkor och/eller loopar
- fungera för vanliga inmatningar
- ha enkla instruktioner så att användaren förstår hur appen används
- kunna startas som app-fil i macOS
Du ska också
- beskriva vad appen ska göra
- visa enkel planering
- testa att appen fungerar
- ge enkla kommentarer om arbetet
Exempel på E-nivå
- enkel miniräknare med grundläggande funktioner
- enkel omvandlarapp
- enkelt quiz med några frågor
- enkel poängräknare
C-nivå: Mer utvecklad app
För C-nivå ska du genomföra en mer utvecklad app med tydligare struktur och mer systematisk testning.
Appen ska
- lösa en tydligare och mer omfattande uppgift
- vara uppdelad i funktioner
- använda flera kontrollstrukturer
- hantera felaktig inmatning på ett rimligt sätt
- ha ett tydligt och användbart gränssnitt i Tkinter
- vara tydligt anpassad till syfte och användare
- ha kod som är tydlig och strukturerad
- kunna startas som app-fil i macOS
Du ska också
- göra en tydlig planering innan programmeringen börjar
- använda pseudokod, diagram eller liknande metod
- testa appen mer systematiskt
- beskriva problem, lösningar och förbättringar
- resonera om hur appen passar användaren
Exempel på C-nivå
- miniräknare med flera funktioner och tydlig layout
- Yatzy i förenklad form med tärningskast och poängräkning
- budgetapp med flera val
- quiz-app med poängsystem
- enkel bokningsapp med listor
A-nivå: Välutvecklad app
För A-nivå ska du genomföra en välutvecklad och mer komplex app, fortfarande inom ramen för vanlig Python och Tkinter.
Appen ska
- lösa en uppgift med flera delar som hänger ihop
- vara tydligt strukturerad i funktioner eller andra delar
- hantera fel och oväntade inmatningar på ett genomtänkt sätt
- ha ett tydligt, användarvänligt och välplanerat gränssnitt
- vara mycket väl anpassad till syfte och användare
- visa att du gör genomtänkta val i appens struktur och användning
- kunna startas som app-fil i macOS
Du ska också
- planera arbetet tydligt
- motivera dina lösningar
- testa appen systematiskt och förbättra den efter tester
- utvärdera styrkor, svagheter och möjliga förbättringar
- visa god förståelse för problemlösning och programmering
Exempel på A-nivå
- Yatzy eller annat tärningsspel med flera rundor och tydligt poängsystem
- menybaserad app med flera funktioner som hänger ihop
- budget- eller registerapp som kan spara och läsa data i fil
- quiz- eller spelapp med flera nivåer, poängräkning och felhantering
- bokningsapp med tydlig struktur och god användaranpassning
På A-nivå ska appen vara mer genomtänkt, mer välstrukturerad och bättre testad, men den ska fortfarande kunna göras med sådant ni har arbetat med i läromedlet.
Koppling till Teknik 2 och programmering
Teknik 2
Uppgiften tränar särskilt metodik och arbetsformer i projekt samt tillämpning av programmering för problemlösning.
- identifiera en uppgift
- planera en lösning
- skapa appen
- testa och förbättra
- utvärdera resultatet
Programmering
Uppgiften knyter an till kursinnehåll som strukturerad problemlösning, pseudokod och diagramteknik, kontrollstrukturer, felsökning, undantagshantering, gränssnitt och tydlig kod.