Uniwersytet Zielonogórski Wydział Elektrotechniki, Informatyki i
Telekomunikacji
Instytut Sterowania i Systemów Informatycznych Platforma .Net
Kierunek: Informatyka Laboratorium nr 9
SERIALIZACJA
Prowadzący: dr inż. Marek Kowal
Zakres ćwiczeń:
1. Koncepcja pojęcia serializacji i deserializacji obiektów 2. Serializacja XML
3. Serializacja SOAP 4. Serializacja binarna Wstęp teoretyczny
Serializacja (ang. Serialization) jest procesem konwersji stanu obiektu do postaci, która może być zachowana na dysku lub przesłana przez sieć komputerową. Proces odwrotny, czyli odzyskanie stanu obiektu z strumienia danych nazywamy deserializają (ang. deserialization).
Serializacja w przypadku platformy .Net Framework jest używana przy przesyłaniu obiektów przez wartość z jednej domeny aplikacji do drugiej. Serializację stosują podstawowe technologie, które często się używa, tworząc oprogramowanie na platformę .Net np.:
.NET remoting,
XML Web Services,
Windows Communication Foundation.
Na platformie .Net wyróżniamy trzy rodzaje serailizacji:
Serializacja XML (ang. XML Serialization).
Serializacja do protokołu SOAP (ang. SOAP Serialization). Serializacja binarna (ang.
Binary Serialization).
Zadania:
1. Zapoznaj się ze wstępem teoretycznym dotyczącym serializacji w języku C#
(prowadzący zajęcia udostępni w tym celu materiały Microsoft IT Academy) 2. Twoim zadaniem jest utworzenie klasy Osoba składającej się z następujących pól:
pola Imie i Nazwisko typu string
pola rok urodzenia typu int
pola haslo typu string
Klasa musi być serializowalna binarnie. Pole rok urodzenia przed zapisaniem do strumienia powinno byc zaszyfrowane przy pomocy funkcji XOR, oczywiście przy deserilizacji pole powinno być prawidłowo deszyfrowane. Pole hasło nie powinno być
zapisywane. Podczas odzyskiwania ze strumienia, hasło powinno być utworzone przez konkatenację imienia i nazwiska.
3. Zadanie polega na utworzeniu klasy Towar składającej się z następujących pól: pola nazwa typu string
pola cena detaliczna i cena hurtowa typu decimal
pola id towaru typu int
Klasa musi być serializowalna do postaci XML. Pole id towaru powinno byd zapisane jako atrybut. Pole cena hurtowa powinno zostać pominięte. Nazwa elementu dla pola nazwa powinna być NazwaTowaru.
Literatura:
1. Włodarczyk M.: ITA-105 Programowanie obiektowe, 2007.
2. Chappell D.: Zrozumieć platformę .NET, Helion, 2007.
3. Duffy J.: .NET Framework 2.0, Zaawansowane programowanie, Helion, 2007.
4. Michelsen K.: Język C#. Szkoła programowania, Helion, 2007 5. Liberty J.: C# 2005. Wprowadzenie, O'Reilly, 2007