Myślenie komputacyjne jest myśleniem i wnioskowaniem o rozwiązywaniu problemów metodami wywodzącymi się z informatyki. Uczniowie nabywają umiejętności modelowania problemów w sposób, który umożliwia im otrzymanie rozwiązania za pomocą komputera. Dodatkowo poznają, jak odróżniać wyniki obliczeń od procesów, które do nich prowadzą.
Myślenie komputacyjne jest bardzo ważne w dziedzinach i przedmiotach innych niż informatyka. Z bardzo prostego powodu, pozwala określić, jakie problemy można rozwiązywać za pomocą metod informatycznych i komputerów. Definiuje również, jakich problemów nie można w ten sposób rozwiązywać.
Nauczanie myślenia komputacyjnego
Myślenie komputacyjne reprezentuje spectrum informatycznych metod modelowania i rozwiązywania problemów, takich jak na przykład:
- abstrakcja umożliwia modelowanie problemów,
- redukcja i dekompozycja złożonego problemu- rozkładanie problemu na mniejsze części, w celu efektywniejszego rozwiązania,
- aproksymacja, gdy dokładne rozwiązanie jest poza zasięgiem nawet komputerów,
- rekurencja jako metoda indukcyjnego myślenia i zwięzłej, komputerowej implementacji rozwiązań, modelowanie wybranych aspektów złożonych problemów i znajdowanie rozwiązań metodami heurystycznymi.
Jednym z najważniejszych podejść w myśleniu komputacyjnym jest rozumowanie heurystyczne, które w sytuacji niepełnej lub braku wiedzy na dany temat umożliwia uczącym się odkrycie i utworzenie rozwiązania dla problemu. Heurystyczną metodę rozwiązania problemu uczeń może stosować wtedy, gdy nie zna dokładnej metody do rozwiązania, bądź gdy wiadomo, że problem jest bardzo trudny obliczeniowo. Na ogół ta metoda generuje rozwiązania przybliżone, ewentualnie pokazuje kilka rozwiązań.
Cechy myślenia komputacyjnego
Dzięki rozwijaniu tej umiejętności uczestnicy zajęć nabywają wiele dodatkowych cech.
Można tutaj zaliczyć takie zdolności jak:
- formułowanie problemu w postaci, która dopuszcza i umożliwia posłużenie się do jego rozwiązania metodami informatycznymi i komputerem lub innymi urządzeniami służącymi do zautomatyzowanego przetwarzania informacji,
- zdefiniowanie problemu w oparciu o logiczną organizację danych i wyciągniecie z nich wniosków,
- wyabstrahowanie reprezentacji danych, na przykład w postaci modelu lub symulacji,
- rozwiązanie problemu krok po kroku, dzięki czemu stosowane jest podejście algorytmiczne,
- projektowanie, analiza i komputerowa realizacja (implementacja) rozwiązania problemu, prowadząca do otrzymania jak najbardziej efektywnego rozwiązania oraz jak najlepszego wykorzystania możliwości i zasobów komputera.
Należy dodać , że doświadczenia nabyte podczas rozwiązywania jednego problemu można wykorzystać do rozwiązywania innych problemów, pokrewnych jak i z innych dziedzin.
Przestrzeganie etapów posługiwania się komputerem przy rozwiązywaniu problemów ma zapewnić, by otrzymywane rozwiązania problemów, czy realizacje projektów były w dobrym stylu oraz poprawne. Innymi słowy, aby były czytelne i zrozumiałe dla wszystkich zainteresowanych dziedziną, do której należy problem lub projekt. Także zgodne z przyjętymi w trakcie rozwiązywania założeniami i wymaganiami; – efektywne- nienadużywające zasobów komputera oraz czasu działania, pamięci, oprogramowania, zasobów informacyjnych.