Dla nauczyciela
Autor: Maurycy Gast
Przedmiot: Informatyka
Temat: Algorytm Huffmana w języku Java
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):
Prześledzisz implementację algorytmu Huffmana w języku Java.
Zaimplementujesz program w języku Java kodujący ciąg znaków za pomocą algorytmu Huffmana.
Wykonasz ćwiczenia, wykorzystując w praktyce wiedzę dotyczącą omawianego zagadnienia.
Wyjaśnisz, jak konstruować i przeszukiwać drzewa binarne.
Strategie nauczania:
konstruktywizm;
konektywizm.
Metody i techniki nauczania:
dyskusja;
rozmowa nauczająca z wykorzystaniem multimedium i ćwiczeń interaktywnych;
ćwiczenia praktyczne.
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 Java SE 8 (lub nowszej wersji), w tym Eclipse 4.4 (lub nowszej wersji).
Przebieg lekcji
Przed lekcją:
Przygotowanie do zajęć. Nauczyciel loguje się na platformie i udostępnia e‑materiał: „Algorytm Huffmana w języku Java”. Nauczyciel prosi uczniów o zapoznanie się z treściami w sekcji „Przeczytaj”.
Faza wstępna:
Nauczyciel wyświetla temat i cele zajęć zawarte w sekcji „Wprowadzenie”. Prosi uczniów, by na podstawie wiadomości zdobytych przed lekcją zaproponowali kryteria sukcesu
Prowadzący prosi uczniów, aby zgłaszali swoje propozycje pytań do tematu. Jedna osoba może zapisywać je na tablicy. Gdy uczniowie wyczerpią swoje pomysły, a pozostały jakieś ważne kwestie do poruszenia, nauczyciel je dopowiada.
Faza realizacyjna:
Praca z tekstem. Nauczyciel ocenia, na podstawie informacji na platformie, stan przygotowania uczniów do zajęć. Jeżeli jest ono niewystarczające, prosi wybraną osobę o przedstawienie najważniejszych informacji z sekcji „Przeczytaj”. Na forum klasy uczniowie analizują problemy 1‑3. Następnie pracując indywidualnie, uczniowie powtarzają zaprezentowaną implementację algorytmu na swoich komputerach.
Praca z multimedium. Nauczyciel wyświetla zawartość sekcji „Symulacja interaktywna”. Uczniowie indywidualnie wykonują polecenie 1. Omawiają je na forum klasy. W kolejnym kroku w parach wykonują polecenie 2 i 3, a po zakończeniu pracy porównują swoje rozwiązania z inną grupą. Nauczyciel weryfikuje poprawność rozwiązań, w razie potrzeby wyjaśnia niezrozumiałe kwestie.
Ćwiczenie umiejętności. Uczniowie, pracując w parach, wykonują ćwiczenie nr 1 z sekcji „Sprawdź się”. Nauczyciel sprawdza poprawność pisanych kodów, porównuje je i omawia wraz z uczniami. Wskazuje najbardziej efektywne rozwiązanie.
Faza podsumowująca:
Nauczyciel wyświetla na tablicy temat lekcji i cele zawarte w sekcji „Wprowadzenie”. W kontekście ich realizacji podsumowuje przebieg zajęć, a także wskazuje mocne i słabe strony pracy uczniów.
Wybrany uczeń podsumowuje zajęcia z programowania w Javie, zwracając uwagę na nabyte umiejętności.
Praca domowa:
Uczniowie wykonują ćwiczenie 2 z sekcji „Sprawdź się”.
Materiały pomocnicze:
Oficjalna dokumentacja techniczna dla języka Java SE 8 (lub nowszej wersji).
Oficjalna dokumentacja techniczna dla oprogramowania Eclipse 4.4 (lub nowszej wersji).
Wskazówki metodyczne:
Treści w sekcji „Symulacja interaktywna” można wykorzystać na lekcji jako podsumowanie i utrwalenie wiedzy uczniów.