今日まで参加していたtry! Swift Tokyo中のセッションにて、drawingGroupが出てきた。
iOS 13.0+から使える。バックポートされたかは確認していないが、結構前から実装されていた可能性があるのに知らなかった。知らなかったことはどうでも良いのだが、自分は基本的なAPIしか知らないのでは疑惑が出てきたので手を動かして身につけていく。UIKitを主流に使っていた時代でも網羅的にAPIを使うことはしなかったので一度やっておくと良いだろう。
100個くらいは知らないAPIがあるだろうと思い、雑にカウントしたところ重複はあるにせよ500個程度くらいはAPIがあることが分かったのでひとまず100個知らないAPIを使ってみる。
> grep '^ public var ' /Applications/Xcode-16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/SwiftUI.framework/Modules/SwiftUI.swiftmodule/arm64-apple-ios.swiftinterface | wc -l 310 > grep '^ public func ' /Applications/Xcode-16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/SwiftUI.framework/Modules/SwiftUI.swiftmodule/arm64-apple-ios.swiftinterface | wc -l 234
さっそく使っていく。
| 未使用 | 使用 |
|---|---|
|
|
ドキュメントを見るに、viewが一つのbitmapに合成されるとのこと。装飾系の表示要素を複数当てている場合に描画周りのパフォーマンス改善が見込めそう。 WWDCのセッションでも言及されていた。
100本ノックをやりきれるか微妙だがひとまず続ける。まずは5個。

