Zagadnienia egzaminacyjne TP_I_st

Transkrypt

Zagadnienia egzaminacyjne TP_I_st
Informatyka I stopień – egzamin dyplomowy.
Zagadnienia egzaminacyjne
specjalizacja: Technologie programowania
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
Elementy funkcyjnego stylu programowania
Optymalizacja rekurencji krańcowej
S-wyrażenia w języku Lisp (Clojure)
Znaczenie niezmienności (immutability) w procesie tworzenia oprogramowania
Budowanie abstrakcji w funkcyjnym stylu programowania
Pojęcie wzorca projektowego, pochodzenie, zastosowania w inżynierii
oprogramowania
Najważniejsze wzorce projektowe
Znane wzorce projektowe na platformie JEE
Elementy składowe platformy JEE
Standard JDBC, najważniejsze elementy
Wzorzec dependency injection - omówienie
Serwlety, cykl życia, konfiguracja i inicjalizacja
Zastosowania konwencji, interfejsów i typów abstrakcyjnych na platformie JEE
Metody budowania komponentów platformy JEE podatnych na testowanie
Wykorzystanie technologii JUnit w procesie testowania aplikacji biznesowych, testy
regresyjne i jednostkowe
Metody zarządzania zasobami trwałymi w aplikacjach JEE
Strony JSP, omówienie elementów technologii
Serwery aplikacjne, zastosowania, budowa, przykłady
Serwery aplikacji w technologiach innych niż Java (np. Python)
Aplikacje WEB (.war), konfiguracja, dystrybuowanie, osadzanie (deployment)
Wątek, proces, zadanie - omówienie pojęć
Metody tworzenia wątków w technologii Java
Sposoby synchronizowania wielowątkowego dostępu do pamięci współdzielonej w
technologii Java
Pamięć transakcyjna (ang. Software Transactional Memory) w języku Clojure
Wzorce projektowe związane z wielowątkowością w technologiach Java/Clojure:
Delay, future, promise. Możliwe realizacje.
Mappery obiektowo-relacyjne, znaczenie, zastosowania, przykłady
Użycie mappera obiektowo-relacyjnego Hibernate, podejście w fazie projektowania
Elementy funkcjonalne frameworku Spring
Technologia memcached, znaczenie, zastosowania, elementy konfiguracji
Technologia Lucene, omówienie zagadnień związanych z użyciem.