Содержание
- 2. Wprowadzenie (1) W przestrzeni nazw System.IO znajduje się wiele typów związanych z odczytywaniem i zapisywaniem danych.
- 3. Wprowadzenie (2) Możliwość serializacji obiektu jest kluczowa w przypadku potrzeby skopiowania obiektu na zdalną maszynę za
- 4. Serializacja obiektów
- 5. Serializacja Termin serializacja oznacza proces zapisywania (i ewentualnie transformacji) stanu obiektu w postaci serii bajtów do
- 6. Przykład zastosowania serializacji (1) Dla przykładu załóżmy, że stworzyliśmy desktopową aplikację i chcemy zapewnić sposób pozwalający
- 7. Przykład zastosowania serializacji (2) To oczywiście jest do zrobienia, ale używając mechanizmu serializacji możemy zaoszczędzić sobie
- 8. Przykład zastosowania serializacji (3)
- 9. Wewnętrzne mechanizmy Podczas gdy sam proces wykorzystania serializacji jest bardzo prosty, mechanizmy, który za nią odpowiadają
- 10. Rożne formaty serializacji Usługi serializujące platformy .NET pozwalają na utrwalanie grafu obiektu w kilku różnych formatach.
- 11. Różne strumienie Należy pamiętać, że graf obiektów możemy zapisywać do dowolnego strumienia (obiektu klasy dziedziczącej po
- 12. Rola grafu obiektów Podczas serializacji obiektu, CLR uwzględnia również wszystkie powiązane obiekty w celu zapewnienia prawidłowego
- 13. Grafy obiektów Do każdego obiektu w grafie obiektów przypisywana jest unikalna wartość liczbowa. Wartości te są
- 14. Przykład grafu obiektów (1) Dla przykładu załóżmy, że stworzyliśmy następujący zbiór klas: bazową klasę Car, która
- 15. Przykład grafu obiektów (2) Klasa JamesBosnCar posiada referencję do klasy Radio, ponieważ odziedziczyła ją po klasie
- 16. Automatyczne generowanie grafu obiektów Zaletą procesu serializacji jest to, że graf reprezentujący relacje między obiektami jest
- 17. Oznaczanie obiektów do serializacji Aby dany obiekt był dostępny dla usług serializacji platformy .NET, wystarczy oznaczyć
- 18. Przykładowe klasy (1) Dla przykładu stwórzmy kilka powiązanych klas. Pole radioID zostało oznaczone atrybutem [NonSerialized] i
- 19. Przykładowe klasy (2) Dodajemy klasę bazową posiadająca Radio oraz klasę po niej dziedziczącą.
- 20. Własności atrybutu [Serializable] (1) Atrybut [Serializable] nie jest odziedziczony po klasie bazowej. Dlatego też, w przypadku
- 21. Własności atrybutu [Serializable] (2) Jeżeli spróbujemy serializować obiekty nie oznaczone tym atrybutem używając typów BinaryFormater i
- 22. Pola prywatne, publiczne i właściwości (1) Typy BinaryFormater i SoapFormater są zaprogramowane do utrwalania wszystkich serializowalnych
- 23. Pola prywatne, publiczne i właściwości (2)
- 24. Pola prywatne, publiczne i właściwości (3) W przypadku, gdy obiekt klasy Person będziemy serializować za pomocą
- 25. Formatery serializacji
- 26. Formatery serializacji Po skonfigurowaniu typów do możliwości ich serializoacji na platformie .NET poprzez oznaczenie ich niezbędnymi
- 27. Klasa BinaryFormater Typ BinaryFormater zapisuje stan obiektu do wskazanego strumienia używając formatu binarnego. Zdefiniowany jest w
- 28. Klasa SoapFormater Typ SospFormater utrwala stan obiektu jako wiadomość w formacie SOAP. Zdefiniowany jest on w
- 29. Klasa XmlSerializer Typ SospSerializer utrwala stan obiektu w postaci dokumentu XML. Aby użyć tego typu musimy
- 30. Wspólne interfejsy Wszystkie wymienione formatery dziedziczą bezpośrednio po klasie System.Object. Nie dzielą zatem wspólnego zbioru składowych
- 31. Interfejs IFormater Interfejs System.Runtime.Serialization.IFormater definiuje podstawowe metody Serialize() i Deserialize() oraz kilka właściwości wykorzystywanych „po cichu”
- 32. Interfejs IRemotingFormater Interfejs System.Runtime.Remoting.Messaging.IRemotingFormater (wykorzystywany przez warstwę zdalnego dostępu .NET) przeciąża metody Serialize() i Deserialize() do
- 33. Przykładowe wykorzystanie interfejsu IFormater Mimo, że raczej nie korzysta się bezpośrednio z wymienionych interfejsów, ich przykładowe
- 34. Wierność zapisywanych nazw (1) Najbardziej oczywistą różnicą między trzema poznanymi formaterami jest sposób, w jaki graf
- 35. Wierność zapisywanych nazw (2) Typ SoapFormater utrwala informację o pakiecie w postaci XML-owych przestrzeni nazw. Na
- 36. Wierność zapisywanych nazw (3) Typ XmlSerializer nie próbuje zachowywać całkowitej zgodności typów i dlatego nie utrwala
- 37. Wierność zapisywanych nazw (4) Jeżeli chcemy utrwalić stan obiektu w postaci, która może być wykorzystana przez
- 38. Serializacja za pomocą typu BinaryFormater (1) Dwie kluczowe metody to: Serialize() – utrwalenie grafu obiektów do
- 39. Serializacja za pomocą typu BinaryFormater (2) Metoda Serialize() odpowiedzialna jest za skomponowanie grafu obiektów i przeniesienie
- 40. Serializacja za pomocą typu BinaryFormater (3) Wynikiem użycia typu BinaryFormater jest następujący plik binarny przechowujący stan
- 41. Serializacja za pomocą typu BinaryFormater (4) Deserializacja stanu obiektu z pliku binarnego. Metoda Deserialize() zwraca obiekty
- 42. Serializacja za pomocą typu SoapFormater (1) Specyfikacja SOAP (ang. Simple Object Access Protocol) definiuje standardowy proces,
- 43. Serializacja za pomocą typu SoapFormater (2) Wynikowy plik zawiera stan obiektu oraz relacje między jego poszczególnymi
- 44. Serializacja za pomocą typu XmlSerializer (1) Typ XmlSerializer służy do zapisania publicznego stanu obiektu w postaci
- 45. Serializacja za pomocą typu XmlSerializer (2) Wynikiem serializacji naszego obiektu jest nastepujący dokument XML.
- 46. Kontrola sposobu generowania dokumentu XML XmlSerializer wymaga zdefiniowania dla każdej z klas biorącej udział w serializacji
- 47. Atrybuty przestrzeni System.Xml.Serialization
- 48. Przykładowe zastosowanie atrybutów Wynikowy dokument XML. Zmiana w definicji klasy (zastosowanie atrybutów) Nowy wynikowy dokument XML
- 49. Ponieważ kolekcje z przestrzeni nazw System.Collections i System.Collection.Generic są serializowalne (oznaczone atrybutem [Serializable]), serilaizacja kolekcji nie
- 50. Serializacja kolekcji obiektów (2) Serializacja za pomocą typu XmlSerializer wymaga podania metadanych o odpowiednich typach. W
- 51. Konfiguracja procesu serializacji
- 52. Konfiguracja procesu serializacji W niektórych przypadkach, domyślne działanie serializacji może okazać się niewystarczające. Możemy chcieć w
- 53. Typy związane z konfiguracją serializacji
- 54. Kolejne fazy procesu serializacji (1) W momencie serializacji obiektu, typ BinaryFormater, przesyła następujące informacje do danego
- 55. Kolejne fazy procesu serializacji (2) Poza przenoszeniem danych do i ze strumienia, formatery analizują składowe obiektów
- 56. Implementacja interfejsu ISerializable Obiekty oznaczone atrybutem [Serializable] mogą implementować interfejs ISerializable. Pozwala to na zaangażowanie się
- 57. Klasa SerializationInfo Metoda GetObjectData() jest wywoływana automatycznie przez formater w czasie serializacji. Implementacja tej metody wypełnia
- 58. Specjalny konstruktor (1) Klasa implementująca interfejs ISerializable musi również definiować specjalny konstruktor o następujących parametrach: Konstruktor
- 59. Specjalny konstruktor (2) Drugim parametrem tego specjalnego konstruktora jest typ StreamingContext, który zawiera informacje odnoście źródła
- 60. Przykład implementacji interfejsu ISerializable
- 61. Wynik przykładowej konfiguracji serializacji Wynikiem przykładowej konfiguracji procesu serializacji będzie następujący plik. Nazwy jego elementów nie
- 62. Konfiguracja za pomocą atrybutów (1) Drugim sposobem konfiguracji procesu serializacji (preferowanym sposobem) jest definiowanie metod oznaczanych
- 63. Konfiguracja za pomocą atrybutów (2) Atrybuty te są zdefiniowane w przestrzeni nazw System.Runtime.Serialization. Metody oznaczone tymi
- 64. Przykładowa konfiguracji przy użyciu atrybutów
- 66. Скачать презентацию
 Slaidy.com
 Slaidy.com


















![Własności atrybutu [Serializable] (1) Atrybut [Serializable] nie jest odziedziczony po klasie bazowej.](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/909085/slide-19.jpg)
![Własności atrybutu [Serializable] (2) Jeżeli spróbujemy serializować obiekty nie oznaczone tym atrybutem](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/909085/slide-20.jpg)


































![Implementacja interfejsu ISerializable Obiekty oznaczone atrybutem [Serializable] mogą implementować interfejs ISerializable. Pozwala](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/909085/slide-55.jpg)








 День Всех ЗНОП
 День Всех ЗНОП Строение клетки
 Строение клетки Политическая власть
 Политическая власть Строевая подготовка
 Строевая подготовка Мультсериалы 87- го по 2003- й
 Мультсериалы 87- го по 2003- й ege-4
 ege-4 Презентация на тему Деньги (4 класс)
 Презентация на тему Деньги (4 класс) В мире прав и обязанностей
 В мире прав и обязанностей Мир эмоций и чувств
 Мир эмоций и чувств Огонь, вода и газ (3 класс)
 Огонь, вода и газ (3 класс) Презентация на тему Осенний лес
 Презентация на тему Осенний лес  Узкие места внутренней среды ПАО Калориферный завод. Анализ ресурсов по М.Портеру
 Узкие места внутренней среды ПАО Калориферный завод. Анализ ресурсов по М.Портеру Презентация на тему Математические головоломки (3 класс)
 Презентация на тему Математические головоломки (3 класс) Многообразие изобразительных техник
 Многообразие изобразительных техник Игра для знатоков истории России
 Игра для знатоков истории России Главные формы рельефа
 Главные формы рельефа Кадровый состав ГПС МЧС России. Лекция 1.5
 Кадровый состав ГПС МЧС России. Лекция 1.5 Вот что пишет о Ранетках в газетах: Мы не понимаем как эти девчонки держат такие тяжёлые инструменты? НА ЭТО ДЕВЧОНКИ ОТВЕЧАЮТ МЫ ЛЮ
 Вот что пишет о Ранетках в газетах: Мы не понимаем как эти девчонки держат такие тяжёлые инструменты? НА ЭТО ДЕВЧОНКИ ОТВЕЧАЮТ МЫ ЛЮ Методы исследования ССС
 Методы исследования ССС  ИНТЕРНЕТ В РОССИИ. ПЕНЕТРАЦИЯ. ДИНАМИКА. ОСОБЕННОСТИ.
 ИНТЕРНЕТ В РОССИИ. ПЕНЕТРАЦИЯ. ДИНАМИКА. ОСОБЕННОСТИ. Тайна бермудского треугольника
 Тайна бермудского треугольника Потребности общества в управленческих компетенциях
 Потребности общества в управленческих компетенциях Редкие и охраняемые растения Волгоградской области
 Редкие и охраняемые растения Волгоградской области Больший
 Больший Организация и проведение газоопасных работ
 Организация и проведение газоопасных работ Моббинг. Возможные причины моббинга
 Моббинг. Возможные причины моббинга Мой творческий путь в прозе и стихах
 Мой творческий путь в прозе и стихах Рубительные машины
 Рубительные машины