Programowanie i bazy danych | FTiMS - Politechnika Gdańska

Szukaj

Treść strony

Programowanie i bazy danych

Absolwent dwusemestralnych studiów podyplomowych Programowanie i bazy danych uzyskuje szeroką wiedzę z zakresu informatyki z ukierunkowaniem na programowanie i zarządzanie systemami baz danych. Wysoki poziom nauczania zapewnia politechniczna kadra naukowa, aktywnie współpracująca z trójmiejską branżą IT. Każdy z uczestników otrzymuje na czas trwania nauki dostęp do szerokiego zestawu oprogramowania systemowego, projektowego, programistycznego firmy Microsoft (w ramach programu Azure For Education) oraz dostęp do wydziałowego serwera baz danych (MySQL / Oracle).

Studia cieszą się niesłabnącym od kilkunastu lat zainteresowaniem. Ich program jest stale uaktualniany, wraz z postępem wiedzy i rozwojem technologii w informatyce. Wszystkie zajęcia są zasadniczo prowadzone od podstaw, jednak gdy osiągnięta zostanie odpowiednia liczba studentów, powstają grupy laboratoryjne o różnym stopniu zaawansowania. Dzięki takiemu podejściu programować i zarządzać bazami danych nauczymy (niemal) każdego - z powodzeniem studiowali u nas nawet absolwenci studiów humanistycznych, a jednocześnie osoby już programujące nauczą się tworzyć jeszcze lepsze aplikacje, wykorzystujące rozbudowane bazy danych.

Data rozpoczęcia kolejnej edycji: 07 październik 2023 r.
Czas trwania studiów: 2 semestry

 

Program ramowy

 

Semestr I

Semestr II

1. Algorytmy, struktury danych i techniki programowania

15 godz. wykł.

15 godz. lab.

 

 

2. Programowanie w C++

10 godz. wykł.

20 godz. lab.

 

 

3. Programowanie w Javie

10 godz. wykł.

20 godz. lab.

 

 

4. Podstawy baz danych

 

 

10 godz. wykł.

20 godz. lab.

5. Wybrany system baz danych - MySQL

 

 

15 godz. wykł.

30 godz. lab.

6. Seminarium dyplomowe

 

 

15 godz. sem.

 

 

Semestr I

1. Algorytmy, struktury danych i techniki programowania, 15 godz. wykładu + 15 godz. laboratorium

Poziomy abstrakcji. Koncepcje programów. Techniki rekurencyjne. Metoda "dziel i zwyciężaj". Analiza sprawności algorytmów. Algorytmy sortowania. Struktury danych: listy, tablice, stosy, sterty, kolejki, drzewa. Algorytmy przeszukiwania. Elementy algorytmiki grafów. Algorytmy numeryczne: iteracje, miejsca zerowe, interpolacje, różniczkowanie, całkowanie, układy równań liniowych. Haszowanie. Kodowanie i kompresja danych. Wstęp do sztucznej inteligencji. Różne techniki projektowania algorytmów i programowania.
Literatura:
T.H. Cormen, Ch.E. Leiserson, R.L. Rivest, C. Stein, Wprowadzenie do algorytmów. PWN, 2013
P. Wróblewski, Algorytmy, struktury danych i techniki programowania. Wydanie 5. Helion, 2015
J. Bentley, Perełki oprogramowania. Wydanie 2. Helion, 2012

 

2. Programowanie w C++, 10 godz. wykładu + 20 godz. laboratorium

Składnia języka C++ i porównanie z innymi językami programowania. Operacje arytmetyczne, operacje logiczne. Typy zmienne. Zmienne dynamiczne: tablice rekordy. Instalacje switch. Iteracje. Podprogramy: procedury, funkcje. Struktury rekurencyjne. Programowanie obiektowe: terminologia, przykłady (klasy), składowe statyczne klas, metody stałe klas, dziedziczenie własności.
Literatura:
J. Grębosz, Symfonia C++. Edition 2000, 2010
B. Stroustrup, Język C++. Kompendium wiedzy. Helion, 2014
B.W. Keriningham, D.M. Ritchie, Język ANSI C. Wydanie II. Helion, 2010

 

3. Programowanie w Javie, 10 godz. wykładu + 20 godz. laboratorium

Cechy charakterystyczne języka Java. Repetytorium projektowania obiektowego. Liczby i operatory związane z wartościami liczbowymi. Polecenia iteracyjne w Javie. Operacje wejścia-wyjścia. Definiowanie obiektów i klas. Dziedziczenie i polimorfizm. Interfejsy, a klasy abstrakcyjne. Kolekcje i typy uogólnione. Wyjątki - typy i ich obsługa.
Literatura:
K. Barteczko, Java. Programowanie praktyczne od podstaw. PWN, 2014

 

Semestr II

1. Podstawy baz danych, 10 godz. wykładu + 20 godz. laboratorium

Ewolucja systemów baz danych. Architektura. Relacyjny model. Zależności funkcyjne. Reguły dotyczące zależności funkcyjnych. Projektowanie relacyjnych schematów baz danych. Zależności wielowartościowe. Proste zapytania w języku SQL, zapytania dotyczące więcej niż jednej relacji. Pod zapytania. Powtórzenia. Grupowanie. Modyfikacje. Schematy relacji. Definiowanie perspektyw. Wartości NULL i złączenia zewnętrzne. Rekurencje w SQL. Klucze. Integralność systemu i klucze obce. Więzy i ich modyfikacje. Wyzwalacze.
Literatura:
J.P. Ullman, J. Widom, Podstawowy wykład z systemów baz danych. Wydanie III. Helion, 2011

 

2. Wybrany system baz danych - MySQL, 15 godz. wykładu + 30 godz. laboratorium

Podstawowe definicje i terminologia. Rodzaje systemów baz danych. Podstawowe bazy danych. Instalacja bazy MySQL. Administracja bazą danych. Projektowanie baz danych. Podstawowa praca z bazami. Operatory. Relacje między tablicami. Transakcje i blokowanie. Backup baz. Dostęp do baz z różnych języków programowania. Specyficzne znaki narodowe.
Literatura:
P. DuBois, MySQL. Vademecum profesjonalisty. Wydanie V. Helion, 2014
M. Stucky, MySQL. Budowanie interfejsów użytkownika. Vademecum profesjonalisty. Helion, 2003
R.J. Yarger, G. Reese, T. King, MySQL i mSQL. O'REILLY, 2001
M. Zandstra, PHP. Obiekty, wzorce, narzędzia. Wydanie IV. Helion, 2014
A. Descartes, T. Bunce, Perl DBI - programowanie. O'REILLY, 2000

 

3. Seminarium dyplomowe, 15 godz

W ramach przedmiotu studenci przygotowują i prezentują kompletną aplikację komputerową (wraz z dokumentacją) na wybrany temat, wykorzystującą poznane technologie.