1. Podstawy programowania (PP)
Przedmiot stanowi wprowadzenie do programowania. Omówione zostaną kompilatory i interpretatory poleceń, popularne środowiska programistyczne (jak np. DEV-C++, JCreator), metody debugowania i zasad pisania poprawnych programów. W trakcie zajęć uczniowie naucza się pisać proste programy w językach C, C++ i JAVA.
2. Programowanie komputerowe (PK)
Przedmiot ten stanowi kontynuację przedmiotu Podstawy programowania. W trakcie zajęć omówione zostaną techniki i mechanizmy programowania obiektowego jak np. dziedziczenie czy hermetyzacja danych. Uczeń będzie zobligowany do napisania kilku (minimum 3) projektów, w których użyje złożonych struktur danych, takich jak drzewa binarne, listy dynamiczne stosy, i kolejki, oraz zaawansowanych algorytmów.
3. Podstawy systemów komputerowych (PS)
W trakcie tych zajęć uczeń zdobędzie wiedzę na temat budowy komputera i systemów komputerowych. Wprowadzone zostaną podstawowe pojęcia związane z systemami komputerowymi jakie jak: rejestr (podstawowe rejestry używane w komputerze), ALU, pamięć ROM, RAM, cykl maszynowy. Uczeń zapozna się ze sposobem reprezentacji liczb, w tym reprezentacji liczb całkowitoliczbowych dodatnich i ujemnych,zmiennoprzecinkowych, wraz z licznymi przykładami i zadaniami. Omówione zostaną podstawowe układy i bramki logiczne, funkcje boolowskie oraz metody ich optymalizacji.
4. Użytkowanie komputerów (UK)
Uczeń zapozna się z użytkowaniem systemów operacyjnych takich jak MS Windows oraz Linux. Przedstawiona zostanie obsługa pakietów MS Office i OpenOffice w zakresie tworzenia, formatowania i metod wykorzystania dokumentów, arkuszy kalkulacyjnych oraz stron internetowych. Ponadto zaprezentowane zostaną inne programy użytkowe, które mają zastosowanie w życiu codziennym.
5. Algorytmy i struktury danych (AD)
Omówione zostaną podstawowe struktury danych, takie jak listy dynamiczne jedno i dwukierunkowe, stosy oraz drzewa binarne. Wprowadzone zostanie pojęcie algorytmu i szerzej omówione zostanie pojęcie złożoności obliczeniowej. Uczeń zapozna się z podstawowymi algorytmami przeszukującymi (jak przeszukiwanie liniowe, binarne itd.) sortującymi (jak sortowanie bąbelkowe, sortowanie przez wstawienie czy szybkie sortowanie) oraz rekursją.
6. Projektowanie systemów komputerowych (SK)
W trakcie tego przedmiotu planowana jest realizacja jednego, większego projektu rozwiązującego jakiś rzeczywisty problem. Uczeń będzie musiał przejść wszystkie etapy tworzenia projektu (tak jak przy tworzeniu komercyjnego oprogramowania), w tym dokonać analizy sytuacji i zebrać dane, stworzyć rozwiązanie prototypowe, właściwy projekt wraz z dokumentacją, zarówno programu jak i użytkownika końcowego.
7. Relacyjne Bazy Danych (RB)
Przedmiot obejmuje naukę narzędzi i zasad tworzenia bazy danych. W pierwszej części zajmiemy się projektowaniem diagramów związków encji, czyli tworzeniem schematów, a w dalszej części stworzonych aplikacji klienckiej w narzędziu MSAccess. Uczymy tworzenia tabel, kwerend (zapytań do bazy danych), formularzy, raportów oraz tworzenia najprostszych interakcji z wykorzystaniem Visual Basica.
8. Tworzenie aplikacji multimedialnych
Celem zajęć jest zapoznanie z technikami, które pozwolą na atrakcyjne przedstawienie treści w formach multimedialnych (serwisy internetowe, grafika i animacja komputerowa). Szczególny nacisk zostanie położony na przygotowanie poprawnie funkcjonującego serwisu, który będzie wykorzystywany przez uczniów. W ramach lekcji przedstawione zostaną następujące technologie HTML, PHP, Adobe Photoshop, Macromedia Flash, Adobe After Effects oraz podstawy korzystania z baz danych na potrzeby internetu.