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