Skip to content

SwiftFMI/iOS_2023_2024

Repository files navigation

Курс по програмиране за iOS със Swift и SwiftUI

Курс, който използва SwiftUI

Репозитори, в което се съхряняват лекциите за курса по iOS със SwiftUI и примерите към тях.

Финални проекти

Разпраделението по отбори, ще бъде обявено след гласуването.

Възможните теми за финалните проекти може да намерите тук Моля, попълнете анкетата, за да можем да направим разпределението по отбори.

Ако има твърде много желаещи да реализират конкретен проект, ще се ограничим до два отбора на тема.

Анкета

Моля, попълнете следната анкета.

Онлайн стая за лекции и упражнения

Моля, използвайте си google.meet акаунтите си, които са асоциирани с ФМИ.

Видео срещата

Теми

Това е списък на лекциите и темите, които ще бъдат разгледани по време на курса.

  1. История на iOS и Swift
    1. За курса,
    2. Представяне на екипа
    3. Как ще се оценява
    4. iOS - история и структура
      1. Swift и Obj-C (C & C++)
      2. Unix
      3. Слоеве CoreOS, Core Services, Media, Cocoa Touch
      4. UIKit & SwiftUI
  2. Xcode, Playground, iPadOS
    1. Структура на базово SwiftUI приложение
    2. Структура на базово UIKit приложение
    3. UIApplication, AppDelegate
    4. .swift, .storyboard
    5. Project, target, scheme, info.plist, capabilities
  3. Swift - from Structs to Closures
    1. Основи на езика. Лекции от другия курс.
    2. Structs & Protocols
    3. Classes & Closures
    4. Extensions & Generics
    5. Property Wrapper
  4. SwiftUI intro
    1. Основни елементи - button, Slider, stepper, spacer, Containers
    2. View Hierarchy
    3. Overlay
    4. View Live Cycle
    5. Graphics
  5. Layout containers
    1. HStack, Lazy
    2. VStack, Lazy
    3. Group
    4. Grid
  6. Design Patterns
    1. MVVM, MVC
    2. Delegate и Observer - теория
    3. Combine, Singleton
  7. Data flow in SwiftUI
    1. @State,
    2. @StateObject,
    3. @EnvironmentObject
    4. @ObservableObject
    5. @ObservedObject
  8. Navigation Controller
    1. Tabbar controller
    2. SplitView controller
    3. Scenes
    4. Navigation Between Screens (Navigation Link)
  9. Animations
    1. TBD
    2. Canvas
  10. Networking
    1. await async
    2. urlsession
    3. SwiftPackageManager + OpenSource (alamofire)
    4. Combine
  11. Persistance
    1. User Defaults
    2. Keychain, Files
    3. Firebase
  12. Maps & Photoso
    1. maps and integration of UIKit items in SwiftUI
    2. Integration of swiftUI in UIKit project
  13. Gestures
    1. TBD
  14. App store, iTunesConnect, Apple Developer program
    1. Application metadata etc
    2. Manual build/upload to testflight
    3. Fastlane

About

iOS Programming with Swift - SwiftUI

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages