План на курса

Въведение

Седмица 1: Преглед на Mobile Development

  • Мобилна екосистема и платформи
    • Преглед на мобилните операционни системи (iOS и Android)
    • Ключови разлики между iOS, Android и междуплатформено развитие
    • Популярни магазини за приложения (Apple App Store, Google Play Store)
    • Въведение в нативната, хибридната и междуплатформената разработка
  • Роден срещу хибрид срещу крос-платформа
    • Предимства и предизвикателства на всеки метод на разработка
    • Преглед на Swift (за iOS), Kotlin (за Android) и React Native (между платформи)
    • Как кодът се превежда в мобилни платформи (JavaСкрипт към собствен код в React Native)
  • Programming Основи
    • Въведение в концепциите за програмиране (променливи, типове данни, функции, контролен поток)
    • Сравнение на Swift, Kotlin и Java синтаксиса на скрипта
    • Писане на прости програми с помощта на Swift, Kotlin и Java скрипт
  • Настройване на среди за разработка
    • Инсталиране на Xcode и Android Studio
    • Настройка React Native CLI и Expo
    • Стартиране на основни приложения "Hello World" на симулатори и емулатори

Седмица 2: Въведение в Swift, Kotlin и JavaСкрипт

  • Swift Programming за iOS
    • Променливи, константи и типове данни в Swift
    • Изявления за контрол на потока ( if , switch , цикли)
    • Функции и параметри в Swift
    • Въведение в интерфейса на Xcode и Swift Playgrounds
  • Kotlin Programming за Android
    • Променливи, типове данни и функции в Kotlin
    • Разбиране на нулевата безопасност на Kotlin.
    • Контролен поток и контурни структури
    • Въведение в Android интерфейса на Studio и Kotlin Playground
  • JavaСкрипт за React Native
    • Променливи, константи и контролен поток в JavaScript
    • Функции на ES6: функции със стрелки, шаблонни литерали и деструктуриране
    • Писане и стартиране на основни Java скриптови програми в React Native с помощта на Expo

Седмица 3: iOS Дизайн на потребителски интерфейс

  • UI Element в iOS
    • Въведение в UIKit и SwiftUI
    • Добавяне и персонализиране на UI елементи като бутони, етикети и текстови полета
    • Използване на Interface Builder за проектиране на потребителски интерфейс
    • Работа с Storyboards и проектиране на многоекранни потребителски интерфейси
  • Автоматично оформление и ограничения
    • Разбиране на системата за автоматично оформление
    • Използване на ограничения за адаптивни оформления в различни размери на екрана
    • Създаване на стекови изгледи и динамично регулиране на UI елементи
  • Swift Основи на потребителския интерфейс
    • Въведение в декларативния UI дизайн в SwiftUI
    • Изграждане на прости UI компоненти с помощта на SwiftUI

Седмица 4: Android Дизайн на потребителския интерфейс

  • XML Оформления в Android
    • Въведение в XML-базиран дизайн на оформление
    • Работа с общи оформления: LinearLayout, RelativeLayout, ConstraintLayout
    • Добавяне и персонализиране на UI елементи: бутони, текстови изгледи, изгледи на изображения
    • Използване на ConstraintLayout за адаптивни и динамични оформления
  • Материален дизайн
    • Интегриране на принципите на Material Design (цветове, икони, типография)
    • Използване на материални компоненти (бутони, плаващи бутони за действие, карти)
    • Внедряване на теми и стил за Android приложения

Седмица 5: React Проектиране на собствен потребителски интерфейс

  • React Нативно оформление на Flexbox
    • Разбиране на Flexbox за отзивчив дизайн на оформление
    • Създаване на оформления, базирани на колони и редове
    • Оформяне на UI компоненти със свойства на Flexbox (justifyContent, alignItems и др.)
  • React Естествени компоненти
    • Работа с основни компоненти като Text , View , TextInput и Button
    • Създаване на интерактивни UI елементи като форми и бутони
    • Използване на компонента ScrollView за динамично съдържание

Седмица 6: Обработка на данни в iOS и Android

  • iOS Обработка на данни
    • Използване на UserDefaults за просто запазване на данните
    • Въведение в основните данни за локално съхранение на сложни данни
    • Извличане на данни от API чрез URLSession
    • Разбор на JSON данни и показването им в потребителския интерфейс
  • Android Обработка на данни
    • Използване на SharedPreferences за съхраняване на малки количества данни
    • Въведение в SQLite и Room Persistence Library за управление на бази данни
    • Извличане на данни от API с помощта на Retrofit
    • Разбор на JSON и обработка на API отговори

Седмица 7: React Родно състояние Management и API

  • Състояние и подпори в React Роден
    • Управление на потока от данни в React Native компоненти
    • Използване на кука useState за управление на състоянието на локалния компонент
    • Предаване на данни между родителски и дъщерни компоненти чрез подпори
  • Извличане на данни в React Native
    • Използване на Fetch API и Axios за правене на HTTP заявки
    • Показване на извлечени данни в списъци (с помощта на FlatList , SectionList )
    • Локално запазване на данни с помощта на AsyncStorage в React Native

Седмица 8: Навигация в iOS и Android

  • iOS Навигация
    • Въведение в контролерите за навигация и управление на множество екрани
    • Използване на стъпки за преход между контролери за изглед
    • Предаване на данни между контролери за изглед
    • Внедряване на TabBar и NavigationBar за структурирана навигация
  • Android Навигация
    • Работа с Activities и Intents за многоекранни приложения
    • Предаване на данни между Activities с помощта на пакети
    • Създаване на чекмедже за навигация и BottomNavigationView
    • Внедряване на фрагменти за гъвкава UI навигация

Седмица 9: Навигация в React Native

  • React Основи на навигацията
    • Инсталиране и настройка React Навигация
    • Използване на Stack Navigator за преходи на екрана
    • Внедряване на Tab Navigator и Drawer Navigator за сложна навигация
    • Предаване на параметри между екраните и управление на състоянието на навигация

Седмица 10: Разширени функции

  • iOS Разширени функции:
    • Основно местоположение и карти
      • Accessизвършване на местоположението на устройството с Core Location
      • Показване на карти с помощта на MapKit
      • Работа с геолокация и проследяване на местоположението на потребителите
    • Камера и медии
      • Accessкамера на устройството и библиотека със снимки
      • Заснемане и показване на изображения с UIImagePickerController
      • Съхраняване и извличане на медийни файлове
  • Android Разширени функции
    • Местоположение и карти
      • Използване на Google Maps API за показване на карти и потребителско местоположение
      • Accessизготвяне на GPS данни и обработка на геолокация
    • Камера и медии
      • Използване на CameraX за заснемане на снимки и управление на разрешенията на камерата
      • Показване на изображения и обработка на медийно съхранение
  • React Вградени разширени функции
    • React Родни карти
      • Интегриране на карти с помощта на react-native-maps
      • Работа с услуги, базирани на местоположение (геолокация, картографиране на маршрути)
    • Достъп до камера и медия
      • Използване на библиотеката React Native Camera за заснемане на снимки
      • Accessустройство за съхранение на мултимедия и обработка на файлове

Седмица 11: Отстраняване на грешки и тестване

  • iOS Отстраняване на грешки и тестване
    • Използване на Xcode дебъгер
      • Задаване на точки на прекъсване и проверка на променливи в Xcode
      • Използване на конзолата за отстраняване на грешки в реално време
      • Често срещани проблеми при отстраняване на грешки и как да ги разрешите
    • Единично тестване в iOS
      • Писане и изпълнение на модулни тестове с помощта на XCTest framework
      • Осмиване на обекти и тестване на компоненти на потребителския интерфейс
  • Android Отстраняване на грешки и тестване
    • Използване на Logcat в Android Studio
      • Регистриране и анализиране на грешки с помощта на Logcat
      • Отстраняване на грешки Android приложения с точки на прекъсване
    • Единично тестване в Android
      • Писане на модулни тестове с помощта на JUnit
      • Тестване на Android UI компоненти с Espresso
  • React Нативно отстраняване на грешки и тестване
    • React Вградени инструменти за отстраняване на грешки
      • Използване на Chrome DevTools и React Native Debugger за отстраняване на грешки в реално време
      • Конзолни регистрационни файлове и проверка на мрежови заявки
    • Единично тестване в React Native
      • Писане на модулни тестове с помощта на Jest и Enzyme
      • Тестване React Нативни компоненти и управление на тестови случаи

Седмица 12: Внедряване на приложение и проект Capstone

  • Внедряване и разпространение
    • iOS Изпращане в App Store
      • Подготовка на вашето приложение за разпространение (икони, сертификати, профили за осигуряване)
      • Използване на App Store Connect за изпращане на приложението за преглед
      • Използване на TestFlight за бета тестване
    • Android Изпращане в Play Store
      • Подготовка на APK и подписване на приложението за разпространение
      • Използване на Google Play Console за изпращане и проследяване на приложения
      • Разбиране на правилата и указанията на Play Store
  • Разработка на проект Capstone
    • Окончателно разработване на проекта
      • Изграждане на напълно функционално приложение по ваш избор
      • Включва разширени функции като API повиквания, навигация, медии и местоположение
      • Представяне и демонстрация на крайното приложение пред връстници и инструктори

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

Изисквания

  • Основно разбиране на концепциите за програмиране
  • Основни познания по JavaСкрипт

Публика

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

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


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

Oтзиви от потребители (5)

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

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