Свържете се с нас

Съдържание и теми, включени в курса

Въведение

Седмица 1: Напреднали концепции в Swift, Kotlin и JavaScript

  • Swift (iOS)
    • Напреднали функции: Closures, улавяне на стойности, функции от по-висок ред
    • Протоколно-ориентирано програмиране и generics
    • Управление на паметта с ARC (Automatic Reference Counting)
  • Kotlin (Android)
    • Функции за разширение и Kotlin Standard Library
    • Coroutines за асинхронно програмиране
    • Sealed класове, enums и напреднала обработка на грешки
  • JavaScript (React Native)
    • Напреднали ES6+ функции: Деструктуриране, async/await, promises
    • Концепции за функционално програмиране в JavaScript
    • Работа с библиотеки на трети страни в React Native

Седмица 2: Архитектура на мобилни приложения и дизайн модели

  • MVVM (Model-View-ViewModel) за iOS и Android
    • Разбиране на MVVM архитектурата за iOS (Swift) и Android (Kotlin)
    • Внедряване на ViewModels и наблюдение на данни с LiveData (Android) и Combine (iOS)
    • Реактивно програмиране с RxSwift и RxKotlin
  • Компонентно-базирана архитектура в React Native
    • Разбиране на жизнения цикъл на компонентите и hooks
    • Най-добри практики за управление на състояние и props в голям мащаб
    • Използване на React Context API за глобално управление на състоянието

Седмица 3: Напреднали концепции за работа с мрежа

  • Работа с мрежа в iOS (Swift)
    • Работа с URLSession за персонализирани мрежови заявки
    • Напреднали извиквания на REST API и обработка на грешки
    • Работа с Codable и JSON парсване
    • Най-добри практики за сигурна API комуникация (SSL pinning, OAuth)
  • Работа с мрежа в Android (Kotlin)
    • Retrofit за правене на API извиквания и обработка на отговори
    • Напреднала обработка на грешки при API и механизми за повторен опит
    • Използване на Gson или Moshi за JSON парсване
    • Сигурна комуникация чрез HTTPS и OAuth удостоверяване

Седмица 4: Работа с мрежа в React Native

  • API интеграция с Axios и Fetch
    • Напреднала API интеграция с Axios и Fetch
    • Стратегии за обработка на грешки и повторни опити при мрежови заявки
    • Работа с удостоверяване (JWT, OAuth)
  • WebSockets и комуникация в реално време
    • Въведение в WebSockets в React Native
    • Изграждане на функции за чат в реално време или известия с WebSocket връзки
    • Управление на постоянни връзки и актуализации на данни

Седмица 5: Напреднали техники за запазване на данни

  • Core Data и SQLite (iOS)
    • Напреднали връзки в Core Data, извличане и заявки
    • Директно използване на SQLite за iOS приложения и управление на връзки с база данни
    • Ефективна обработка и оптимизация на данни
  • Room Persistence и SQLite (Android)
    • Напреднали връзки и заявки в база данни Room
    • Управление на големи набори от данни и оптимизиране на производителността на базата данни
    • Използване на ProGuard за сигурност на структурите на базата данни
  • Firebase за облачно съхранение (iOS и Android)
    • Интеграция с Firebase за управление на база данни в реално време
    • Най-добри практики за синхронизиране на локални и облачни данни

Седмица 6: Напреднало управление на състоянието в React Native

  • Redux за управление на състоянието
    • Напреднали концепции в Redux: Middlewares, Thunks и Sagas
    • Оптимизиране на Redux за производителност и мащабируемост
  • Recoil за управление на състоянието
    • Въведение в Recoil: По-гъвкава алтернатива на Redux
    • Обработка на широкомащабно управление на състоянието в компонентите
    • Ефективни актуализации на състоянието и атомарно управление на състоянието

Седмица 7: Напреднали анимации в iOS и Android

  • iOS (Swift)
    • Core Animation: Анимиране на изгледи, слоеве и преходи
    • UIKit Dynamics: Създаване на физично-базирани анимации
    • Персонализирани преходи и анимации между view controllers
  • Android (Kotlin)
    • MotionLayout за създаване на сложни анимации
    • TransitionManager и преходи на споделени елементи
    • Property анимации за мащабиране, завъртане и промени в алфа на изглед

Седмица 8: Анимации и UI/UX в React Native

  • Анимации в React Native
    • Използване на Animated API и Reanimated за сложни анимации
    • Внедряване на жестове и взаимодействия с помощта на React Native Gesture Handler
    • Най-добри практики за производителни анимации в React Native
  • Създаване на персонализирани UI компоненти
    • Изграждане на компоненти за многократна употреба и персонализируеми компоненти в React Native
    • Внедряване на адаптивен дизайн с media queries и flexbox

Седмица 9: Интегриране на нативни модули и функции на устройството

  • Достъп до нативни функции на устройството
    • Напреднала употреба на камера, геолокация, Bluetooth и сензори
    • Създаване на нативни модули в Swift и Kotlin за интеграция с React Native
    • Интегриране на ARKit за добавена реалност в iOS
    • Интегриране на CameraX и ARCore за добавена реалност в Android
  • React Native Bridge и нативни модули
    • Изграждане на персонализирани нативни модули за интеграция с функционалност, специфична за платформата
    • Създаване на Java и Swift мостове за React Native приложения
    • Най-добри практики за управление на нативен код в междуплатформена среда

Седмица 10: Тестване и дебъгване на напреднали приложения

  • Тестване в iOS (Swift)
    • Писане на unit тестове с XCTest и UI тестове за iOS
    • Използване на Xcode Instruments за профилиране на производителността и течове на памет
    • Работни процеси за непрекъсната интеграция и тестване с Jenkins и CircleCI
  • Тестване в Android (Kotlin)
    • Напреднали JUnit и Espresso тестове за Android приложения
    • Профилиране на производителността и идентифициране на тесни места с помощта на Android Profiler
    • Използване на Firebase Test Lab за автоматизирано тестване на множество устройства
  • Тестване в React Native
    • Unit тестване с Jest и компонентно тестване с Enzyme
    • Тестване от край до край с Detox и настройки за автоматизиран тест
    • Профилиране на производителността с React Native Debugger и Flipper

Седмица 11: Внедряване на приложения и непрекъсната интеграция

  • Внедряване в App Store (iOS)
    • Подготовка на приложението ви за изпращане: Сертификати за App Store, provisioning профили и бета тестване с TestFlight
    • Използване на Fastlane за автоматизиране на внедряването на iOS приложения
    • Управление на App Store Connect и настройка на процеси за преглед на приложения
  • Внедряване в Google Play (Android)
    • Подготовка на APK и подписването му за изпращане в Google Play
    • Автоматизиране на внедряването на Android приложения с Fastlane и Gradle
    • Използване на Google Play Console за преглед на приложения и бета тестване
  • Настройка на CI/CD Pipelines
    • Конфигуриране на Jenkins, GitHub Actions или CircleCI за автоматизирани pipelines за изграждане и внедряване
    • Използване на Fastlane за CI/CD работни процеси както за iOS, така и за Android
    • Най-добри практики за управление на версиите, номерата на изграждане и каналите за версии

Седмица 12: Capstone проект

  • Разработка на финален проект
    • Проектиране и разработване на напълно функционално приложение, което включва напредналите функции, научени по време на курса.
    • Внедряване на персонализиран UI/UX, напреднали анимации, управление на състоянието, интеграция на нативни модули и API комуникация в реално време.
    • Оптимизиране на приложението за производителност и внедряването му в App Store и Google Play.

Обобщение и следващи стъпки

Изисквания

  • Солидно разбиране на концепциите за програмиране, особено в Swift, Kotlin и JavaScript
  • Предишен опит в изграждането на основни iOS, Android или React Native приложения
  • Познаване на дизайн модели като MVC или MVVM и опит с основно управление на състоянието

Аудитория

  • Мобилни разработчици
  • Програмисти
 420 Часа

Брой участници


Цена за участник

Отзиви от участници (3)

Предстоящи Курсове

Свързани Kатегории