UIKit
とは?
UIKit framework とは?
iOS, tvOS のためのインフラを提供する
以下を提供する
画面描画のための window/view アーキテクチャ
マルチタッチおよびその他の種類の入力を扱うためのイベントハンドリングインフラ
ユーザ/システム/アプリ間のやり取りを管理するのに必要な run loop
アニメーション, ドキュメント, 描画および出力, デバイスの現在状況, テキスト管理と表示、検索, アクセシビリティ, ...
注意
アプリケーションの main thread もしくは main dispatch queue からのみ利用する
UIResponder から派生、もしくはユーザインタフェースを操作するクラスにはこの制限が適用される
https://developer.apple.com/documentation/uikit
UIKit によるアプリケーション開発
最低限のリソース
アプリケーションのアイコン。Assets.scassets 内に配置する
Launch screen storyboard。アプリ起動時の描画画面 (なくても作れはする)
メタデータ
Info.plist
UIKit アプリケーションのコード構成 は MVC
Model objects: アプリケーションデータとビジネスロジック
View objects: データの visual 表現
Controller objects: Model/View のブリッジ, 適切な段階でデータを橋渡しする
以下は公式からの引用。
アプリケーションのデータ構造を表現した Model を作成する
ディスクベースのファイルを表現するために UIDocument が提供されている
基本的なデータ型は Swift の標準ライブラリで提供されている
UIKit からデフォルトで提供されているが、必要に応じてカスタムの View を作成する
UIKit には UIView クラスが定義されている
データオブジェクト/UIKit view 間のデータのやり取りは、ViewController および AppDelegate で調整する
UIApplication オブジェクトは、アプリケーションの main event loop を走らせ、そのライフサイクルを管理する
https://docs-assets.developer.apple.com/published/4e7c26b6ad/ff7aa08f-4857-44ce-88d5-7dacbef84509.png
https://developer.apple.com/documentation/uikit/about_app_development_with_uikit
アプリケーションのライフサイクル