Pomiń do głównej zawartości

Opis kursu

OPIS KURSU

Kurs zawiera pełne wprowadzenie do programowania komputerów, w tym podstawy algorytmiki oraz wiedzę niezbędną do zrozumienia jak komputer wykonuje program i w jaki sposób oraz przy użyciu jakich narzędzi przygotowuje się program. W dalszej części uczestnik poznaje elementy, z jakich składa się każdy język oraz uczy się specyficznych własności języków programowania. Po opanowaniu czynności, w efekcie których można zainstalować na własnym komputerze środowisko Python 3 rozpoczyna się nauka programowania od absolutnych podstaw aż do zagadnień średnio zaawansowanych. Zagadnienie teoretyczne ilustrowane są wyczerpująco skomentowanymi przykładami, wzbogaconymi testami sprawdzającymi.


WYMAGANIA WSTĘPNE

Podstawy obsługi komputera.
Znajomość podstaw języka angielskiego jest pomocna i pozwala szybciej przyswoić niektóre z konwencji używanych przez język Python, jednak nie jest konieczna - także nie znając angielskiego będziesz w stanie skutecznie programować.


WYMAGANIA SPRZĘTOWE

Komputer PC z systemem Windows (co najmniej w wersji 8) i z dostępem do Internetu w celu zainstalowania środowiska Python.


EFEKTY KSZTAŁCENIA

Uczestnik kursu nauczy się:

  • operować terminologią związaną z pisaniem i uruchamianiem programów komputerowych,
  • tworzyć i zapisywać proste algorytmy,
  • instalować środowisko do programowania w języku Python,
  • wykonywać operacje wejścia/wyjścia,
  • operować różnymi typami danych i przekształcać dane zgodnie z potrzebami,
  • budować listy danych i operować na nich,
  • wykorzystywać wbudowane funkcje i metody języka Python,
  • budować i wykorzystywać własne funkcje,
  • rozpoznawać i obsługiwać wyjątki.

ZAGADNIENIA

Wstęp

  • Wstęp do kursu

Moduł 1: Algorytmika

  • Lekcja 1: Algorytm.
  • Lekcja 2: Konstruowanie prostych algorytmów.
  • Lekcja 3: Schematy blokowe.
  • Lekcja 4: Zapis algorytmów.

Moduł 2: Języki i programowanie

  • Lekcja 1: Czym jest język?
  • Lekcja 2: Jaki język znają komputery?
  • Lekcja 3: W jakich językach pisze się programy?
  • Lekcja 4: Z czego składa się każdy język?

Moduł 3: Python

  • Lekcja 1: Skąd wziął się Python?
  • Lekcja 2: Skąd wziąć Pythona?
  • Lekcja 3: Pierwszy program w Pythonie.

Moduł 4: Dane i operatory

  • Lekcja 1: Arytmetyka w Pythonie.
  • Lekcja 2: Jakie liczby zna Python?
  • Lekcja 3: Dzielenie i inne pułapki.
  • Lekcja 4: Prawda i fałsz w Pythonie.
  • Lekcja 5: Zmienne.
  • Lekcja 6: Wprowadzanie i wyprowadzanie danych.
  • Lekcja 7: Drugi program w Pythonie.
  • Lekcja 8: Trzeci program w Pythonie.

Moduł 5: Warunki i pętle

  • Lekcja 1: Jak Python podejmuje decyzje?
  • Lekcja 2: if-elif-else, czyli jak opanować trudne decyzje?
  • Lekcja 3: Python w pętli, czyli „while”.
  • Lekcja 4: Pętla „while” w akcji.
  • Lekcja 5: Jak pętle upraszczają życie programisty?
  • Lekcja 6: Jak można zmienić bieg pętli?
  • Lekcja 7: „for”, czyli jeszcze jedna pętla w Pythonie.

Moduł 6: Napisy

  • Lekcja 1: Napisy w Pythonie.
  • Lekcja 2: Operacje na napisach.
  • Lekcja 3: Indeksowanie i wycinki.
  • Lekcja 4: Napisy w napisach oraz o metodach słów kilka.
  • Lekcja 5: Metody kontra napisy.
  • Lekcja 6: Jak Python porównuje napisy?
  • Lekcja 7: Python i szyfr Cezara.

Moduł 7: Listy

  • Lekcja 1: Listy w Pythonie.
  • Lekcja 2: Odwoływanie się do elementów listy.
  • Lekcja 3: Iterowanie po listach.
  • Lekcja 4: Operator in/not in.
  • Lekcja 5: Wycinanie fragmentów listy.
  • Lekcja 6: Usuwanie i dodawanie elementów do listy.
  • Lekcja 7: Operacje na listach.
  • Lekcja 8: Listy dwuwymiarowe.

Moduł 8: Funkcje

  • Lekcja 1: Funkcje w Pythonie.
  • Lekcja 2: Wywołanie funkcji i mechanizm przesłaniania.
  • Lekcja 3: Metody przesyłania parametrów do funkcji.
  • Lekcja 4: Instrukcja return.
  • Lekcja 5: Zasięg nazw zmiennych.
  • Lekcja 6: Zmienne globalne.
  • Lekcja 7: Rekurencja.

Moduł 9: Wyjątki

  • Lekcja 1: Wyjątki w Pythonie.
  • Lekcja 2: Techniki reagowania na podniesienie wyjątku.
  • Lekcja 3: Hierarchia wyjątków w Pythonie.
  • Lekcja 4: Podnoszenie wyjątków.
  • Lekcja 5: Asercje.
  • Lekcja 6: Wbudowane wyjątki w Pythonie.

WARUNKI ZALICZENIA

Warunkiem zaliczenia kursu jest przystąpienie do testów sprawdzających z poszczególnych modułów oraz egzaminu końcowego.

  • Testy sprawdzające posiadają wagę 40%.
  • W przypadku testów sprawdzających wiedzę z poszczególnych modułów możliwa jest nieograniczona liczba podejść.
  • Egzamin końcowy posiada wagę 60%.
  • W przypadku egzaminu końcowego możliwe są 3 podejścia.
  • Zaliczenie kursu wymaga zdobycia 70% wszystkich punktów.

KADRA KURSU

Sławomir Wernikowski

Szczecinianin, absolwent Wydziału Informatyki i Zarządzania Politechniki Wrocławskiej. Nauczyciel akademicki w Katedrze Inżynierii Oprogramowania na Wydziale Informatyki ZUT w Szczecinie. Obszary zainteresowań: inżynieria programowania, programowanie systemowe, niskopoziomowe, wbudowane i równoległe oraz system Linux.

Aneta Bera

Szczecinianka, absolwentka Wydziału Informatyki Zachodniopomorskiego Uniwersytetu Technologicznego w Szczecinie z 2014 roku. Obecnie nauczyciel akademicki na Wydziale Informatyki w Katedrze Sztucznej Inteligencji i Matematyki Stosowanej ZUT w Szczecinie. Główne obszary zainteresowań: uczenie maszynowe, rozpoznawanie wzorców, sztuczna inteligencja, metody numeryczne, optymalizacja, algorytmy i programowanie.

Dariusz Sychel

Szczecinianin, absolwent Wydziału Informatyki Zachodniopomorskiego Uniwersytetu Technologicznego w Szczecinie. Nauczyciel akademicki na Wydziale Informatyki w Katedrze Sztucznej Inteligencji i Matematyki Stosowanej ZUT w Szczecinie. Główne obszary zainteresowań: sztuczna inteligencja, uczenie maszynowe, rozpoznawanie wzorców, modelowanie i symulacja systemów, optymalizacja, programowanie.

Jacek Klimaszewski

Absolwent Wydziału Informatyki Zachodniopomorskiego Uniwersytetu Technologicznego w Szczecinie z 2014 r. Asystent i doktorant w Katedrze Sztucznej Inteligencji i Matematyki Stosowanej tegoż Wydziału. Zainteresowania: obliczenia numeryczne, algorytmika, sztuczna inteligencja, szachy.

Kontakt: wimooc@zut.edu.pl