Dla nauczyciela
Autor: Maurycy Gast
Przedmiot: Informatyka
Temat: Jak rozwiązywać problemy programistyczne?
Grupa docelowa:
Szkoła ponadpodstawowa, liceum ogólnokształcące, technikum, zakres podstawowy i rozszerzony
Podstawa programowa:
Kształtowane kompetencje kluczowe:
kompetencje cyfrowe;
kompetencje osobiste, społeczne i w zakresie umiejętności uczenia się;
kompetencje matematyczne oraz kompetencje w zakresie nauk przyrodniczych, technologii i inżynierii.
Cele operacyjne (językiem ucznia):
Przedstawisz sposób przeszukiwania dowolnej strony internetowej za pomocą wybranej wyszukiwarki.
Zapoznasz się z przykładowymi narzędziami, które wspierają pracę programisty.
Rozwiążesz problemy informatyczne w kodzie za pomocą debuggera.
Strategie nauczania:
konstruktywizm;
konektywizm.
Metody i techniki nauczania:
dyskusja;
rozmowa nauczająca z wykorzystaniem multimedium i ćwiczeń interaktywnych;
metody aktywizujące.
Formy pracy:
praca indywidualna;
praca w parach;
praca w grupach;
praca całego zespołu klasowego.
Środki dydaktyczne:
komputery z głośnikami, słuchawkami i dostępem do internetu;
zasoby multimedialne zawarte w e‑materiale;
tablica interaktywna/tablica, pisak/kreda;
oprogramowanie dla języka C++, w tym kompilator GCC/G++ 4.5 (lub nowszej wersji) i Code::Blocks 16.01 (lub nowszej wersji), Orwell Dev‑C++ 5.11 (lub nowszej wersji) lub Microsoft Visual Studio;
oprogramowanie dla języka Java SE 8 (lub nowszej wersji), w tym Eclipse 4.4 (lub nowszej wersji);
oprogramowanie dla języka Python 3 (lub nowszej wersji), w tym PyCharm lub IDLE.
Przebieg lekcji
Przed lekcją:
Przygotowanie do zajęć. Nauczyciel loguje się na platformie i udostępnia e‑materiał: „Jak rozwiązywać problemy programistyczne?”. Nauczyciel prosi uczniów o zapoznanie się z treściami w sekcji „Przeczytaj”.
Faza wstępna:
Wyświetlenie przez nauczyciela tematu i celów zajęć, przejście do wspólnego ustalenia kryteriów sukcesu.
Rozpoznanie wiedzy uczniów. Nauczyciel prosi wybranego ucznia lub uczniów o przedstawienie sytuacji problemowej związanej z tematem lekcji.
Faza realizacyjna:
Praca z multimedium. Nauczyciel wyświetla zawartość sekcji „Infografika”. Uczniowie wspólnie zapoznają się z jej treścią. Zapisują ewentualne pytania. Po czym następuje dyskusja o zasadzie 1‑10‑100 oraz o tym jak unikać błędów w kodzie i jak naprawiać wykryte usterki.
Ćwiczenie umiejętności. Nauczyciel przechodzi do sekcji „Sprawdź się”. Zapowiada uczniom, że w kolejnym kroku będą rozwiązywać ćwiczenia nr 1‑8 – od najprostszych do najtrudniejszych – i będą to robić wspólnie. Wybrany uczestnik zajęć czyta po kolei polecenia. Po każdym przeczytanym poleceniu ochotnik udziela odpowiedzi. Reszta uczniów ustosunkowuje się do niej, proponując swoje pomysły. Nauczyciel w razie potrzeby koryguje odpowiedzi, dopowiada istotne informacje, udziela uczniom informacji zwrotnej.
Faza podsumowująca:
Nauczyciel ponownie wyświetla na tablicy temat i cele lekcji zawarte w sekcji „Wprowadzenie”. W kontekście ich realizacji następuje omówienie ewentualnych problemów z rozwiązaniem ćwiczeń z sekcji „Sprawdź się”.
Praca domowa:
Uczniowie wykonują ćwiczenia 9‑11 z sekcji „Sprawdź się”.
Uczniowie wykonują polecenie 2 z sekcji „Infografika”.
Materiały pomocnicze:
Oficjalna dokumentacja techniczna dla języka C++.
Oficjalna dokumentacja techniczna dla kompilatora GCC/G++ 4.5 (lub nowszej wersji).
Oficjalna dokumentacja techniczna dla oprogramowania Code::Blocks 16.01 (lub nowszej wersji), Orwell Dev‑C++ 5.11 (lub nowszej wersji) lub Microsoft Visual Studio.
Oficjalna dokumentacja techniczna dla języka Java SE 8 (lub nowszej wersji).
Oficjalna dokumentacja techniczna dla oprogramowania Eclipse 4.4 (lub nowszej wersji).
Oficjalna dokumentacja techniczna dla języka Python 3 (lub nowszej wersji).
Oficjalna dokumentacja techniczna dla oprogramowania PyCharm lub IDLE.
Wskazówki metodyczne:
Treści w sekcji „Infografika” można wykorzystać na lekcji jako podsumowanie i utrwalenie wiedzy uczniów.