Temat 12. Rozkaz Wykonać! Języki programowania



Podobne dokumenty
Alina Kalinowska. Pozwólmy dzieciom działać. mity i fakty o rozwijaniu myślenia matematycznego

Ocenianie kształtujące: Dzielmy się tym, co wiemy! Zeszyt trzeci: Informacja zwrotna

KOMUNIKACJA DOTYCZĄCA POSTĘPÓW UCZNIA. WYKORZYSTANIE TIK W PRZEKAZYWANIU INFORMACJI ZWROTNEJ

Poradnik dla szukających pracy

darmowy e-book Wyznaczanie

POMOC OFIERZE PRZEMOCY I AGRESJI SZKOLNEJ

Jak Prowadzić Zebranie: Procedura Parlamentarna

1.1 Poznaj swój czterodziałaniowy kalkulator

Certyfikowany tester Plan poziomu podstawowego

AutoCAD -- kurs podstawowy

Podręcznik do prowadzenia warsztatów z umiejętności społeczno-zawodowych dla uczniów w szkołach przysposabiających do pracy

Jak działać skutecznie? Por a dnik Lider a lok a lnego

Lunar Program powiększający Wersja 7.0

Maciej Sydor. Wskazówki dla piszących prace dyplomowe

Poradnik Badaj interaktywnie

Zasady pisania prac dyplomowych w Instytucie Technicznym PWSZ w Nowym Sączu

Reprezentacja dokumentów tekstowych w modelu przestrzeni wektorowej

ZASADY EWALUACJI PROGRAMÓW KSZTAŁCENIA ZAWODOWEGO Principles of professional training evaluation

Możliwość dokonywania zgłoszeń wynalazków na rozwiązania zawierające programy komputerowe i środki przetwarzania danych

Jak pomóc dziecku z dysleksją?

Jestem niepełnosprawny, idę do pracy

RAPORT DLA DEPARTAMENTU ZARZĄDZANIA EUROPEJSKIM FUNDUSZEM SPOŁECZNYM

Jak działa Internet i co z tego wynika dla prób jego regulacji?

Mini Poradnik UPC. e-aktywacja: wszystkie pokolenia w Internecie! Zaproś rodziców i dziadków do sieci: naucz Ich korzystania z komputera i Internetu.

Zrób to sam. Jak zostać badaczem społeczności lokalnej? Poradnik dla domów kultury

Dziecko przedszkolne Jakie jest? Jak możemy wspierać jego rozwój?

Szkolenia i rozwój kompetencji pracowników

M AT E R I A Ł Y P O M O C N I C Z E D L A U C Z N I Ó W

Poradnik dla studentów

Transkrypt:

Temat 12 Rozkaz Wykonać! Języki programowania Streszczenie Do programowania komputerów używa się zazwyczaj informatycznego języka, który składa się ze słów-instrukcji zrozumiałych dla maszyn. Tym, co może stanowić źródło naszej frustracji podczas programowania jest fakt, iż komputery zawsze ściśle wykonują instrukcje, nawet gdy prowadzi to do absurdalnych rezultatów. Te zajęcia mają właśnie dać dzieciom wyobrażenie na ten temat. Wiek 7 lat i więcej Materiały Potrzebne będą karty z obrazkami (s. 102) Każdy z uczestników powinien posiadać: ołówek, papier i linijkę. Photocopiable for classroom use only. 101

102 Photocopiable for classroom use only. 2005 Computer Science Unplugged (www.unplugged.canterbury.ac.nz)

Rozkaz Wykonać! Wprowadzenie Należy rozpocząć od dyskusji Do czego prowadziłoby dosłowne traktowanie instrukcji typu «Przejdź przez drzwi»?. Komputery funkcjonują w ten sposób, że postępują ściśle zgodnie z listą instrukcji nawet wtedy, gdy pozbawione są one większego sensu i prowadzą do absurdalnego wyniku. Przykład Dzieci powinny narysować rysunek, postępując według następujących instrukcji: 1. Na środku kartki narysuj kropkę. 2. Narysuj linię prostą, rozpoczynając od lewego górnego narożnika kartki i kończąc w prawym dolnym narożniku. 3. Narysuj linię prostą, rozpoczynając od lewego dolnego narożnika kartki i kończąc w prawym górnym narożniku.. 4. Zapisz swoje imię wewnątrz trójkąta w okolicach środka lewej strony kartki. Efekt powinien wyglądać tak: Photocopiable for classroom use only. 103

Zadania Wybieramy dziecko i dajemy mu jeden z rysunków (s. 102). Dziecko próbuje opisać rysunek reszcie grupy, która ma za zadanie odtworzyć go. Dzieci mogą zadawać pytania, które rozjaśnią wydawane im polecenia. Celem zadania jest sprawdzenie jak szybko i dokładnie dzieci są w stanie odtworzyć rysunek. Powtarzamy to zadanie, ale tym razem dzieci nie mogą zadawać pytań. Lepiej użyć prostszego rysunku, gdyż dzieci szybko mogą zgubić się. Można spróbować utrudnić zadanie: dziecko wydające instrukcje siedzi w taki sposób, że nie ma kontaktu wzrokowego z innymi dziećmi. Po wykonaniu zadania można uświadomić dzieciom, iż podobne doświadczenia ma programista komputerowy, który pisząc program, zapisuje zbiór instrukcji i nie ma pewności, jaki będzie ich efekt dopóki nie zostaną wykonane przez komputer. Dzieci powinny w końcu, pracując indywidualnie lub w grupach, stworzyć prosty rysunek i zapisać instrukcje, które później mogłyby komuś posłużyć do odtworzenia tego rysunku. Inne odmiany zadania 1. Napisz instrukcje wykonania rzutków z papieru (tzw. samolotów ). 2. Napisz instrukcję dotarcia do wybranego miejsca na terenie szkoły. Użyj instrukcji typu Idź naprzód x metrów, Skręć w lewo (90 stopni) itd. Dzieci powinny sprawdzić efekt działania instrukcji i w razie potrzeby poprawić je. 3. Dziecko z zawiązanymi oczami jest kierowane przez inne dzieci do wybranego celu.. 104 Photocopiable for classroom use only. 2005 Computer Science Unplugged (www.unplugged.canterbury.ac.nz)

O co w tym wszystkim chodzi? Wykonanie przez komputer konkretnego zadania polega na wykonywaniu listy instrukcji zwanych programem, które zostały zapisane w pamięci. Programy zapisywane są w specjalnie do tego celu zaprojektowanych językach o ograniczonej liczbie bardzo konkretnych instrukcji. W praktyce do osiągnięcia konkretnego celu stosuję się odpowiedni język programowania (posiadający najbardziej dogodny w tym przypadku zbiór instrukcji). Programiści powinni stale doskonalić umiejętność precyzyjnego zapisywania instrukcji w wybranym języku programowania, tak aby komputer wykonywał dokładnie to, czego się od niego oczekuje. W przeciwieństwie do człowieka, maszyna wykonuje instrukcje w sposób dosłowny (literalnie), nawet jeśli one pobawione są sensu. Jest ważne, by programy zapisywane były w sposób możliwe najbardziej poprawny. Mały błąd może spowodować wiele problemów. Można sobie wyobrazić jak poważne mogą być konsekwencje błędu w oprogramowaniu promu kosmicznego, elektrowni atomowej czy sygnalizacji przy liniach kolejowych! Błędy określa się angielskim słowem bug (czasem używa się polskiego odpowiednika pluskwa ). Na cześć (jeśli tak można w ogóle powiedzieć) ćmy, którą wydobyto ( debugowano ) z przekaźników pewnego kalkulatora elektromechanicznego na początku lat 40-tych XX w. Im dłuższy jest program komputerowy, tym większe jest prawdopodobieństwo pojawienia się większej liczby błędów. Stanowiło to zasadniczy problem np. podczas projektowania amerykańskiego programu strategicznej obrony antybalistycznej ( Star Wars ): Komputer kontrolował system, którego zadaniem było tworzenie możliwie szczelnej obrony przez atakiem nuklearnym. Niektórzy informatycy-naukowcy twierdzili, że system nigdy nie będzie działał z powodu złożoności i zawodności oprogramowania. Każdy program (oprogramowanie) komputerowy musi być poddany procesowi testowania, celem znalezienia możliwie dużej liczby błędów w nim zawartych. W przypadku wspomnianego systemu obrony było to niewykonalne: dopóki ktoś nie wyśle pocisków, nikt nie stwierdzić, czy system działa. Photocopiable for classroom use only. 105