← Vissza a 11. osztály témaköreihez
Digitális kultúra · 11. osztály

Algoritmizálás és programozási nyelv használata

A kötelező programozás utolsó, legnagyobb szakasza: fájlkezelés, összetett típusalgoritmusok (másolás, kiválogatás, szétválogatás, rendezés, halmazműveletek), az objektumorientált szemlélet alapjai, modulok, és egy saját grafikus felületű alkalmazás. A témakörhöz javasolt óraterv, ötletláda és tanári tippek tartoznak.

20 tanóra (20 × 45 perc) 11. osztály NAT 2020
T1 – nyitókép helye (4:3)
A témakör útvonala

Fájloktól az objektumokig és a grafikus felületig

A témakör a fájlkezeléstől és az összetett típusalgoritmusoktól indul, az objektumorientált gondolkodáson át eljut egy saját, grafikus felületű alkalmazásig.

01 · 1–7. óra

Fájlok és típusalgoritmusok

Szövegfájl, karakterkódolás, másolás, kiválogatás, szétválogatás, rendezés, unió, metszet.

02 · 8–14. óra

Objektumok

Adatszerkezet tervezése, objektum, adattag, tagfüggvény, modulok.

03 · 15–20. óra

Grafikus alkalmazás

GUI, vezérlők, eseménykezelés, projekt és bemutatás.

T2 – kép a fejlesztési célokhoz (16:9)
Fejlesztési célok

Mit tanulnak ebben a témakörben?

A kerettanterv szerint a 11. évfolyamon a diákok már összetett problémákat oldanak meg: fájlból olvasnak, összetett típusalgoritmusokat használnak, és megismerik az objektumorientált szemléletet. Ez a kötelező tananyag lezárása és az érettségi alapja. A C# ehhez különösen jól illik, hiszen objektumorientált, és grafikus felületekre is alkalmas.

  • Szövegfájlból adatot olvas be, és fájlba ír, figyelve a karakterkódolásra.

  • Összetett típusalgoritmusokat (másolás, kiválogatás, szétválogatás, rendezés, unió, metszet) alkalmaz.

  • Saját adatszerkezetet tervez, és objektumokkal, adattagokkal, tagfüggvényekkel valósítja meg.

  • Modulokra bontja a programot, és helyzeti és kulcsszavas paramétereket használ.

  • Egyszerű grafikus felhasználói felületet készít vezérlőkkel és eseménykezeléssel.

  • Önálló projektet tervez, dokumentál és tesztel.

Egy lehetséges feldolgozás

Ha húsz tanórád van a témakörre

Ez a javasolt sorrend a NAT 2020 kerettantervének és a hivatalos mintatantervnek a fejlesztési feladataira épül, saját óravázlatokhoz. Az órák önállóan is használhatók, és az ötletláda ötleteivel helyettesíthetők.

  1. Ismétlés: vezérlési szerkezetekSzekvencia, elágazás, ciklus, függvények.
  2. FájlkezelésSzövegfájl olvasása és írása, karakterkódolás (UTF-8).
  3. Másolás, kiválogatás, szétválogatásÖsszetett típusalgoritmusok.
  4. Összetett típusalgoritmusok a gyakorlatbanFájlból beolvasott adatokon.
  5. RendezésA rendezés algoritmusa és a beépített rendezés.
  6. Unió és metszetHalmazműveletek sorozatokon.
  7. GyakorlásÉrettségi jellegű fájlkezelési feladat.
  8. Az eljárásközponttól az objektumokigMiért kell új szemlélet?
  9. Saját adatszerkezet tervezéseObjektum, adattag, konstruktor.
  10. Objektumok listábanObjektumok tárolása és bejárása.
  11. TagfüggvényekViselkedés az objektumokban.
  12. Csoportnapló-projektObjektumok fájlból, számítások, rendezés.
  13. Paraméterek és modulokHelyzeti és kulcsszavas paraméterek, modulok.
  14. GyakorlásÖsszetett feladat objektumokkal.
  15. Grafikus felület 1.Ablak, címke, gomb, szövegmező.
  16. Grafikus felület 2.Jelölőnégyzet, választógomb, eseménykezelés.
  17. Grafikus felület 3.Adatok megjelenítése a felületen.
  18. Projekt: tervezésSpecifikáció, felülettervezés, feladatfelosztás.
  19. Projekt: megvalósításKódolás, tesztelés, dokumentálás.
  20. ProjektbemutatásBemutatás, kódáttekintés, értékelés.
Válogass tovább

További óravázlatok a témakörhöz

A témakörhöz kapcsolódó, már elkészült óravázlatok. Szabadon beilleszthetők a javasolt sorrendbe, vagy kiválthatnak egy órát.

Nemzetközi ötletek

Így tanítják máshol

Szakmailag elismert külföldi források és módszerek, amelyek jól beépíthetők a saját óravázlatokba. Mindegyiknél jelöltük, mire használható a magyar órán.

Exercism

Nemzetközi közösség

Ingyenes gyakorlófeladatok több mint hatvan nyelven, köztük C#-ban és Pythonban, mentori visszajelzéssel. Kiváló önálló gyakorláshoz.

Megnézem (új lapon nyílik)

Microsoft Learn – C#

Microsoft (USA)

A C# nyelv és a grafikus alkalmazásfejlesztés hivatalos, ingyenes tananyaga. Az objektumorientált alapokhoz és a grafikus felülethez közvetlenül használható.

Megnézem (új lapon nyílik)

CS50x

Harvard University (USA)

Ingyenes bevezető kurzus, amelynek feladatai és előadásai az emelt szintre és versenyre készülőknek jó kiegészítők.

Megnézem (új lapon nyílik)
Ötletláda

További ötletek a témakörhöz

Rövid, kipróbálható tevékenységek, amelyekkel egy órát kiválthatsz vagy kiegészíthetsz. Mindegyiknél jelöltük, melyik órához illik a legjobban.

  • Objektumkártyák

    Kártyákon „diák” objektumok (név, osztály, átlag). A diákok kézzel végzik el rajtuk a kiválogatást, a rendezést és a szétválogatást, mielőtt kódolnák.

    8–9. óra · gép nélkül
  • Valódi nyílt adatok

    Nyílt adatforrásból letöltött fájl (például menetrend vagy időjárás-statisztika) beolvasása és elemzése saját programmal.

    2–4. óra · fájlkezelés
  • Rendezési tánc

    Egy ismert, rendezési algoritmusokat tánccal bemutató videósorozat után a diákok maguk is eljátsszák a buborékrendezést sorba állva.

    5. óra · rendezés
  • Halmazos barátkereső

    Két diák kedvenc zenéi vagy hobbijai: mi a közös (metszet), és mi az összes (unió)? Program két fájlból.

    6. óra · halmazműveletek
  • Mini alkalmazásbolt

    Minden csapat egy kis grafikus alkalmazást készít (átváltó, kvíz, jegyzet), és „alkalmazásboltot” rendeznek, ahol kipróbálják egymásét.

    15–20. óra · projekt
  • Érettségi-próba

    Egy korábbi érettségi programozási feladat megoldása időre, csapatban, majd a megoldások közös elemzése.

    7. és 14. óra · felkészítés
Más tantárgyakhoz

Tantárgyi kapcsolódások

Hamarosan

Tanári tippek

Így lesz mindenkié az óra

Nyelvválasztás

A C# objektumorientált, és grafikus felülethez is kiváló, így jól illik ehhez az évfolyamhoz. A tankönyv Pythont használ, az érettségin több nyelv közül lehet választani, ezért érdemes a választást a diákok céljaihoz igazítani.

Differenciálás

A középszintű érettségire készülők az alapfeladatokat, az emelt szintre vagy versenyre készülők összetettebb algoritmusokat és saját projekteket kapnak.

Értékelés

A projektnél a specifikáció, a tesztelés és a dokumentáció is értékelhető. A kódáttekintés és a bemutatás a szakmai életre is felkészít.

Kerettantervi kapcsolódás

A témakör a NAT 2020 Digitális kultúra kerettantervének 11. évfolyamos tanulási eredményeire és fejlesztési feladataira épül, nem egy adott tankönyv leckéire. A kerettanterv fő fogalmai:

  • szövegfájl, fájlkezelés, karakterkódolás
  • összetett típusalgoritmusok: másolás, kiválogatás, szétválogatás, rendezés, unió, metszet
  • objektum, adattag, tagfüggvény, modul, paraméterek
  • grafikus felhasználói felület, vezérlők, eseménykezelés

Kerettantervi témakör: Algoritmizálás, formális programozási nyelv használata (20 óra a 11. évfolyamon). A kötelező programozási tananyag lezárása, amely a digitális kultúra érettségi programozási feladatainak alapja.

Hivatalos források