Programowanie na platformę iOS, 1
iOS programming, 1
| Grupa / Group |
PL (1, pon) | EN (2, Tu) | EN (1, Tu) | PL (2, śr) |
1 | 2021-03-08 | 2021-03-09 | 2021-03-09 | 2021-03-10 |
2 | 2021-03-15 | 2021-03-16 | 2021-03-16 | 2021-03-17 |
3 | 2021-03-22 | 2021-03-23 | 2021-03-23 | 2021-03-24 |
4 | 2021-03-29 | 2021-03-30 | 2021-03-30 | 2021-03-31 |
| | | | 2021-04-072021-04-14 |
5 | 2021-04-07 | 2021-04-13 | 2021-04-13 | 2021-04-142021-04-21 |
6 | | 2021-04-20 | 2021-04-20 | 2021-04-28 |
7 | | 2021-04-27 | 2021-04-27 | 2021-05-04 |
8 | | 2021-05-04 | 2021-05-04 | 2021-05-12 |
9 | | 2021-05-11 | 2021-05-11 | 2021-05-19 |
10 | | 2021-05-18 | 2021-05-18 | 2021-05-26 |
11 | | 2021-05-25 | 2021-05-25 | 2021-06-02 |
12 | | 2021-06-01 | 2021-06-01 | 2021-06-09 |
13 | | 2021-06-08 | 2021-06-08 | 2021-06-16 |
14 | | 2021-06-15 | 2021-06-15 | |
Projects
- Zajęcia 1 / Class 1 Gra w okręty w terminalu (część 1) (en: Battleship game - terminal version, part 1)
- Topics:
- Discussing the rules of work in the academic year 2020/2021.
- Create "frame" of Board class.
- Discuss let and var keyword as well as optional types with ? and !.
- Discuss function declaration methods, higlight argument label and parameter name.
- Materials
- Zajęcia 2 / Class 2 Gra w okręty w terminalu (część 2) (en: Battleship game - terminal version, part 2)
- Topics:
- Arrays in Swift.
- Enumeration.
- Range operators.
- Implement initializer for Board class.
- Materials
- Zajęcia 3 / Class 3 Gra w okręty w terminalu (część 3) (en: Battleship game - terminal version, part 3)
- Topics:
- Type methods.
- Guards.
- String interpolations.
- Implement printBoard method, 1/2.
- Materials
- Zajęcia 4 / Class 4 Gra w okręty w terminalu (część 4) (en: Battleship game - terminal version, part 4)
- Topics:
- Tuple.
- switch-case.
- Extensions.
- Working with game code.
- Materials
- Zajęcia 5 / Class 5 Gra w okręty w terminalu (część 5) (en: Battleship game - terminal version, part 5)
- Topics:
- Closures.
- Dictionaries.
- Sets.
- Working with game code.
- Materials
- Zajęcia 6 / Class 6 Gra w okręty w terminalu (część 5) (en: Battleship game - terminal version, part 5)
- Topics:
- Properties
- Computed properties
- Lazy stored properties
- Property observers
- Type properties
- Working with game code.
- Materials
- Zajęcia 7 / Class 7 Gra w okręty w terminalu (część 5) (en: Battleship game - terminal version, part 5)
- Topics:
- Structures.
- Inheritance.
- Tasks to complete, part 1.
- Materials
- Zajęcia 8 / Class 8 SwiftUI (część 1: witaj świecie) (en: SwiftUI, part 1: Hello world with lots of explanations)
- Topics:
- Tasks to complete, part 2.
- Short introduction to SwiftUI. Key differences between UIKit and SwiftUI.
- SwiftUI's App Lifecycle
- Hello world
- keypath
- @ObservedObject
- ContentView_Previews
- some to be explained later
- Materials
- SwiftUI's App Lifecycle
- Property Wrappers
- Identifiable
- Zajęcia 9 / Class 9 SwiftUI (część 2) (en: SwiftUI, part 2)
- Topics:
- We add more controls, convert view into custom view (reusable view)
- Materials
- Zajęcia 10 / Class 10 Swift - supplementing the information
- Topics:
- Type checking and type casting
- General idea of protocols (to be continued next time)
- Materials
- Zajęcia 11 / Class 11 SwiftUI (część 3) (en: SwiftUI, part 3)
- Topics:
- We add one more view - Data Details View
- We add navigation
- We learn about @EnvironmentObject
- Materials
- Zajęcia 12 / Class 12 Swift - supplementing the information
- Zajęcia 13 / Class 13 SwiftUI (część 4) (en: SwiftUI, part 4)
- Topics:
- Learn SwiftUI forms. Create DataAddView.
- SwiftUI Custom View Modifiers
- Layer views on top of each other
- Presenting a new view using sheets
- @Environment property
- Working with ImagePickerViewController (interfacing with UIKit)
- Persisting data with UserDefaults
- Materials
- Forms
- SwiftUI Custom View Modifiers
- Layer views on top of each other
- Presenting a new view using sheets
- renderingMode
- @Environment property
- How to use UIImagePickerController in SwiftUI
- Zajęcia 14 / Class 14 SwiftUI (część 5) (en: SwiftUI, part 5)
Materiały - moje
Swift
There is also an
alternative version of this tutorial with codes and examples in Objective-C. If you prefere, you can follow it.
- 1 Swift - podstawy (en. Swift - basics)
- Materials
- Co po tych zajęciach powinno się znać / wiedzieć / umieć (en. After this classes you should know)
- Jak używać stałych i zmiennych (constants and variables) (en. How to use constants and variables)
- Jak używać krotek (tuples) (en. How to use tuples)
- Jak używać zmiennych opcjonalnych (optionals) (en. How to use optionals)
- Jak używać konstrukcji sterujących przebiegiem wykonania programu (control flow) (en. How to use control flow)
- Jak używać typu wyliczeniowego (enumerations) (en. How to use enumerations)
- Posługiwanie się podstawowymi kolekcjami: tablicami, zbiorami, słownikamio (collections: arrays, sets, dictionaries) (en. How to use collections: arrays, sets, dictionaries)
- 2 Swift - funkcje. Swift - klasy (podstawy) (en. Swift - functions. Swift - classes (basics))
- Materials
- Co po tych zajęciach powinno się znać / wiedzieć / umieć (en. After this classes you should know)
- Sposoby zapisania funkcji (en. All methods we can use to express functions)
- Posługiwanie się funkcją jako typem (en. Function as a type)
- Wykorzystanie funkcji zagnieżdżonych (en. Nested functions)
- Czym są i jak korzysta się z domknięć (closures) (en. What are closures, how we can use them)
- Podstawowa składnia struktur i klas (en. Basic classes syntax)
- Własności (properites: computed properties, lazy stored properties, property observers, type properties, setting a property with a closure or function) (en. properites: computed properties, lazy stored properties, property observers, type properties, setting a property with a closure or function)
- Metody, metody modyfikujące (mutating methods) (en. methods, mutating methods)
- Indeksy (subscripts) (en. subscripts)
- Dziedziczenie (inheritance) (en. inheritance)
- 3 Swift - klasy (inicjalizacja, zagnieżdżanie, kontrola dostępu) (en. Swift - classes (initialization, nesting, access control))
- Materials
- Co po tych zajęciach powinno się znać / wiedzieć / umieć
- Podstawy inicjalizacji obiektów (en. basics of object initialization)
- Inicjalizacja z parametrami (en. an initializer with parameters)
- Inicjalizatory automatyczne (en. automatically provided initializers)
- Inicjalizatory dedykowane(?) i użyteczne(?) (en. designated and convenience initializers)
- Inicjalizatory zawodne (en. failable initializers)
- Inicjalizatory wymagane (en. required initializers)
- Deinicjalizatory (en. deinitializers)
- ARC i rodzaje referencji (en. ARC and different reference types)
- Opcjonalne wywoływanie w łańcuchu wywołań (en. optional chaining)
- Rzutowanie typów (en. type casting)
- Typy zagnieżdżone (en. nested types)
- Kontrola dostępu (en. access control)
- 4 Swift - klasy (błędy, protokoły, rozszerzenia, generyczność) (en. Swift - classes (initialization, nesting, access control))
- Materials
- Co po tych zajęciach powinno się znać / wiedzieć / umieć
- Sposoby obsługi błędow (en. error handling)
- Sposby imlementacji i użycia protokołów (en. protocols)
- Czym są i jak użyć rozszerzeń (en. extensions)
- Generyczność w Swift (en. generics)
iOS programming, UIKit version
There is also an
alternative version of this tutorial with codes and examples in Objective-C. If you prefere, you can follow it.
- 1 iOS, first application
- Materials
- After this classes you should know
- What the Model-View-Controller pattern is. Why we use this pattern.
- What are actions and outlets in iOS.
- How to create very basic iOS application.
- How to work with constraints.
- Other resources
- No resources we have after this classes.
- 2 iOS, user interface controls
- Materials
- After this classes you should know
- How to use text fields.
- How to use sliders.
- How to use segmented controls.
- How to use switches.
- How to use image view.
- How to use action sheets and alerts.
- How to use icons.
- Other resources
- No resources we have after this classes.
- 3 iOS, multiview application
- Materials
- After this classes you should know
- Basic method of creating multiview application.
- Other resources
- No resources we have after this classes.
- 4 iOS, basic data storage
- Materials
- After this classes you should know
- How to use property list / JSON files to save and restore application data.
- Other resources
- No resources we have after this classes.
- 5 iOS, table views
- Materials
- After this classes you should know
- What a table view is and how/when we use it?
- How to make custom table view cell?
- Other resources
- No resources we have after this classes.
- 6 iOS, tab bar
- Materials
- After this classes you should know
- Explain what is a tab bar and how we can use it.
- Other resources
- No resources we have after this classes.
- 7 iOS, navigation controllers
- Materials
- After this classes you should know
- Explain what a navigation controllers is and how we can use it.
- Other resources
- No resources we have after this classes.
- 8 iOS, navigation controller and tab bar controller
- Materials
- After this classes you should know
- How to combine navigation controller and tab bar controller
- Other resources
- No resources we have after this classes.
- 9 Icons
- Materials
- After this classes you should know
- How to create a correct set of application / tab icons or images
- Other resources
- No resources we have after this classes.
- 10 Settings
- Materials
- After this classes you should know
- How to create a settings for iOS application
- Other resources
- No resources we have after this classes.
Other materials
Various
Xcode
SwiftUI