Dane o wykładzie
Wykładowca: Marcin Młotkowski
Wykład: poniedziałek, 12:15-14:00, sala 40
Pracownia: czwartek, 12:15-14:00 oraz 15:15-17:00, sala 50d
Konsultacje
czwartek, 10:15-12:00, pok. 23
Komunikaty
04.02.2004 Konsultacje
będą w piątek 6 lutego w godzinach 11-13.
07.01.2004 Termin
oddania aplikacji DCOM jest przesunięty o tydzień, na 15 stycznia.
07.01.2004 Szkic przykadu
na wykład na 12 stycznia jest
tutaj.
Możliwe, że będzie nieco przerobiony, ale szkielet pozostanie ten sam.
22.12.2003 Uzupełnienie
do wykładu z 15 grudnia: argumentem funkcji CreateRemoteComObject
powinna być stała CLASS_Matematyka. Wywołanie powinno więc wyglądać
tak: CreateRemoteComObject('abulafia', CLASS_Matematyka).
18.12.2003 W poniedziałek
22 grudnia wykładu nie ma. Wszystkim życzę pogodnych świąt
Bożego Narodzenia i pomyślności w 2004 roku.
12.10.2003,14:35 Jest już gotowy
przykład, który będzie omawiany
na najbliższym wykładzie.
W czwartek (23 października)
pracownie są zamknięte z powodu
zawodów. Mimo to chciałbym odebrać projekty
(do tego nie trzeba pracowni); zapewne będzie to w moim pokoju
jeśli nie będzie innej sali. Jeśli ktoś nie ma dostępu do
drukarki, niech mi wcześniej wyśle projekt pocztą elektroniczną.
Są już
propozycje zadań na pracownię.
Opis przedmiotu
W ostatnich latach dzięki rozwojowi sieci lokalnych i rozproszonych wzrosło
zainteresowanie tworzeniem aplikacji wykorzystujących biblioteki napisane dla
różnych platform systemowych i wykonywane na różnych komputerach. Konieczne
jest jednak ustalenie wspólnego protokołu przesyłania żądań wykonania procedur,
przesyłania argumentów czy odsyłania wyników.
Spora część rozwiązań oparta jest na paradygmacie obiektowym, co upraszcza sposób
myślenia: w końcu referencja do obiektu może oznaczać nie tylko adres w pamięci,
ale także adres innego komputera. Programista może prawie całkiem zapomnieć, że
fizycznie obiekt znajduje się na innym komputerze, a za właściwą interpretację
referencji odpowiada kompilator oraz środowisko wykonujące program. To umożliwia
np. dzierżawę oprogramowania. Klient dysponuje jedynie fragmentem aplikacji, a
całość jest wykonywana na komputerze producenta.
Podczas zajęć zostaną omówione różne środowiska i narzędzia umożliwiające systemów
z obiektami rozproszonymi. Będą to przede wszystkim: CORBA, DCOM/COM+, narzędzia dla
Javy (Java-RMI, Java Corba), czy SOAP/UDDI (wykorzystywane m.in. w .NET).
Wykłady i przykłady
- 6 października: plan wykładu, wstęp, architektura typowego systemu obiektów
rozproszonych
- 13 października: JavaRMI, model UnicastRemoteObject
(przykład)
- 20 października: JavaRMI, model Activatable
- 27 października: klasa Serializable, strategie komunikacji
między klientami i serwerem
- 3 listopada: Architektura CORBA, interfejsy.
- 17 listopada: realizacja CORBY w środowisku JAVA 1.3
- 24 listopada: Implementacja klienta i serwera
w JAVA 1.4 (CORBA, POA). Dostęp do usługi z poziomu C++ (środowisko VisiBroker 4.5)
- 1 grudnia: architektura i części składowe środowiska VisiBroker 4.5.
Przykład implementacji serwera.
- 8 grudnia: architektura środowiska [D]COM
- 15 grudnia: przykład aplikacji w środowisku COM+ wraz z udostępnieniem serwisu w Windows 2000.
Dostępne są: serwer, biblioteka typu
(generowana automatycznie) oraz klient
- 5 stycznia: wprowadzenie do C# (przykład), programowanie aplikacji COM w C#
- 12 stycznia: przykładowa klasa z metodą usługową sortowania, serwer i
klient korzystający z protokołu SOAP. Kompiluje się tak.
- 19 stycznia: WebServices
- 26 stycznia: rozproszone środowiska wieloagentowe