IOS: Difference between revisions
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
Modern iOS mobile app development in mid-2022 is done in Swift 5.0 and macOS 15. | |||
=== | == Concepts == | ||
* @Binding: allows one "source of truth" with many references called bindings | |||
* @StateObject: an object owned and mutated by its parent class | |||
* Codable: a designation that an object can be en/decoded | |||
* Identifiable: a designation that an object uses predictable identification (eg via an ID) | |||
=== Development | == Installation == | ||
=== macOS Environment === | |||
An actual macOS development environment is required to build, test and publish an iPhone app. I set one up on the [[Matcha]] melange VM. | |||
=== Development Environment === | |||
Primarily use XCode to do pretty much everything. | Primarily use XCode to do pretty much everything. |
Revision as of 13:35, 4 July 2022
Modern iOS mobile app development in mid-2022 is done in Swift 5.0 and macOS 15.
Concepts
- @Binding: allows one "source of truth" with many references called bindings
- @StateObject: an object owned and mutated by its parent class
- Codable: a designation that an object can be en/decoded
- Identifiable: a designation that an object uses predictable identification (eg via an ID)
Installation
macOS Environment
An actual macOS development environment is required to build, test and publish an iPhone app. I set one up on the Matcha melange VM.
Development Environment
Primarily use XCode to do pretty much everything.
- I created my app using Apple's sample app, which mocks up a simple UI.
- I'm following a simple example to load JSON data from API.