Это приложение разработано на SwiftUI и включает в себя основные функции, такие как:
- Отображение списка закусок.
- Добавление закусок в заказ.
- Просмотр деталей выбранной закуски.
- Управление профилем пользователя.
-
SwiftUI:
- Фреймворк для построения пользовательского интерфейса. Используется для создания представлений, таких как списки, кнопки, табы, и детализированные экраны.
-
Combine:
- Используется для управления состоянием и реактивного программирования, например, с помощью
@PublishedвObservableObjectклассах для обновления UI при изменении данных.
- Используется для управления состоянием и реактивного программирования, например, с помощью
-
Networking:
- URLSession: Используется для выполнения сетевых запросов и загрузки данных с сервера.
- NSCache: Кэширование изображений для оптимизации загрузки и использования изображений в приложении.
- JSON Decoding: Используется для декодирования данных, полученных с сервера, в модели Swift с помощью
Codableпротокола.
-
UIKit:
- Используется для специфических элементов UI, таких как
UIActivityIndicatorView, через оберткуUIViewRepresentableдля интеграции с SwiftUI.
- Используется для специфических элементов UI, таких как
-
@AppStorage:
- Используется для хранения пользовательских данных в
UserDefaults, что позволяет сохранять и восстанавливать состояние приложения.
- Используется для хранения пользовательских данных в
- Загрузка данных с сервера: Реализована загрузка данных о закусках с удаленного сервера с использованием
URLSession. - Управление состоянием: Использование
@Publishedдля автоматического обновления интерфейса при изменении данных. - Всплывающие уведомления: Встроенные уведомления об ошибках и успешных действиях.
- Кеширование изображений: Реализовано кеширование изображений для снижения нагрузки на сеть.