Zagadnienia do egzaminu

literatura       

Zagadnienia

Ćwiczenia

Literatura

1. Wprowadzenie

Koncepcja platformy Java [jtu]. Wirtualna maszyna Javy (JVM) i Java API. Historia [faq] i typowe zastosowania.

  [hor1]
2. Narzędzia

Podstawowe narzędzia, pliki .class i .jar. Związek między pakietami i strukturą katalogów, zmienna CLASSPATH.

  [hor1]
3. Klasy i obiekty

Klasy i obiekty [eck]. Konstruktory. Operator "new". Składowe (pola i metody) prywatne i publiczne. Składowe statyczne. Garbage collector i finalizer [jtu].

2.1   2.2  

 

 

[tij] [hor1]

4. Programowanie obiektowe

Enkapsulacja, abstrakcja, dziedziczenie i polimorfizm [eck]. Klasy abstrakcyjne i klasy konkretne. Interfejsy.

 3.1   4.1   4.1a   4.2

 

 

[tij] [hor1]

5. Strumienie i programowanie sieciowe

System wejścia-wyjścia w Javie [jtu]. Gniazda sieciowe i programowanie klient-serwer [jtu]. Wyjątki i obsługa wyjątków w Javie [jtu].

5.1   5.1a   5.2   5.3   5.4   7.1   7.2 

 

 

[hor2] [netp]
6. Programowanie współbieżne

Procesy i wątki [jtu]. Klasa "Thread" i interfejs "Runnable" oraz ich użycie [jtu]. Synchronizacja wątków. Szkielet serwera wielowątkowego [eck].

 8.1   8.2   8.3

 

 

[hor2]
7. Struktury danych

System klas kolekcji Javy (Java Collection Framework). Przykładowe klasy konkretne oraz ich użycie i zastosowanie [eck].

9.1

[hor2]
8. Bezpieczne przesyłanie danych

Ogólna orientacja: Szyfrowanie kluczem symetrycznym i asymetrycznym. Protokół SSL (Secure Socket Layer).

12.1   12.2   12.3

 

[hor2]
9. Programowanie w środowisku przeglądarki internetowej i serwera WWW 

Aplety [eck] i ograniczenia apletów. Serwlety i skrypty JSP oraz porównanie z CGI [hall]. Szkielet serwletu/skryptu JSP obsługującego formularz html.

10.1   10.2   10.3

 

 

 

[hall] [hor2]
10. Remote Method Invocation (RMI)

Koncepcja RMI [jtu]. Zdalne obiekty. Różnice w programowaniu sieciowym za pomocą socketów i z wykorzystaniem RMI.

  [hor2] [netp]
11. Programowanie bazodanowe

Architektura dwu- i trójwarstwowa. Podstawowe klasy JDBC (Java Database Connectivity) i ich użycie. Szkielet klienta bazodanowego.

11.1

[apb] [hor2]
12. Graficzny interfejs użytkownika (Swing)

Programowanie graficznego interfejsu użytkownika [eck]. Podstawowe komponenty Swing i ich użycie [jtu]. Obsługa zdarzeń w Javie [jtu]. Grafika w Apletach i JApletach [eck]. Menadżery rozkładu (layout) [jtu].

6.1 , 6.1a , 6.2 , 6.3

 

 

 

[hor1]