Swiftのfinal・private・Whole Module Optimizationを理解しDynamic Dispatchを減らして、パフォーマンスを向上するiOS最適化Swiftパフォーマンス 追記(2016/10/23) SE-0117: Allow distinguishing between public access and public overridabilityでpublicの意味が少し変わって、openも登場した関係で、本記事中のコードはSwift 3では少し変更必要そうです。 finalがデフォルトになったので指定不要になった オーバーライド可能にするにはopenを明示が必要になった(これまではデフォルトopen状態だった) デフォルトでDynamic Dispatchが発生しにくくなった感じです。 表面上の書き方は少し変わりましたが、本質は変わりません。 少し
![Swiftのfinal・private・Whole Module Optimizationを理解しDynamic Dispatchを減らして、パフォーマンスを向上する - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/23f55ad630589d5dbb9e5a6a0c7c6358548da2d2/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-412672c5f0600ab9a64263b751f1bc81.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk3MiZoPTM3OCZ0eHQ9U3dpZnQlRTMlODElQUVmaW5hbCVFMyU4MyVCQnByaXZhdGUlRTMlODMlQkJXaG9sZSUyME1vZHVsZSUyME9wdGltaXphdGlvbiVFMyU4MiU5MiVFNyU5MCU4NiVFOCVBNyVBMyVFMyU4MSU5N0R5bmFtaWMlMjBEaXNwYXRjaCVFMyU4MiU5MiVFNiVCOCU5QiVFMyU4MiU4OSVFMyU4MSU5NyVFMyU4MSVBNiVFMyU4MCU4MSVFMyU4MyU5MSVFMyU4MyU5NSVFMyU4MiVBOSVFMyU4MyVCQyVFMyU4MyU5RSVFMyU4MyVCMyVFMyU4MiVCOSVFMyU4MiU5MiVFMiU4MCVBNiZ0eHQtYWxpZ249bGVmdCUyQ3RvcCZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTU2JnM9ZmEyMzQwNWU4MjgwYTlhMGUzMjY2ZDEyMmExMzgwYjg%26mark-x%3D142%26mark-y%3D57%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZoPTc2Jnc9NzcwJnR4dD0lNDBtb25vMDkyNiZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTM2JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9OTk2YTlhNjUxOGVhY2I0ODc0YjgyYTVkNTI3YTY5YjI%26blend-x%3D142%26blend-y%3D486%26blend-mode%3Dnormal%26s%3Dd590d9e158819db384582ed4b23df557)