План на курса
Въведение
Седмица 1: Напреднали Swift, Kotlin и Java Концепции за скриптове
-  Swift (iOS)- Разширени функции: затваряния, прихващане на стойности, функции от по-висок ред
- Протоколно-ориентирано програмиране и генерици
- Управление на паметта с ARC (автоматично преброяване на препратки)
 
-  Kotlin (Android)- Функции за разширение и Kotlin Стандартна библиотека
- Съпрограмми за асинхронно програмиране
- Запечатани класове, enums и разширено обработване на грешки
 
-  JavaСкрипт (React собствен)- Разширени функции на ES6+: Деструктуриране, async/await, обещания
- Концепции за функционално програмиране в JavaScript
- Работа с библиотеки на трети страни в React Native
 
Седмица 2: Архитектура на мобилно приложение и Design Patterns
-  MVVM (Model-View-ViewModel) за iOS и Android- Разбиране на MVVM архитектурата за iOS (Swift) и Android (Kotlin)
- Внедряване на ViewModels и наблюдение на данни с LiveData (Android) и Combine (iOS)
- Reactживо програмиране с RxSwift и RxKotlin
 
-  Архитектура, базирана на компоненти в React Native- Разбиране на жизнените цикли на компонентите и куките
- Най-добри практики за управление на състояние и подпори в мащаб
- Използване на React API за контекст за глобално управление на състоянието
 
Седмица 3: Концепции за напреднали Networking.
-  Networking в iOS (Swift)- Работа с URLSession за персонализирани мрежови заявки
- Разширени REST API извиквания и обработка на грешки
- Работа с кодиране и анализиране на JSON
- Най-добри практики за защитена API комуникация (SSL фиксиране, OAuth)
 
-  Networking в Android (Kotlin)- Преоборудване за извършване на API повиквания и обработка на отговори
- Усъвършенствани API за обработка на грешки и механизми за повторен опит
- Използване на Gson или Moshi за анализ на JSON
- Сигурна комуникация чрез HTTPS и OAuth удостоверяване
 
Седмица 4: Networking в React Роден
-  API интеграция с Axios и Fetch- Разширена API интеграция с Axios и Fetch
- Стратегии за обработка на грешки и повторни опити в мрежовите заявки
- Работа с удостоверяване (JWT, OAuth)
 
-  WebSockets и реално време Communication- Въведение в WebSockets в React Native
- Изграждане на функции за чат или уведомяване в реално време с WebSocket връзки
- Управление на постоянни връзки и актуализации на данни
 
Седмица 5: Разширени техники за запазване на данни
-  Основни данни и SQL елементи (iOS)- Разширени връзки на основните данни, извличане и заявки
- Използване на SQLite директно за iOS приложения и управление на връзки към бази данни
- Ефективна обработка на данни и оптимизация
 
-  Стайна устойчивост и SQLite (Android)- Връзки и заявки за база данни за разширени стаи
- Управление на големи набори от данни и оптимизиране на производителността на базата данни
- Използване на ProGuard за защита на структурите на бази данни
 
-  Firebase за облачно съхранение (iOS и Android)- Интеграция с Firebase за управление на бази данни в реално време
- Най-добри практики за синхронизиране на локални и облачни данни
 
Седмица 6: Разширено състояние Management в React Роден
-  Redux за държава Management- Разширени Redux концепции: Middlewares, Thunks и Sagas
- Оптимизиране Redux за производителност и мащабируемост
 
-  Recoil for State Management- Въведение в Recoil: По-гъвкава алтернатива на Redux
- Управление на широкомащабно управление на състоянието между компоненти
- Ефективни актуализации на състоянието и управление на атомно състояние
 
Седмица 7: Напреднали Animation в iOS и Android
-  iOS (Swift)- Ядро Animation: Анимиране на изгледи, слоеве и преходи
- UIKit Dynamics: Създаване на базирани на физика анимации
- Персонализирани преходи и анимации между контролери за изглед
 
-  Android (Kotlin)- MotionLayout за създаване на сложни анимации
- TransitionManager и споделени преходи на елементи
- Анимации на свойствата за мащабиране на изгледа, завъртане и алфа промени
 
Седмица 8: Animations и UI/UX в React Native
-  React Роден Animationс- Използване на Animated API и Reanimated за сложни анимации
- Внедряване на жестове и взаимодействия с помощта на React Native Gesture Handler
- Най-добри практики за ефективни анимации в React Native
 
-  Създаване на потребителски UI компоненти- Изграждане на многократно използвани и адаптивни компоненти в React Native
- Внедряване на адаптивен дизайн с медийни заявки и flexbox
 
Седмица 9: Интегриране на собствени модули и функции на устройството
-  Accessизграждане на собствени функции на устройството- Разширено използване на камерата, геолокация, Bluetooth и сензори
- Създаване на естествени модули в Swift и Kotlin за React собствена интеграция
- Интегриране на ARKit за добавена реалност в iOS
- Интегриране на CameraX и ARCore за добавена реалност в Android
 
-  React Native Bridge и Native модули- Изграждане на персонализирани собствени модули за интегриране със специфична за платформата функционалност
- Създаване на Java и Swift мостове за React собствени приложения
- Най-добри практики за управление на нативния код в междуплатформена среда
 
Седмица 10: Тестване и отстраняване на грешки в разширени приложения
-  Тестване в iOS (Swift)- Писане на модулни тестове с XCTest и UI тестове за iOS
- Използване на Xcode инструменти за профилиране на производителността и изтичане на памет
- Непрекъсната интеграция и работни потоци за тестване с Jenkins и CircleCI
 
-  Тестване в Android (Kotlin)- Разширено тестване на JUnit и Espresso за Android приложения
- Профилиране на ефективността и идентифициране на тесните места с помощта на Android Profiler
- Използване на Firebase Test Lab за автоматизирано тестване на множество устройства
 
-  React Родно тестване- Единично тестване с Jest и компонентно тестване с Enzyme
- Тестване от край до край с помощта на Detox и автоматизирани тестови настройки
- Профилиране на производителността с помощта на React Native Debugger и Flipper
 
Седмица 11: Внедряване на приложения и непрекъсната интеграция
-  App Store (iOS) Внедряване- Подготовка на вашето приложение за изпращане: сертификати на App Store, профили за осигуряване и бета тестване на TestFlight
- Използване на Fastlane за автоматизиране iOS внедряване на приложения
- Управление на App Store Connect и настройка на процеси за преглед на приложения
 
-  Google Play (Android) внедряване- Подготовка на APK и подписването му за изпращане в Google Play
- Автоматизиране на Android внедряване на приложения с Fastlane и Gradle
- Използване на Google Play Console за преглед на приложението и бета тестване
 
-  Настройване на CI/CD тръбопроводи- Конфигуриране на Jenkins, GitHub действия или CircleCI за автоматизирани тръбопроводи за изграждане и внедряване
- Използване на Fastlane както за iOS, така и за Android CI/CD работни процеси
- Най-добри практики за работа с версии, брой компилации и канали за издаване
 
Седмица 12: Проект Capstone
-  Окончателно развитие на проекта- Проектирайте и разработете напълно функционално приложение, което включва разширени функции, научени по време на курса.
- Внедрете персонализиран UI/UX, разширени анимации, управление на състоянието, интегриране на собствен модул и API комуникация в реално време.
- Оптимизирайте приложението за ефективност и го разположете в App Store и Google Play.
 
Обобщение и следващи стъпки
Изисквания
- Солидно разбиране на концепциите за програмиране, особено в Swift, Kotlin и JavaScript
- Предишен опит в изграждането на основни iOS, Android или React собствени приложения
- Познаване на модели на проектиране като MVC или MVVM и опит с основно управление на състоянието
Публика
- Мобилни разработчици
- Програмисти
Отзиви от потребители (5)
Много полезни допълнителни информации
Grzegorz - Comp S.A.
Курс - BLoC Pattern
Машинен превод
Едуард е страхотен фасилитатор
Zibusiso Ncube - Agricatural Research Council
Курс - Ionic 4 and Angular for Developers
Машинен превод
Може би повече упражнения биха били по-добри за учене, но времето беше твърде малко
Gianpiero Arico' - Urmet Spa
Курс - Embedded Linux Systems Architecture
Машинен превод
Miguel имаше обширни познания по темата. Той направи учебния процес лесен за разбиране, а потокът беше балансиран; добавяше нови функции към всеки раздел, когато било необходимо. Отговори на всички въпроси изчерпателно и покри всеки аспект, който беше зададен. Това беше много приятно преживяване.
Paul Coaton - SEMPCheck Services
Курс - Flutter Development Bootcamp with Dart
Машинен превод
Треньорът беше ентусиазиран, добър и харесваше темата.
Isaac Murphy - Royal New Zealand Airforce
Курс - Build Native iOS and Android Apps with Flutter
Машинен превод
