Завершення спеціалізації IBM Developing iOS Apps with Swift
Я завершив спеціалізацію Developing iOS Apps with Swift, розроблену IBM і представлену на платформі Coursera. Навчальна програма складалася з трьох послідовних курсів і була спрямована на практичне опанування розробки застосунків для iOS за допомогою Swift, SwiftUI, Xcode та сучасних фреймворків Apple.
Головною цінністю спеціалізації стала її практична спрямованість. У межах кожного курсу потрібно було не лише вивчати окремі компоненти Swift та SwiftUI, а й застосовувати їх у повноцінних проєктах — від простого багатосторінкового застосунку до комплексного capstone-проєкту.
Переглянути спеціалізацію на Coursera
Recipe App: основи розробки зі SwiftUI
Першим завершеним проєктом став Recipe App — застосунок для перегляду рецептів.
У ньому реалізовано:
- список рецептів із зображеннями та описами;
- завантаження зображень через
AsyncImage; - пошук рецептів у реальному часі;
- перехід між списком і детальним екраном;
- додавання та видалення рецептів з обраного;
- керування станом за допомогою
@Stateі@Binding; - повторно використовувані компоненти SwiftUI.
Цей проєкт допоміг закріпити базові принципи декларативного інтерфейсу, навігації та передавання даних між представленнями.
Local Events Explorer: API, карти та збереження даних
Другий проєкт — Local Events Explorer — став значно складнішим застосунком для пошуку й перегляду місцевих подій.
До його функціональності увійшли:
- отримання та декодування JSON-даних;
- асинхронні мережеві запити;
- архітектура MVVM;
- пошук подій за містом;
- інтерактивна карта з позначками;
- перемикання стилів карти;
- збереження вибраних подій за допомогою SwiftData;
- пошук і видалення збережених записів;
- візуалізація вартості квитків у Swift Charts;
- анімації, стани завантаження та повторні запити;
- AI-рекомендації з резервним контентом на пристроях, де відповідні моделі недоступні.
Розробка Local Events Explorer дала змогу практично поєднати SwiftUI, MapKit, SwiftData, URLSession, Charts та сучасні засоби керування станом.
Smart Travel Journal: підсумковий capstone-проєкт
Завершальним проєктом спеціалізації став Smart Travel Journal — цифровий журнал для збереження та впорядкування подорожей.
Застосунок дозволяє:
- створювати й організовувати подорожі;
- додавати записи та особисті нотатки;
- працювати із фотографіями;
- зберігати географічні координати;
- відображати місця на карті;
- використовувати Core Location;
- отримувати погодні дані;
- зберігати інформацію локально за допомогою SwiftData;
- будувати графіки у Swift Charts;
- створювати AI-резюме подорожей і тематичні теги;
- працювати зі станами завантаження та помилок;
- підтримувати доступність і масштабування елементів інтерфейсу.
У цьому проєкті було використано архітектуру MVVM із розподілом коду між моделями, представленнями, view models, сервісами та ресурсами. Capstone дозволив об’єднати в одному застосунку більшість технологій, розглянутих протягом спеціалізації.
Отримані навички
Після завершення спеціалізації моє портфоліо охоплює практичну роботу з такими технологіями й підходами:
- Swift і SwiftUI;
- Xcode та iOS Simulator;
- MVVM;
- NavigationStack, TabView, List і адаптивні сітки;
@State,@Binding,@Observableі@Query;- SwiftData;
- URLSession, Codable та
async/await; - MapKit і Core Location;
- Swift Charts;
- Apple Foundation Models;
- анімації та переходи;
- обробка помилок;
- доступність інтерфейсів;
- Git і GitHub.
Навчання також дало досвід структурування проєктів, налагодження коду, перевірки застосунків у симуляторі та підготовки технічної документації.
Проєкти на GitHub
Вихідний код, структура проєктів, README-файли та скриншоти застосунків опубліковані в моєму GitHub-репозиторії:
Репозиторій організовано за трьома курсами спеціалізації:
- Get Started with iOS App Development — Recipe App.
- Creating iOS Apps Using Swift — Local Events Explorer.
- iOS Development Capstone Project — Smart Travel Journal.
Для кожного проєкту підготовлено окремий опис із переліком функцій, використаних технологій, структурою застосунку та інструкцією запуску.
Наступний етап
Завершення спеціалізації стало черговим кроком у розвитку моїх навичок програмування та створення мобільних застосунків. Подальша робота буде пов’язана з поглибленням знань UIKit і SwiftUI, розширенням тестового покриття, оптимізацією архітектури, інтеграцією фінансових даних і створенням нових iOS-проєктів.
Ці три застосунки демонструють поступовий перехід від базових компонентів SwiftUI до комплексної розробки з мережевими запитами, картами, збереженням даних, аналітичною візуалізацією та AI-функціями.


Коментарі
Дописати коментар