Programowanie

Zapis i odczyt danych

W ostatni czwartek(9 marca 2017) wziąłem udział w kolejnym spotkaniu Grupy .NET Politechniki Warszawskiej które zatytułowane było Zapis i odczyt danych: urządzenia mobile/desktop. Prezentacja zapowiadała się ciekawie, szczególnie z racji, tego że rozwijam projekt Codziennik w którym stoi przede mną decyzja jak przechowywać dane wprowadzone przez użytkownika.

Rodzaje formatowania danych

Na początku prowadzący prelekcję Filip Kapczyński(Microsoft Student Partner na PW) pokazał nam jakie są możliwości formatowania danych, które chcemy zapisać. ich główne rodzaje to:

  • XML
  • JSON
  • Baza danych
  • Plain text/własny format danych

Na prezentacji zajęliśmy się głównie XML-em oraz Bazami danych.

Prowadzący przedstawił uczestnikom, jak wygląda formatowanie danych w XML-u oraz JSON-ie. Porównaliśmy sobie oba zapisy. Dla mnie bardziej zrozumiały i przejrzysty jest JSON. XML kojarzy mi się bardziej z opisem interfejsów użytkownika, czy HTML-em. Dodatkowo w XML-u jest dużo większy narzut kodu(tagi zamykające), który utrudnia odczyt danych przez człowieka. Ja jestem w stanie łatwiej wyobrazić sobie JSON-owy zapis: „nazwa_pola”: „wartość” niż wartości umieszczone w tagach w XML-u.

Bazy danych

Następnie Filip przedstawił nam najpopularniejsze usługi służące do obsługi baz danych wykorzystywane na urządzeniach mobilnych. Wśród nich znalazł się między innymi SQLite, o którym za chwilę.

Jako sposoby zapisu danych w C# zostały wyróżnione:

  • StringBuilder – klasa przeznaczona do budowania złożonych Stringów
  • File – klasa do odczytu, zapisu i modyfikowania plików z pamięci
  • PCLStorage(Xamarin) – zbiór API do realizowania odczytu/zapisu plików na różnych platformach. Widziałem to rozwiązanie wcześniej. Ułatwia ono znacznie obsługę plików na Xamarinie. Jeśli chcesz wiedzieć więcej to zachęcam do odwiedzenia tej strony.

Demo

Następnie po merytorycznym wstępnie przeszliśmy do tego, co tygryski lubią najbardziej, czyli do demo. Filip przedstawił nam 2 aplikacje. Pierwsza z nich była aplikacja WPF(Windows Presentation Foundation) korzystająca z klasy File i zapisująca dane w formacie XML. Pobierała ona nazwę produktu i cenę i te wartości zapisywała w pliku. Bardzo prosty przykład, ale dający pogląd na możliwości oraz sposób obsługi plików i serializacji danych do XML w C#.

Następnie została ona przerobiona przez prowadzącego – Filipa -tak, aby przyjmowała imię oraz nazwisko użytkownika i te dane zapisywała do pliku. To dało nam – uczestnikom, pogląd na to jak pracować z serializacją i deserializacją danych do XML.

Kolejne demo było przeprowadzone na podstawie 2 aplikacji Xamarin: Android i iOS. Tym razem zobaczyliśmy jak wygląda obsługa SQLite z poziomu kodu w C#. Niestety to było tylko poglądowe demo i prowadzący nie wytłumaczył nam dokładnej struktury tworzenia klas obsługujących tą bazę danych. Chociaż wiem, że byłoby to trudne i na temat obsługi bazy danych w SQLite można by było zrobić kilkudniowe szkolenie. Jednak zostały nam przedstawione chociaż kierunki w jakich mamy szukać kolejnych informacji.

To było bardzo inspirujące spotkanie. Dowiedzieliśmy się w jaki sposób można zapisywać dane naszej aplikacji. Dało mi też szerszy pogląd na możliwości zapisu danych w mojej aplikacji Codziennik. Choć wszystkie znałem, to możliwość posłuchania i podpytania o nie osoby, która zajmuje się takimi tematami na co dzień była bezcenna. Podczas spotkania w mojej głowie zaczął kiełkować pomysł jak przeprowadzić przechowywanie danych w aplikacji Codziennik. O tym jednak będzie pewnie jeden z następnych postów.

Zostaw odpowiedź

Twój adres email nie zostanie upubliczniony.* Pola wymagane *

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.