https://github.com/rotorgames/sibsoftprojecttest
Тестовый проект для СибирьСофтПроект
https://github.com/rotorgames/sibsoftprojecttest
Last synced: over 1 year ago
JSON representation
Тестовый проект для СибирьСофтПроект
- Host: GitHub
- URL: https://github.com/rotorgames/sibsoftprojecttest
- Owner: rotorgames
- Created: 2017-03-25T21:56:08.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2017-03-25T22:30:19.000Z (about 9 years ago)
- Last Synced: 2025-01-12T18:08:45.214Z (over 1 year ago)
- Language: C#
- Size: 254 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# SibSoftProjectTest
Тестовый проект для СибирьСофтПроект
### Время:
Написание Unit тестов 1 час
Разработка 4 часа
Тестирование 30 минут
### Зависимости
Xamarin.4.3.0.789
Xamarin.Forms.2.3.3.193
Xamarin.FFImageLoading.Forms.2.2.9
Xam.FormsPlugin.Iconize.1.0.10
PropertyChanged.Fody.1.52.1
Newtonsoft.Json.9.0.1
FreshMvvm.2.2.0
Microsoft.VisualStudio.QualityTools.UnitTestFramework.10.0.0.0
### Описание
#### Хранение данных
По началу я хотел использовать для хранения данных SQLite или Realm, но потом решил,
что это будет слишком громоздко для такой небольшой задачи.
За хранение локальных данных отвечает внутренний механизм Xamarin.Forms который получает сериализованные данные в json.
#### Кэширование изображений
В задание небыло указано, что кэширование данных должен был писать именно я, поэтому я решил использовать FFImageLoading,
который прекрасное решает эту задачу и уменьшает время на разработку.
#### MVVM Framework
Я решил использовать FreshMvvm что бы не пришлось реализовывать весь патерн ViewModel to ViewModel навигации, IoC контейнеров и DI.
Но все же я решил дописать свой Mapper так как я предпочитаю регистрировать Views и ViewModels вручную, это дает большей гибкости.
#### Fody.PropertyChanged
Для абстрагирования от реализации INotifyPropertyChanged я решил использовать Fody.PropertyChanged