macOS программирование на Swift в Xcode - Уровень 2
Практический курс по созданию macOS приложений на Swift в среде разработке Xcode


Описание:
В данном курсе мы создадим несколько полностью рабочих macOS приложений: "Переводчик", "Новости", "Заметки"
В приложениях будем использовать технологии CoreData (внутренняя база данных), CloudKit (облачная база данных), StoreKit (встроенные покупки), работа с API сайтов и JSON, а так же с файловой системой.
- Приложение Переводчик.
Клиент-серверное приложение, которое будет переводить текст введенный пользователем и копировать перевод в буфер обмена.
Технологии: Работа с API и JSON, работа с файловой системой, работа с UserDefaults (сохранение простых данных в памяти), работа с внутренними уведомлениями (NotificationCenter)
- Приложение Новости
Клиент-серверное приложение, которое будет искать и загружать новости с сайта newsapi и отображать их пользователю в удобночитаемом виде
Технологии: Работа с API и JSON, работа с файловой системой, переходы между контроллерами, работа с меню, работа с картинками, работа c таблицами (NSTableView)
- Приложение Заметки
Приложение, которое будет создавать текстовую заметку и привязывать к ней время для показа уведомления. Так же в данное приложении мы добавим встроенную покупку, синхронизируем базу с облаком.
Технологии: CoreData (внутренняя база данных), CloudKit (облачная база данных), StoreKit (встроенные покупки)
В дальнейшем данные приложения вы сможете использовать как портфолио при устройстве на работу, а так же выставить за них цену в AppStore и заработать на продажах этих приложений.
Чему вы научитесь
- Сможете создавать свои macOS приложения
- Научитесь работать в Xcode (среда разработки macOS приложений)
- Освоите работу с CoreData
- Научитесь работать с CloudKit
- Научитесь работать с API сайтов
- Научитесь разрабатывать клиент-серверные приложения
- Научитесь делать локализацию контента приложения
- Научитесь делать встроенные покупки в приложении (StoreKit)
Программа курса:
Введение
- О преподавателете
- Что будет в курсе
- Что потребуется для прохождения данного курса
Приложение Переводчик
- Переводчик - постановка задачи
- View приложения
- Связываем View и Controller
- Модель приложения, основные константы
- Формируем запрос для перевода
- Распарсиваем ответ
- Исправляем ошибки
- Начинаем переводить
- Выбираем языки для перевода
- Показываем статус перевода
- Настраиваем авто-перевод
- Сохраняем языки для перевода
- Копируем текст в буфер обмена
Приложение Новости
- Приложение новости - описание задачи
- Модель приложения
- Составляем структуру одной новости
- Загружаем JSON
- Парсим JSON - часть 1
- Парсим JSON - часть 2
- Создание View
- NSTableView - заполняем таблицу
- Загрузка новостей на основной форме
- Отображаем форму одной новости
- Открываем новость в Safari и кастомизируем TextField
- Добавляем меню для таблицы по правому клику
Приложение Заметки
- Приложение заметки - описание задачи
- CoreData - проектируем структуру данных
- Создание заметок в базе
- Создаем объект Reminder для заметки
- View приложения
- Выводим заметки в таблицу
- Создаем и удаляем заметки
- Выводим список уведомлений для заметки
- Создаем-удаляем-меняем время уведомления
- Редактируем текст заметки
- Тестируем локальные уведомления
- Установка уведомления для заметки
- Тестируем уведомления
- Открываем заметку от которой пришло уведомление
- Создание встроенной покупки в AppStore
- Получаем цену продукта
- Создаем менеджер покупок
- Тестируем покупку
- Восстановление покупок
CloudKit
- CloudKit - структура данных в облаке
- Дорабатываем модель для работы с облаком
- Сохранение заметки в облаке
- Обновление записей в облаке
- Удаление записи из облака
- Загружаем новые записи из облака
- Обновляем заметку в базе или облаке - часть 1
- Обновляем заметку в базе или облаке - часть 2
- Отлаживаем ошибки + тестируем обновление
- Ручная синхронизация баз, отстроченная загрузка записи в облако
- Подписываемся на уведомлнения
- Обрабатываем уведомления