Завершення спеціалізації 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-репозиторії:

Переглянути проєкти на GitHub

Репозиторій організовано за трьома курсами спеціалізації:

  1. Get Started with iOS App Development — Recipe App.
  2. Creating iOS Apps Using Swift — Local Events Explorer.
  3. iOS Development Capstone Project — Smart Travel Journal.

Для кожного проєкту підготовлено окремий опис із переліком функцій, використаних технологій, структурою застосунку та інструкцією запуску.

Наступний етап

Завершення спеціалізації стало черговим кроком у розвитку моїх навичок програмування та створення мобільних застосунків. Подальша робота буде пов’язана з поглибленням знань UIKit і SwiftUI, розширенням тестового покриття, оптимізацією архітектури, інтеграцією фінансових даних і створенням нових iOS-проєктів.

Ці три застосунки демонструють поступовий перехід від базових компонентів SwiftUI до комплексної розробки з мережевими запитами, картами, збереженням даних, аналітичною візуалізацією та AI-функціями.

Коментарі

Популярні публікації