Techniki i języki programowania 2

RSS

Cel przedmiotu

Celem przedmiotu jest nabycie umiejętności tworzenia aplikacji korzystając z nowoczesnych języków i technik obiektowych, ze szczególnym uwzględnieniem języka programowania Java oraz praktycznych zastosowań wzorców projektowych (MVC, Singleton, Composite itp.)

Program wykładu

Platforma i maszyna wirtualna Javy. Składnia języka Java. Obiektowość. Kolekcje w Javie. Typy uogólnione (Generics). Refleksja w językach obiektowych i rodzaje referencji. Operacje wejścia/wyjścia. Przetwarzanie strumieni znakowych. Strony kodowe i konwersje pomiędzy nimi. Pojęcie wątku, monitora, sekcji krytycznej. Problemy przetwarzania współbieżnego: race conditions, zagłodzenie, zakleszczenie. Techniki programowania współbieżnego. Problem producentów i konsumentów. Wzorce projektowe przetwarzania współbieżnego (reactor, active object, master-slave itd.). Tworzenie interfejsu użytkownika przy użyciu bibliotek AWT i Swing. Przetwarzanie zdarzeń. Wzorzec MVC. Zarządcy rozkładu. XML i jego przetwarzanie. Parsery SAX i DOM. Transformacje XSLT. Aplety. Logowanie. Testy z wykorzystaniem Junit. Techniki refactoringu kodu.

Charakterystyka pozostałych zajęć

W ramach laboratoriów zajęcia odbywać się będą przy wykorzystaniu standardowego pakietu programistycznego Javy (JDK). Studenci wykonują zadania polegające na samodzielnym tworzeniu funkcjonalnych programów w języku java mających na celu pomóc przyswojenie materiałów z wykładu. Ocenia się aktywność studentów w trakcie zajęć oraz terminowe oddawanie rozwiązań zadań .

Bibliografia

1. B.Eckel, “Thinking in Java”
2. The Java Tutorial
3. M.Fowler et al. „Refactoring – Impoving the Design of Existing Code”
4. E.Gamma et al “Design Patterns – : Elements of Reusable Object-Oriented Software”

Wszelkie prawa zastrzeżone © 2010 Katedra Informatyki   |   Akademia Górniczno-Hutnicza   |   Realizacja Creative Bastards