Python og hlutbundin forritun – Að skipuleggja flókin forrit

Lausnaleit Notkun hugbúnaðar og einföld forritun 10. bekkur 80 mínútur

Tilgangur

Að kynna nemendum grunnatriði hlutbundinnar forritunar (OOP) í Python og sýna hvernig klösar og hlutir gera forrit skipulegri og endurnýtanlegri.

Hæfniviðmið og námsmarkmið

Hæfniviðmið

Nemandi getur skilgreint einfaldan klasa í Python og búið til hluti úr honum með eiginleikum og aðferðum.

Námsmarkmið:
  • Nemandi skilur muninn á klasa og hlut
  • Nemandi getur skilgreint klasa með __init__, eiginleikum og aðferðum
  • Nemandi getur búið til marga hluti úr sama klasa og notað þá í forriti

Getustig og forsendur nemenda

  • Lestur: Nemendur geta lesið og skrifað Python kóða á meðalstigi.
  • Tækni: Nemendur þekkja breytur, lykkjur, skilyrði, lista, orðabækur og föll í Python.
  • Aðrar forsendur: Nemendur þurfa óhlutbundna hugsun og getu til að sjá mynstur.

Lýsing á kennslustund

Nemendur læra hugtökin klasi (class), hlutur (object), eiginleiki (attribute) og aðferð (method). Þeir búa til einfaldan klasa og nota hann til að búa til marga hluti. Kennslan notar samlíkingu: Klasi er teikning eða leiðbeining – hlutur er raunverulega byggingin sem er smíðuð eftir teikningunni.

Verkefnalýsing:

1. Kynning – Hvað er OOP? (15 mín): Kennarinn notar samlíkingu: Klasi er eins og teikning af húsi. Hlutur er raunverulega húsið. Sama teikningin getur gefið mörg hús – hvert með sinn lit og stærð (eiginleikar). Kennarinn sýnir dæmi: klasi 'Nemandi' með nafn, aldur og fall heilsa(). 2. Kóðað saman (20 mín): Kennarinn og nemendur skrifa saman: (a) class Gaeludyr: – klasi, (b) def __init__(self, nafn, tegund): – upphafsstilling, (c) self.nafn = nafn – eiginleiki, (d) def heilsa(self): – aðferð, (e) Búa til hluti: minn_hundur = Gaeludyr('Snati', 'hundur'). 3. Verkefnavinna (30 mín): Nemendur forrita leikjapersónukerfi: (a) Búa til klasa 'Persona' með nafn, HP (heilsustig), styrkur, (b) Aðferð 'rada_a(annar)' sem dregur HP frá öðrum, (c) Aðferð 'laekna(magn)' sem bætir HP, (d) Búa til 2-3 persónur og láta þær berjast (with print statements), (e) Bæta við while lykkju – bardagi heldur áfram þar til einn tapar. 4. Samantekt (15 mín): Nemendur sýna bardaga-kerfin sín. Kennarinn dregur saman: Klasi = teikning, Hlutur = bygging. OOP hjálpar okkur að skipuleggja flókin forrit.

Verkfæri og hugbúnaður

Thonny eða VS Code — Forritunarumhverfi (IDE)

Bæði umhverfin styðja Python vel. VS Code er faglegra og nemendur geta vanist því fyrir framhaldsskóla.

Python 3 — Forritunarmál

Python hefur einfalda og skýra setningafræði fyrir hlutbundna forritun.

Kennsluaðferðir

Samlíkinganám og smíði

Kennarinn notar samlíkingu við teikningar og byggingar til að útskýra klasa og hluti og nemendur smíða sín eigin kerfi.

Rannsóknargrundvöllur: Papert (1980) – Konstruktíónismi: Nemendur skilja óhlutbundin hugtök betur þegar þeir byggja þau upp sjálfir.

Kóðað saman og refactoring

Kennarinn sýnir fyrst forrit án klasa og endurbætir það síðan með klösum til að sýna ávinninginn.

Rannsóknargrundvöllur: Fowler (1999) – Refactoring: Endurbætur á kóða sýna nemendum hvers vegna skipulag skiptir máli.

Matsaðferðir

  • Verkefnamat: Virkar leikjapersónukerfið? Notar það klasa, eiginleika og aðferðir rétt?
  • Kóðamat: Er kóðinn vel skipulagður? Eru klasi og aðferðir vel nefnd?
  • Munnlegt mat: Getur nemandinn útskýrt muninn á klasa og hlut og hvers vegna OOP er gagnlegt?

Aðlögun

Aukin áskorun

Nemendur bæta við erfðum (inheritance) – t.d. 'Riddari' og 'Galdramaður' erfa frá 'Persona' en hafa sérstakar aðferðir.

Stuðningur

Nemandinn fær klasa-ramma tilbúinn og þarf aðeins að fylla inn í aðferðirnar. Kennarinn útskýrir hvert skref.

Þverfaglegar tengingar

  • Stærðfræði – breytur, útreikningar og rökfræði
  • Íslenska – hugtakanotkun og skilgreiningar
← Til baka í Notkun hugbúnaðar og einföld forritun 10. bekkur →