デベロッパツール
-
WWDC24 -
31:31 iOS、macOS、visionOS向けRealityKit APIの紹介
RealityKitの新しいクロスプラットフォームAPIを使用し、iOS、macOS、visionOS向けのイマーシブなアプリを構築する方法を説明します。ホバーエフェクト、光と影、ポータルクロッシングなどの新機能を取り上げ、実際のアプリでの利用例をご紹介します。
-
23:58 Swift Testingについて
Swiftを使用してコードをテストするための新しいパッケージ、Swift Testingが登場しました。このパッケージの新しいパワフルなAPIの構成要素、一般的なテストワークフローでの応用方法、XCTestおよびオープンソースSwiftとの関連性について解説します。
-
22:14 Xcode 16の新機能
Xcode 16における、生産性とパフォーマンスに関する最新の改善ポイントについて解説します。コード補完、診断、Xcodeプレビューなどの機能強化のほか、ビルドにおける変更点の詳細や、デバッグ機能とInstrumentsの改善点についても学ぶことができます。
-
30:24 Swiftの新機能
Swiftの最新情報を紹介するセッションです。過去10年にわたるSwiftの歴史を簡単に振り返って、Swiftコミュニティがワークグループを通じて成長し、パッケージエコシステムを拡大して、プラットフォームのサポートを向上させてきた、その歩みを学びます。データ競合の安全性をデフォルトで実現する新しい言語モードと、制約の多いシステム上でのSwiftの実行を可能にする言語サブセットをご紹介します。また、コピー不可の型、型指定されたthrow、C++との相互運用性の向上など、言語面の変更点についても見ていきます。
-
9:24 USDとMaterialXの新機能
AppleプラットフォームでのUniversal Scene Description(USD)とMaterialXのサポートが向上しました。このセッションで確認しましょう。これらのテクノロジーが、3Dコンテンツの作成と配信の基盤としてどのように機能するか、また、優れた空間体験を作成するためのワークフローをどのように効率化するかについて説明します。RealityKitおよびStormでのUSDとMaterialXのサポート、Appleのシステムに用意されているツールの強化点などもご紹介します。
-
36:27 Xcodeの基本
編集、デバッグ、コミットし、反復するプロセスを加速。アプリ開発におけるイテレーションを高速化する、Xcodeの各種ツールをご紹介します。開発ワークフローの最適化と強化に役立つヒントやコツもお教えします。
-
32:25 RealityKitによる空間描画アプリの構築
空間描画アプリの構築プロセスで、RealityKitを使いこなしましょう。RealityKitとARKitおよびSwiftUIの統合により生まれる、印象的で魅力的な空間体験の構築について、RealityKitにおいてリソースが動作する仕組みや、ユーザーのブラシの線の更新を高速化する低レベルのメッシュおよびテクスチャのAPIなどの機能を使用する方法を解説します。
-
23:20 RealityKitオーディオで空間コンピューティングアプリの質を向上
RealityKitオーディオを使用して、空間コンピューティング体験を向上させましょう。空間オーディオにより、イマーシブな3D体験がどのように実現されるかをご紹介します。環境音やリバーブから、3Dコンテンツに個性を加えるリアルタイムの音声手順ガイドまで、アプリをより魅力的にするRealityKitオーディオAPIについて詳しく説明します。
-
15:28 明示的にビルドされたモジュールについて
明示的にビルドされたモジュールにより、Xcode 16でビルドがどのように変化するかを見ていきます。モジュールを使用してコードをビルドする方法、明示的にビルドされたモジュールによってコンパイル作業の透明性がどのように向上するか、複数のターゲット間でモジュールを共有することでビルドを最適化する方法について説明します。
-
28:48 実行、ブレーク、検証:LLDBでの効果的なデバッグ方法
LLDBを使用してコードベースの検証とデバッグを行う方法を解説します。クラッシュログとバックトレースを最大限に活用する方法や、アクションと複雑な停止条件によってブレークポイントを強化する方法を学ぶことができます。デバッグ体験を向上させる、「p」コマンドとSwift 6の最新機能についても確認します。
-
24:10 RealityKitデバッガの詳細
RealityKitデバッガについて説明します。この新しいツールを使用して、空間アプリのエンティティ階層を検査する方法、不適切な変換をデバッグし、欠落したエンティティを特定する方法、コードのどの部分が原因でシステムに問題が生じているかを突き止める方法を確認しましょう。
-
11:31 Object Captureのエリアモードの紹介
Object Captureのエリアモードは、Object Captureの機能を拡張してエリアのキャプチャと再構成をサポートすることで、iOS上で新しい3Dキャプチャ機能を利用できるようにします。再構成用の新しいmacOSサンプルアプリを使用して、iOSキャプチャの質を最適化する方法を説明します。また、Apple Vision Pro、iPhone、iPad、Macで、Quick Lookを使用して最終結果を確認する方法もご紹介します。独自のイメージ処理パイプラインを作成できる新しいAPIなど、強化された3D再構成の機能も見ていきます。
-
33:03 ヒープメモリの分析
アプリのダイナミックメモリであるヒープの基本を解説します。InstrumentsとXcodeを使用して、ヒープに関する一般的な問題を測定、分析、修正する方法を確認しましょう。一時的な増加、永続的な増加、リークをアプリで診断するための手法とベストプラクティスもご紹介します。
-
41:48 Swift 6へのアプリの移行
既存のサンプルアプリを更新するデモで、Swift 6への移行の実際の流れを確認しましょう。モジュールごとに段階的に移行する方法や、データ競合のリスクのあるコードの特定に役立つコンパイラの機能について解説します。 隔離の境界を明確に定義し、共有されたミュータブルステートのコードへの並列アクセスを排除するための、各種の手法もご紹介します。
-
27:16 Swift Testingの詳細
Swift Testingの組み込みの機能を使用して、優れた(テスト)スイートのセットを記述する方法を習得しましょう。Swift Testingの構成要素をさらに活用してテストを拡張し、幅広いシナリオへの対応、さまざまなスイート全体でのテストの整理、テストの並行実施時の最適化を推進する方法を解説します。
-
29:32 Appleプラットフォームへの高度なゲームのポーティング
Appleプラットフォームでは、全世界のプレイヤーに簡単にリーチできます。Appleシリコン上でWindows実行可能ファイルを評価する方法、サンプルコードを利用してゲームのポーティングを開始する方法、シェーダコードをMetal向けに変換する方法、ゲームをMac、iPhone、iPadに展開する方法を学びましょう。HLSLシェーダを理解する高度なMetalツールを使用し、ポーティングされたシェーダをMetal上で検証、デバッグ、プロファイルする方法もご紹介します。
-
27:36 Swiftツアー:Swiftの機能とデザインのご紹介
Swiftプログラム言語の基本的な機能と設計哲学について解説します。データのモデリング、エラー処理、プロトコルの使用、並行コードの記述などを行う方法を説明するとともに、ライブラリ、HTTPサーバ、コマンドラインクライアントを含むSwiftパッケージを作成する方法も取り上げます。Swift初心者の方にも、Swift草創期からのユーザーの方にも、Swiftプログラム言語を最大限に活用するうえで役立つセッションです。
-
34:36 Reality Composer Proにおけるインタラクティブな3Dコンテンツの作成
3Dコンテンツに生命を吹き込む、Reality Composer ProのTimelineビューについて解説します。インバースキネマティクス、ブレンドシェイプ、スケルトンポーズを使用して、キャラクターやオブジェクトが互いにやり取りしたり、それらを取り巻く世界と関わったりするアニメーションストーリーを作成する方法をご紹介します。組み込みのカスタムアクションの使用方法、アクションシーケンスの作成方法、トリガーの適用方法、自然な動きの実装方法についても説明します。
-
21:10 Xcode Cloudワークフローの拡張
Xcode Cloudをそれぞれの開発ニーズに適応させる方法を確認しましょう。開始条件、カスタムエイリアス、カスタムスクリプト、Webhook、App Store Connect APIを使用してテストと配信を自動化し、ワークフローを効率化する方法をご紹介します。
-
-
Tech Talks -
8:04 プロジェクトのXcode Cloudへの接続
ソースコード管理ツールを使用してXcode Cloudで継続的インテグレーションと配信を行うメリットについて解説します。GitHub Enterpriseなど、自己ホスト型のソースコントロール管理プロバイダを使用してXcode Cloudを設定する方法や、よくある問題のトラブルシューティングを行う方法について説明し、プロジェクトのメンテナンスを行うための重要なヒントもご紹介します。
-
11:56 App Store Connect APIを利用したGame Centerの管理
Web上のApp Store Connectを介さずApp Store Connect APIを使用してGame Centerの設定を自動化する方法を紹介します。APIを通じて達成項目やLeaderboardを作成し、グループを使用して関連するゲーム間でそれらを共有する方法を確認しましょう。また、マルチプレイヤーゲームでマッチメイキングを有効化して設定する方法についても説明します。
-
6:44 Metal Performance HUDについて
グラフィックス性能をリアルタイムで分析するための新たなヘッドアップディスプレイパネルについて紹介します。Metal Performance HUDにはグラフィックスの重要な統計値が表示されるため、従来判断が難しかったパフォーマンスの問題をモニタリング、記録、特定することができます。
-
19:43 カスタムプロダクトページの活用
App Storeのプロダクトページの追加バージョンを作成して、Appの様々な機能やコンテンツを紹介する方法を説明します。Appの一部の特徴に焦点を当てたページや、特定のユーザーを対象にしたページを作成して、App Store Connectで設定する方法を確認し、成功のための戦略を説明します。
-
28:10 プロダクトページの最適化の活用
App Storeのプロダクトページを最適化することで、より効果的で関連性の高いものにすることができます。最適化機能の詳細を説明し、Appアイコン、スクリーンショット、Appプレビューの様々なバリエーションをテストする方法など、App Store Connectでの設定プロセスを説明します。また、プロダクトページの最適化を始める上で役立つ、テストの戦略についても紹介します。
-
17:01 カスタムオファーコードの使い方
既存のオファーコードキャンペーンを、カスタマイズした繰り返し使えるコードによって補完することで、サブスクリプション登録者の獲得、維持をさらに柔軟にできます。本ビデオでは、オファーコードの最新の改善点、エンジニアリングガイダンス、ベストプラクティス、そしてサブスクリプションのための新しいコードの作成方法を紹介します。
-
19:32 Optimize subscriptions for success: acquisition
Learn how you can acquire subscribers and grow your business using App Store features. We'll explore subscriber acquisition strategies, share implementation best practices, and show you how to integrate these processes into your app for success.
-
15:48 Create MLの物体検出モデルの改善
Create MLで物体検出のカスタムCore MLモデルをトレーニングする際、Appに画像を理解させることができます。 転移学習による、少ない学習データでより小さなモデルを構築する方法を理解しましょう。更にCreate MLの進化したパラメータによって、インプットする画像のトレーニングイテレーション、バッチサイズ、グリッドの寸法をコントロールでき、モデルの精度に関して十分な管理が可能になります。 物体検出の入門編については、WWDC19の"Training Object Detection Models in Create ML"をご覧になってください。
-
40:38 StoreKit 2とApp StoreサーバAPIを使ったカスタマーサポート
StoreKit 2、App StoreサーバAPI、App Storeサーバ通知を使って、優れたApp内課金の体験を提供し、カスタマーサポートを提供し返金リクエストに対応する方法について確認します。実装のアプローチや、ベストプラクティス、顧客管理、返金の管理についても紹介します。
-
23:31 A15 BionicによるMetalの最新機能
MetalとA15 Bionicを使用してAppやゲームを進化させる方法を紹介し、Apple GPU Family 8の最新のMetal機能を活用できるようサポートします。ロッシー圧縮を使用してメモリを節約する方法、スパースデプステクスチャとステンシルテクスチャを使用したシャドウマッピングの技法、SIMDのシャッフル命令とフィル命令を使用して画像をより速く処理する方法を確認しましょう。
-
2:34 Appleシリコン搭載のMacでできることは?
デベロッパがAppleシリコン搭載のMac用にAppを更新する方法、Apple M1チップの高度な機能を利用する方法について確認します。
-
28:57 A14 BionicのMetal性能の向上について
A14 Bionicにおいて、Metalは洗練されたレンダリングやパワフルな演算処理をどのような方法で可能にしているのでしょうか? このビデオでは、Apple GPU Family 7のフィーチャーに、Metalがもたらしている能力について説明しています。新しいTexture Addressing モード、高速化したSIMDノイズ低減とMatrix Multiplication処理、そして重心座標とプリミティブIDを用いたVisibility Bufferの実装に関して深掘りする内容です。
-
11:22 コミットフェーズでの滞りを見つけ修正する
レンダリングループのコミットフェーズをトラブルシューティングして、App内でスムーズなアニメーションをレンダリングする方法について確認します。このフェーズの仕組みを深く掘り下げ、滞りの原因となるものを明らかにし、それらを排除し、完全に回避するためのInstrumentsの使用方法についても確認します。
-
11:54 UIアニメーションの滞りおよびレンダーループに対する検討
Appにおけるスクローリングとアニメーションの滞りを特定し、UIのパフォーマンスを向上させる方法を探ります。 どのようにレンダーループで滞りが発生するか、滞りの時間比を測定する方法、Appを使用する人に最も影響を与える問題を修正する方法を説明します。
-
19:24 レンダリングフェーズでの滞りを紐解き排除する
Appに複雑なビュー階層を実装すると、アニメーションの滞りが発生する可能性があります。レンダリングフェーズでどのようにビューがピクセルに変換させるかを紐解き、レンダリングループのこのパートにおける問題をInstrumentsで解明する方法について確認します。Appの使用時に優れたエクスペリエンスを提供するために、どのようにオフスクリーンパスを排除するか、またXcodeにおける最適化の機会を活用するかについても確認します。
-
5:53 Webインスペクタの解説
Webインスペクタには、Webコンテンツの検査、デバッグ、そして配信に至るまで、さまざまな機能が搭載されています。主要なレイアウト、タブ、ボタンを含めた最新機能に加え、Webインスペクタを強力なWeb開発ツールにする各種機能について説明します。
-
4:01 tvOS AppにおけるWebインスペクターの使用
Webインスペクタを使用すると、tvOSを含め、複数のAppleプラットフォームでのWebコンテンツをデバッグできます。このビデオでは、Webインスペクタの強力なデバッグ機能を紹介し、tvOS AppのTVMLコンテンツのデバッグを加速させるべくデザインされた機能について解説します。
-
-
WWDC23 -
18:24 パラメータパックを使ったAPIの一般化
Swiftのパラメータパックは、一般的なジェネリックパターンを簡素化することを可能にしながら、ジェネリックコードでできることを広げる強力なツールです。ジェネリックコードの型と引数の数を抽象化し、オーバーロードを避けるために一般的なジェネリックパターンをシンプルにする方法を紹介します。 このセッションを最大限に活用できるよう、WWDC22の 「Embrace Swift generics」をあらかじめ視聴されることをお勧めします。
-
15:55 アプリのアクセシビリティ監査の実施
アプリのアクセシビリティを、ビルド毎にテストする方法を紹介します。XCTestを使ってアクセシビリティの自動監査を行う方法や、その結果の解釈方法について説明します。UIテストのカバー範囲を改善するのに役立つ、アクセシビリティAPIの強化についても共有します。
-
26:45 Macへのゲーム展開 Part 3:Metalでのレンダリング
ゲームをMacで移植するための3部シリーズの締めくくりとして、レンダリングコードでMetalをサポートする方法をご紹介します。Game Porting ToolKit で既存のWindowsバイナリを評価し、HLSLシェーダをMetalに移行したら、ハイエンドの最新ゲームが必要とする機能を最適に実装する方法を学びましょう。GPUリソースバインディング、レジデンシー、同期の管理方法を紹介します。GPUコマンドを最適化し、MetalFX Upscalingを使用してリッチなビジュアルをレンダリングする方法などをご紹介します。 このセッションを最大限に活用するには、まず...
-
25:39 UIKitにおける空間コンピューティングの概要
UIKitアプリをvisionOSで展開する方法を学びましょう。新しい実行先でビルドする方法、空間コンピューティング向けAPIの紹介とそのベストプラクティス、visionOSのUIKitでSwiftUIを使用したコンテンツを3次元に対応させる方法を解説します。
-
31:34 String Catalogsの紹介
Xcode 15では、すべての文字列を一箇所で管理することでアプリを簡単にローカライズすることができます。Strings Catalogsを使用したプロジェクト内の文字列の抽出、編集、エクスポート、構築方法を紹介します。また、移行ファイルを選択することで自分のペースで、既存プロジェクトに String Catalogs を採用する方法も紹介します。
-
12:03 iPadおよびiPhoneアプリの共有スペース向けの機能強化
Shared SpaceのためにiPadとiPhoneアプリを充実させましょう!visionOSでの体験を向上させる方法をお見せし、Designed for iPadアプリにおけるインタラクション、視覚処置とメディアを探求します。
-
18:57 Macへのゲーム展開 Part 2:シェーダーをコンパイルする
HLSLシェーダをMetalに変換するプロセスを合理化するMetal Shader Converter について、ゲームをMacに移植するための3部構成のシリーズの2つ目としてご紹介します。すべてのシェーダステージをサポートし、Apple GPUの高度な機能を活用できるDXILの高速なエンドツーエンドのShader Pipelineを構築する方法をご覧ください。また、オフラインコンパイラを使ってGPUバイナリを生成することで、アプリの起動時間とスタッタを短縮する方法もご紹介します。 このセッションを最大限に活用するには、まず「Bring your game to Mac, Part 1:...
-
13:01 Xcode のテストレポートで素早く失敗を修正
Xcode と Xcode Cloud のテストレポートで、テストの失敗をより速く見つけ、デバッグし、修正する方法を学びましょう。調査を開始する適切な場所を見つけるために、Xcode がどのように失敗パターンを識別するかを学びます。また、UI オートメーションエクスプローラとビデオ録画を使用して、UI テストの失敗に至ったイベントを理解する方法を紹介します。
-
16:26 XcodeとXcode Cloudでの配信のシンプル化
ワンクリックでアプリをTestFlightまたはApp Storeに提出できるXcode の合理化された配信を使用して、アプリを共有する方法を発見してください。また、Xcode Cloud を使用して、TestFlight にテスター用のメモを自動的に含めることで配信プロセスを簡素化し、ポストアクションを使用して Macアプリを自動的に公証する方法も紹介します。
-
24:26 Xcode Playgroundsでプロトタイプを作成
Xcode Playgroundsで新しいコードのプロトタイプを作成することにより、機能開発を加速し、変更を検証するためにプロジェクトをやり直す必要がなくなります。プロジェクトやパッケージでプレイグラウンドを使うことで、様々なシナリオでコードを試したり、複雑な構造やユーザインターフェイス要素を含む返された値の詳細を見たりすることができます。このため、プロジェクトに組み込む前に、機能改善のイテレーションを行えます。
-
16:57 MetalでGPUレンダリングを最適化
最新のMetal機能とベストプラクティスを使用してGPUレンダリングを最適化する方法を学びましょう。応答性の高いオーサリングワークフローと最速のレンダリング速度を維持するための関数特殊化と並列シェーダーコンパイルの使用方法を紹介し、最適なパフォーマンスを実現するためのコンピュートシェーダーのチューニングする方法を理解しましょう
-
28:36 Xcode Cloudでの実用的ワークフロー作成
あらゆる形態や規模のチームでの開発プロセスに役立つ、Xcode Cloudの利用方法を紹介します。 シンプルで強力なワークフローの作成に役立つ機能やさまざまな方法を共有します。また、他のツールと統合するためにXcode Cloudを拡張する方法も紹介します。
-
42:52 Instrumentsによるハング分析
ユーザインターフェースの要素は、リアルタイムの応答など、現実世界でのインタラクションを模倣することがよくあります。ユーザーのインタラクションに顕著なハングがあるアプリは、その期待に添えず、フラストレーションを生み出します。Instrumentsを使って、すべてのAppleプラットフォームでアプリのハングを分析、理解、改善する方法を紹介します。Instrumentsのトレースドキュメントを効率的に操作し、トレースデータを解釈し、さらにデータプロファイリングを記録して、特定のハングをより深く理解する方法を紹介します。 Instrumentsの使い方に不慣れな場合は、まず「Getting...
-
24:22 構造化並行処理の基本を超えて
タスクツリーの重要性について確認し、構造化並行処理がアプリでの自動タスクキャンセル、タスク優先度のプロパゲート、有用なタスクローカル値パターンの管理にどのように役立つのか学びましょう。便利なパターンや最新のタスクグループAPIを使用してアプリ内のリソースを管理する方法を紹介します。タスクツリーやタスクローカル値のパワーを活用して分散システムに対するインサイトを共有します。視聴される前に、WWDC21の「Swift Concurrency: Behind the scenes」と「Explore structured concurrency in Swift」で「Explore...
-
21:56 Swift OpenAPI Generatorの紹介
iOSアプリを拡張する場合でも、Swiftでサーバを書いている場合でも、Swift OpenAPI GeneratorがHTTPサーバAPIの扱いにどのように役立つかを紹介します。このパッケージプラグインを利用してOpenAPIドキュメントからコードを生成することでワークフローを合理化し、コードベースを簡素化する方法を説明します。
-
21:21 Safariのデベロッパ機能の再発見
WebデベロッパとデザイナのためのSafariの豊富なツール群を探る準備をしましょう。Webコンテンツを検査する方法、Responsive Design ModeとWebDriverについて、シミュレータとデバイスを使い始める方法をご紹介します。また、Vision Proとのペアリング、アプリケーションでコンテンツを検査可能にする方法、Responsive Design ModeでOpen with Simulatorを使用してあらゆるデバイスでWebサイトをテストする方法も紹介します。
-
39:43 Swiftマクロの拡張
Swift マクロがどのようにコードベースの冗長な部分を削減し、複雑な機能をより簡単に取り入れるのに役立つのかを考えましょう。マクロがコードを分析し、正しい使用方法に導くための豊富なコンパイラエラーを出力し、新しいコードを生成して自動的にプロジェクトに組み込む方法を学びます。また、マクロの役割、コンパイラプラグイン、構文木などの重要な概念も解説します。
-
26:15 統合可能なライブラリの説明
統合可能なライブラリが静的ライブラリと動的ライブラリの優れた部分をどのように組み合わせ、アプリの生産性と実行時のパフォーマンスを向上させるかを説明します。最小のアプリをリリースしながら、より速い開発を可能にする方法を学んでください。またXcode 15で統合可能なライブラリを採用する方法を紹介し、あなたのコードで作業するためのベストプラクティスを紹介します。
-
16:19 Safariにおける空間コンピューティングについて
visionOS用の新しいWebについて確認し、まったく新しい方法でWebコンテンツを体験する方法を紹介します。このプラットフォームの基盤となるユニークな入力モデルと、空間コンピューティング用にWebサイトを最適化する方法を確認しましょう。さらに、新しく構築されつつある標準がWebでの3D体験の形成にどのように役立つかについても紹介します。
-
20:57 RealityKit Traceについて
RealityKit Traceを使用して空間コンピューティングアプリのパフォーマンスを向上させる方法を確認しましょう。このプラットフォームのパフォーマンスプロファイリングに関するガイダンスと、RealityKit Traceテンプレートを使ってアプリのレンダリングを最適化する方法を学びます。また、アプリ内のさまざまなタイプのコンテンツをプロファイリングして、パフォーマンスの問題を特定するためのガイダンスも紹介します。
-
43:07 Swiftの新機能
Swiftの新機能を確認しましょう。Parameter packやマクロなどの機能でさらに拡張可能性が高まり表現豊かになったAPIについて学びましょう。また相互運用性の改善点や、Foundationからサーバでの大規模配信プログラムにいたる各所で改善された、Swiftのパフォーマンスや安全面での利点について解説します。
-
17:45 Swift と C++ の同時利用
C++とObjective-C++のプロジェクトでSwiftを使用して、コードをより安全に、より速く、より簡単に開発する方法を学びます。C++とSwiftのAPIを使用して、あなたのアプリにSwiftを段階的に組み込む方法を紹介します。
-
33:53 Swift-DocCで充実したドキュメントを作成
アプリやフレームワークのための豊富で詳細なドキュメントを作成するために、Swift-DocCの最新の機能を活用する方法を学びます。Xcode 15ドキュメンテーションプレビューエディタを使用して、既存のプロジェクトのドキュメントを効率的に反復する方法を紹介し、グリッドベースのレイアウト、ビデオサポート、カスタムテーマのような拡張されたオーサリング機能を探ります。 このセッションを最大限に活用するためには、Swift-DocCドキュメンテーションの基本的な知識を持っている必要があります。
-
29:16 空間コンピューティングのためのアプリのパワーと性能の最適化
性能と効率を最適化しvisionOSのためのパワフルなアプリやゲームをどう作れるか学びます。このプラットフォームのユニークなパワー特徴をカバーし、性能プランの構築を探求、そしてアプリをテストし最適化するためのツールや手段を説明します。
-
15:06 Macへのゲーム展開 Part 1:ゲームプランの作成
最新のハイエンドゲームをMetalとAppleシリコンのパワフルな機能でMacとiPadに展開しましょう。ゲームポーティングツールキットがどのように既存のWindowsゲームのグラフィック機能互換性やパフォーマンスの評価に役立つか学びます。オーディオ、インプット、そして高度なディスプレイ機能に対応するためのベストプラクティスや技術的リソースについて紹介します。このセッションの視聴後には、「Macへのゲーム展開 Part 2:シェーダのコンパイル」でHLSLシェーダをMetalにポーティングする方法も確認しましょう。
-
13:02 App Store Connectの新機能
App Storeでのアプリの管理と提出のための一連のツールを提供するApp Store Connectの最新アップデートを確認しましょう。最新機能を使用して、アプリのテスト、価格設定、プロモーション、管理の自動化をより簡単に行う方法を紹介します。また、TestFlightやApp Store Connect APIなどのツールの機能強化についても説明します。
-
13:42 構造化ロギングによるデバッグ
Xcode 15のデバッグココンソールを使い、どのようにロギングを通して、アプリの調査経験を向上させることができるかを学びます。高度なフィルタリングと改善された視覚化を使用して、簡単かつ効率的にログを辿る方法を探ります。また、デバッグ中にコード内の式を評価するためにdwim-print コマンドを使用する方法を紹介します。
-
27:02 Xcode PreviewsによるプログラマティックなUIの構築
SwiftUI、UIKit、または AppKit で書かれたUIコードを素早く反復するために、Xcode 15で#Previewマクロを使用する方法を学びます。キャンバス内でビューと対話するためのユニークなワークフローを考えます。同時にUIの複数のバリエーションを表示する方法を見つけ、エントリ間の遷移をテストするためにウィジェットのタイムラインを数秒で移動する方法を説明します。また、ライブラリにプレビューを追加し、サンプル アセットを提供し、物理的なデバイスでビューをプレビューして、その機能と既存のデータを活用する方法も紹介します。
-
22:32 Xcode 15の新機能
Xcode 15における最新の生産性とパフォーマンスの向上について紹介します。コード補完やXcode Previewの改善の詳細や、テストナビゲータとテストレポート、そして合理化された配信プロセスについて学びましょう。また改善されたナビゲーション、ソース管理およびデバッグにも焦点を当てます。
-
14:17 Shared SpaceにおけるiPadとiPhoneアプリの実行
既存のiPadやiPhoneのアプリはVision Proでも実行できます。iPadOSやiOSがこのプラットフォームでどの様に動作するのか、Desinged for iPadについて学びましょう。そして、みなさんのアプリをvisionOSで強化するのに利用可能なパスを見ていきましょう。
-
33:58 Swiftマクロの書き方
Swiftマクロを使用して、コードをより表現力豊かで読みやすくする方法を発見しましょう。マクロがどのように繰り返しのコードの記述を避けるのに役立つかを探求し、アプリ内での使用方法を学びましょう。マクロの構築要素を共有し、テスト方法を示し、マクロからのコンパイルエラーを生成する方法を説明します。
-
28:15 Webインスペクタの新機能
Webインスペクタは、macOS、iOS、iPadOS上のWebページやWeb機能拡張、WKWebViewsをデバッグおよび検査するための強力なツールセットを提供します。改善されたタイポグラフィ検査、可変フォントの編集ツール、ユーザー設定をエミュレートするコントロール、DOMノードツリーの要素バッジ、シンボリックブレークポイントなど、最新のアップデートを紹介します。
-
-
WWDC22 -
20:26 Swift Playgrounds用の魅力的なコンテンツを作成する
Swift Playgrounds用に作成されたガイド付きのインストラクションコンテンツを作成する方法について解説します。完成したサンプルコードプロジェクトに対し、ガイドを追加する方法についても解説しますので、是非ご覧ください。研修センターにタスクを追加して、関連コードやオプションの実験タスクがわかるようにし、学習者が自分のコードでプロジェクトを拡張できるようにする方法を紹介します。
-
17:53 Swift-DocCの最新情報
Swift-DocCの最新情報はすばらしいものとなっています。独自のプロジェクトのドキュメントに書き込んだり共有したりする方法を紹介しますので、是非ご覧ください。さらに、Swift-DocCナビゲーションの改善点をはじめ、AppターゲットやObjective-Cコードのドキュメントをコンパイルする方法についても解説します。また、GitHub Pagesなどのホスティングサービスにコンテンツを直接公開する方法も紹介します。
-
11:09 Swift-DocCコンテンツを見つけやすくする
WebのSwift-DocCにおけるナビゲーションエクスペリエンスについて解説します。さらに、コンテンツを整理したり最適化したりして、ご利用のフレームワークやAppに関するドキュメントを開発者に提供できるようにする方法を紹介します。また、ドキュメントを閲覧しやすくする高度なテクニックも紹介します。
-
31:09 高速リンク:ビルドと起動時間の改善
Appでのビルドやランタイムのリンクパフォーマンスを向上させる方法をご確認ください。Appのリンクパフォーマンスを向上させるリンキング、オプション、最新情報について、舞台裏をご紹介します。
-
21:40 Xcode Cloud用の高速で信頼性の高いテストを作成する
Appleの継続的インテグレーションおよび継続的デリバリサービスであるXcode Cloud向けに、効果的なテスト計画を作成する方法をご覧ください。ご利用のコードが正常に機能することを継続的に検証する上で、テストの実施がどれほど重要になるのか解説します。さらに、Xcode Cloud向けに高速で信頼性が高く、効率的なテストを作成したり、無駄な失敗を回避したり、コードの変更を迅速に検証したりする方法も紹介します。
-
15:24 チーム用のXcode Cloudについて詳しく見る
あらゆる規模の開発チームによるAppleの継続的インテグレーションや継続的デリバリ(CI/CD)サービスを利用して、高品質のAppを提供できるようにする方法をご覧ください。Xcode Cloudをチームの有する既存のApp開発プロセスに統合し、CI/CDプラクティスでXcode Cloudを効率的に使用する方法を紹介します。また、App Store Connect APIを使用して、Xcode Cloudと課題追跡システムを統合する方法をはじめ、コード依存管理やベストプラクティスも紹介します。 このセッションを最大限に活用するには、WWDC21の「高度なXcode...
-
20:04 LLDBによるSwiftのデバッギング
複雑なSwiftプロジェクトを設定してデバッグを行う方法を紹介します。LLDBの内部とデバッグ情報について詳しく解説します。また、ビルドサーバに構築されたコードやカスタムビルドシステムのコードのデバッグなど、複雑なシナリオでのベストプラクティスも紹介します。
-
13:33 Xcode Cloudを最大限に活用する
Appleの継続的インテグレーションおよび継続的デリバリ(CI/CD)サービスであるXcode Cloudを、最大限に活用する方法をご覧ください。Xcode Cloud の概要と、XcodeやApp Store Connectとの接続方法について解説します。また、App Store ConnectのXcode Cloud使用状況ダッシュボードについて解説し、このツールを使用して、複数のチームプロジェクトでのビルドやリリースプロセスを最適化する方法も紹介します。
-
17:13 Xcodeとオンデバイスでのハングの検出と追跡
Appの応答性を高め、ハングをなくして、さらに優れたエクスペリエンスを実現する方法をご覧ください。Performance Toolsチームより、ハングを追跡する方法や、ハングの発生を未然に防ぐ方法について解説します。iOSにおける最新の検出メカニズムを解説するので、リリース前のテスト中に発生したハングも追跡できるようになります。さらに、Xcode Organizerなどを使用するリリースビルドの問題を特定する方法も紹介します。
-
25:15 Xcodeビルドでの並列化に関する解説
Xcodeのビルドシステムより、ご利用のビルドから最大の並列処理が抽出される仕組みを解説します。さらに、ビルド効率が向上するプロジェクトの構築方法、Xcodeにおけるターゲットのビルドフェーズ間の関係を解消するプロセス、Swiftでコンパイルする際に利用可能なハードウェアリソースを最大限に活用する方法について解説します。また、ビルドの効率性やパフォーマンスを監視する際に強力なツールとなるBuild Timelineも紹介します。
-
15:27 Swift Packageプラグインの紹介
Swift Packageプラグインを使用して、SwiftパッケージやXcodeプロジェクトでアクションを実行する方法をご覧ください。このプラグインが機能する仕組みをはじめ、これを使用してソースコードを生成したり開発ワークフローを自動化したりする方法について解説します。
-
24:02 Swift Packageプラグインを作成する
開発ワークフローをカスタマイズします。Swiftで独自のパッケージプラグインを作成する方法をご覧ください。PackagePlugin APIでソースコードを生成したりリリースタスクを自動化したりして、Xcodeの機能を拡張する方法をはじめ、優れたプラグインを作成するベストプラクティスを紹介します。
-
17:35 サーバサイド開発でのXcodeの使用
SwiftサーバAppを、既存のXcodeプロジェクトと一緒に同じワークスペース内で作成、ビルド、デプロイする方法をご確認ください。独自のローカルAppを作成したり、Xcodeを使用するエンドポイントをテストしたりする方法をはじめ、サーバAppとクライアントApp間でコードを構造化したり共有したりして、開発プロセスを容易にする方法について解説します。
-
16:03 XcodeでマルチプラットフォームAppを開発する
Xcode 14を使用して、複数のAppleプラットフォーム用のAppをビルドする方法をご覧ください。Appターゲットを合理化する方法、共通のコードベースを維持する方法、デフォルトの設定を共有する方法を紹介します。また、設定やコードの条件設定により、各プラットフォームに合わせてAppをカスタマイズする方法についても解説します。
-
27:06 コンセプトでC++テンプレートを簡素化する
C++20機能が、C++コードを次のレベルに引き上げる仕組みをご覧ください。コンセプトを紹介し、そのコンセプトで一般的なC++コードのエラーをすばやく検出する方法について解説します。また、constexpr機能に関する最新の拡張機能を紹介し、これを活用した上で、コンパイル時にコードを評価してAppのパフォーマンスを向上させる方法についても解説します。
-
21:01 Xcodeの最新情報
Xcode 14における最新の生産性とパフォーマンス向上をご覧ください。設計が一新されたSwiftUIキャンバスエクスペリエンスを紹介し、コード補完とナビゲーションの強化、開発プロセス全体で行われたパフォーマンス向上について解説します。また、Xcodeを終了することなく、TestFlightビルドに関するフィードバックを読み込み、対応する方法についても解説します。
-
14:28 Appサイズとランタイムパフォーマンスの改善
SwiftやObjective-Cのランタイムを最適化して、Appを縮小化したり、高速化したり、短時間で起動したりできるようにする方法を紹介します。Xcode 14でのAppのビルドや、デプロイメントターゲットの更新によって、効率的なプロトコルチェックや、メッセージ送信コールの縮小、ARCの最適化を実現する方法をご確認ください。
-
15:48 Swift Playgroundsで最初のAppを構築する
Swift Playgroundsを使用して、プロトタイプの作成やAppの構築を簡単に行う方法をご覧ください。空のプロジェクトからAppを作成したり、SwiftUIでインターフェイスを構築したり、Swift Package Managerを使用してオープンソースパッケージから機能を追加したりする方法を紹介します。また、プレビューやコンソールを使用して問題をデバッグする方法や、AppをApp Store Connectに送信してTestFlight経由で配信を行う方法も紹介します。
-
18:57 電力の制限:バッテリー消費の改善
電力使用量を制限しながら、ユーザがAppをさらに活用できるようにする方法をご確認ください。ご自身のコードに4つの重要な変更を加えて、Appからのバッテリー消費を抑える方法について解説します。さらに、ご利用のAppにダークモードを追加してOLEDディスプレイの利点が得られるようにしたり、セカンダリアニメーションからのフレームレートを監査したり、バックグラウンドデータ処理を制限したり、長時間実行タスクを延期したりする方法を紹介します。
-
-
WWDC21 -
13:51 DocCドキュメントのホストと自動化
SwiftパッケージとフレームワークのDocCドキュメントをオンラインで簡単にホストする方法を紹介します。生成したDocCアーカイブをホストするWebサーバ設定について説明します。ドキュメント生成を自動化し、Webコンテンツを同期して最新の状態に保つための xcodebuild ツールの使用方法についても確認します。
-
22:51 XcodeにおけるDocCドキュメントについて
Swiftパッケージやフレームワークに関するドキュメントを構築・共有するために、DocCをどのように利用できるかについて確認します。自作のコードや依存しているサードパーティのコードからドキュメントの生成を開始し、Markdownを使用して記述およびフォーマットする方法を紹介します。また、公開を目的としたDocCアーカイブ生成のためのエクスポートのプロセスについても解説します。
-
21:48 高度なXcode Cloudワークフローのカスタマイズ
Xcode Cloudは、Apple Developerツールおよびサービス、すべての主要なソースコントロール管理サービス、さらにはSlackのようなソーシャルコラボレーションツールと統合されています。開発プロセスが追加のツールや外部サービスに依存している場合であっても、ワークフローやビルドの動作を微調整することができます。 環境変数を使用してビルドに情報を渡したり、カスタムビルドスクリプトを使用してアクション内で追加のコマンドを実行したりする方法を確認します。また、自分やチームが作業を共有するためのリポジトリを追加する方法についても説明します。また、Webフックを使用してXcode...
-
16:32 Xcode Cloudについて
Xcode Cloudは、あらゆるAppleプラットフォームに対応した、Appとフレームワーク構築のためのAppleが提供するCI/CD(continuous integration and continuous delivery: 継続的インテグレーション/継続的デリバリー)サービスです。Xcode Cloudがどのようにして、チームの生産性と製品品質の両方を向上させることができるのかについてお伝えします。最初のビルドを開始して、ビルドレポートを使用して問題を修正して、チームと共同作業する方法を紹介します。
-
33:57 InstrumentsでのHTTPトラフィックの解析
Instruments Networkテンプレートを使用して、AppのHTTPトラフィックを記録・解析する方法を確認しましょう。セッション、タスク、個々のHTTPリクエストの動作を調査し、視覚化する方法を説明します。これにより、データが効率的に転送され、ユーザのプライバシーが尊重されることを確認できます。
-
11:16 Xcodeにおけるコードレビューと共同作業
Xcodeにおけるコードレビューとプルリクエストの最新の機能強化について検証します。diffの表示設定、コミットセレクタ、チェンジナビゲータ、プルリクエストのワークフローについて詳しく説明します。コードレビューやPRのワークフローをソースコードに直接接続することで、チームとのコラボレーションやリグレッションの発見が可能になることを紹介します。
-
11:49 XCTestで想定される失敗の容認
優れたAppを構築する上で、テストは非常に重要な要素です。優れたテストは、リリース前に重要な問題を追跡し、ワークフローを改善し、リリース時に高品質な体験を提供するのに役立ちます。ただし、すぐに解決できない問題については、XCTestでは、XCTExpectFailureを使用して問題の背景をわかりやすく説明することができます。このAPIがどのように機能するのか、その厳密な動作、そして新たな問題の特定をさらに効率化するためにテストのS/N比を向上させる方法について確認します。
-
16:35 Advanced Video Quality Toolによるビデオの評価
Advanced Video Quality Tool(AVQT)は、圧縮ビデオ・ファイルの知覚クオリティを正確に評価するのに役立ちます。AVFoundationフレームワークを採用したAVQTでは、SDRとHDRの両方の領域で、幅広いビデオ・フォーマット、コーデック、解像度、フレームレートをサポートして、RAWピクセルフォーマットにデコードする必要がないなど、簡単で効率的なワークフローを実現しています。...
-
32:27 Apple GPU向けのハイエンドゲームの最適化
Apple GPU向けのハイエンドゲームの最適化: Appleのレンダリングツールやデバッグツールを使用して、パフォーマンスの問題を解決し、Appleプラットフォームで素晴らしいゲームを作る方法を紹介します。Larian Studiosや4A Gamesの開発者と協力して、Apple GPU向けにゲームを最適化した経験についてお伝えします。 シェーダの最適化、メモリ帯域幅の使用量の削減、GPUワークロードのオーバーラップの増加など、ゲームのパフォーマンスを向上させるためのさまざまなテクニックを検証します。また、Xcode...
-
9:34 cktoolと宣言型スキーマによるCloudKitテストの自動化
CloudKitコンテナのテストがかつてないほど簡単になりました。CloudKitの設定を迅速に行うことのできるコマンドラインユーティリティであるcktoolと、コンテナのプロトタイプと展開を迅速に行うことができる新しいスキーマ言語を紹介します。また、これらのツールを組み合わせて、Xcodeでテストを実行する前にコンテナを設定する方法も紹介します。 このセッションを最大限に活かしていただくためには、CloudKitとその開発環境および本番環境に精通し、レコードとデータタイプの基礎を理解していることが推奨されます。
-
14:26 コレクションを使用したSwiftパッケージの発見とキュレーション
教育目的でチーム向けにパッケージをキュレーションする場合であっても、他のデベロッパと共有する場合であっても、Swift Package Collectionsは、それぞれが発見し、調査し、プロジェクトに新しいパッケージをインポートするのに役立ちます。コレクションを使用したSwiftパッケージのワークフローの改善について確認し、独自のSwiftパッケージのコレクションをキュレーション、作成、署名、共有する方法を紹介します。
-
9:01 テストの繰り返しによる信頼性の低いコードの診断
テストの繰り返しは、最も信頼性の低いコードのデバッグにも役立ちます。テストプラン、Xcode、xcodebuild内の最大反復テスト、失敗するまでのテスト、失敗した場合の再試行などを使用して、バグやクラッシャを追跡し、Appを誰にとってもより安定したものにする方法を確認しましょう。 このセッションを最大限に活かしていただくためには、XCTestとテストプランによるテストの管理に精通していることが推奨されます。詳しくは、WWDC19の「Xcodeでテストする」をご確認ください。
-
12:34 ブレークポイントの改善
ブレークポイントは、プロセスの途中で一時停止して問題を検査することができるため、問題のデバッグに役立ちます。カラム、未解決ブレークポイントなど、Xcodeのブレークポイントに関する最新の改善点について確認しましょう。また、一般的なブレークポイントのベストプラクティス、LLDBに関するヒントについても紹介します。
-
9:13 スタティックアナライザによるバグの早期検出
Appを実行する前に、Xcodeが無限ループ、未使用コード、その他の問題を自動的に追跡する方法について確認します。ワンクリックでXcodeがプロジェクトを解析し、セキュリティ問題、論理的なバグ、Objective-C、C、C++のその他の見つけにくいエラーを発見する方法を確認します。バグレポートの調査時間を短縮し、Appの全体的品質を向上させるためのスタティックアナライザの使用方法を紹介します。
-
24:24 Appのハングアップの理解と解消
Appで発生するハングアップや遅延を突き止める方法を紹介します。本セッションでは、ハングアップとその原因を見つけ出すためのツールや手法を紹介し、ハングアップにつながるアンチパターンについて確認し、GCDのようなハングアップを解消するためのベストプラクティスを検証して、Appのパフォーマンスを向上させるために非同期コードを検討すべき場合の指針を示します。
-
17:46 XcodeにおけるDocCドキュメントのレベルの向上
優れたドキュメントは、Swiftフレームワークを効果的かつ容易に採用するのに役立ちます。APIに付属させるリッチで概念的な記事を作成する方法を紹介します。文書の構成方法など、記事を書くためのベストプラクティスを確認し、文書をつなぐ管理リンクを自動的に作成する方法を確認しましょう。
-
29:26 メモリ問題の検出と診断
Xcodeでメモリパフォーマンスの問題を理解し診断する方法を確認します。Xcodeのツールの最新アップデート、Metricsの詳細、XCTestのmemgraphコレクション機能のチェック、Performance XCTestを使って不具合を見つける方法を確認します。
-
15:27 Xcode OrganizerによるTestFlightクラッシュのトリアージ
Xcode Organizerを使用して、クラッシュのトリアージと修正をより簡単かつ迅速に行う方法を確認しましょう。クラッシュの発生直後に、クラッシュの情報やTestFlightテスターからのフィードバックにアクセスする方法を探ります。また、クラッシュを分析し、メトリクスを表示し、さらにチーム間でクラッシュ情報を共有する方法を紹介します。 クラッシュログの入門編として、WWDC18の「クラッシュとクラッシュログについて理解する」をご確認いただくことをお勧めします。
-
21:50 クラウド署名を使ったXcodeによるAppの配布
AppをApp Store Connectに直接配信する方法、Xcodeでサポートされているすべての配信方法を紹介します。また、Appの配布を自動化する方法や、クラウド署名、Appレコードの作成、ビルド番号の管理など、配信ワークフローの改善点についても紹介します。
-
19:15 スタイルによるインタフェース構築
Appをする際に、インターフェイスをより迅速に反復する方法を紹介します。最新のボタンスタイルやテーブルビューのセルコンテンツ設定を使って、UIをモダンにする方法を紹介します。これらの設定は、Interface...
-
22:13 DocCを使ったインタラクティブなチュートリアルの製作
DocCで没入感の高いチュートリアルを一から作る方法を紹介します。Swiftフレームワークの動作を表現するために、DocC構文を使って豊富な説明、サンプルコード、画像をまとめる方法について説明します。また、インタラクティブな学習機会を提供し、フレームワークのユースケースの理解を深めることができるプログレッシブトレーニングの作成方法についても説明します。
-
39:53 Metalのデバッグ、プロファイリング、アセット作成ツール
Xcodeを使用して、Metalのデバッグ、プロファイリング、アセット作成のワークフローを次のレベルに引き上げる方法を紹介します。レイトレーシングとGPUプロファイリングのための最新ツールを確認し、Metalデバッガのワークフローについて確認します。また、最新のGPUテクスチャフォーマットをすべてサポートし、マルチプラットフォームのアセット作成パイプラインに簡単に統合できるテクスチャコンバータツールの使用方法も紹介します。
-
17:36 SwiftUI Appのローカライズ
SwiftUI Appをローカライズして、世界中のユーザが利用できるようにする方法を確認しましょう。スタイルやフォーマットを含む、SwiftUIの文字列をローカライズする方法を確認します。レイアウト、キーボードショートカットなどのタスクをSwiftUIに自動的に処理させることで時間を節約する方法を実演して、Xcode 13のローカリゼーションワークフローを紹介します。 このセッションを最大限に活かしていただく、あるいはMarkdown言語、AttributedStringについて詳しく知りたい方は、WWDC21の「Foundationの新機能」をご確認ください。
-
23:49 Xcode Cloudのワークフローの詳細
Xcode Cloudワークフローを利用して、Appやフレームワークのビルド、分析、テスト、アーカイブ、配布を自動化する方法について確認します。ワークフローは柔軟で拡張性があり、チームの開発と配信プロセスに合わせて設定できます。Xcode Cloudワークフローの基本を理解してから設定方法をすべて確認し、Appleの継続的インテグレーションシステムを使い始めるための推奨ワークフローについて解説します。 このセッションを最大限活かしていただくためには、WWDC21の「Xcode Cloudについて」を先にご確認いただくことをお勧めします。
-
9:16 デジタルクラウン、トラックパッド、iPadポインタの自動化
Xcode 13のUIテストでデバイスを操作する方法を確認します。iPadOSのポインタ、watchOSのデジタルクラウン、強化されたmacOSのトラックパッドのスクロールAPIなど、新たに自動化された入力メソッドを紹介します。
-
6:24 より高速でシンプルなMac appの公証
公証機能はmacOSと連動しており、App Store以外でMac用のソフトウェアを安全にダウンロードできるようになっています。notarytoolを使えば、Mac Appを配布するための公証を迅速かつ簡単に行うことができます。Appをシングルコマンドで公証する方法、継続的インテグレーションのワークフローに公証機能を導入する方法を紹介します。 公証機能のワークフローについては、2019年のビデオ「Notarizationについて」をご確認ください。
-
37:20 シンボリケーション: 基礎を超えて
Appでパフォーマンスを最大化して洞察的なデバッグを実行する方法を紹介します。シンボリケーションは、InstrumentsやLLDBなどのツールで中核的な役割を果たして、Appのランタイムとソースコード間のレイヤーを橋渡しします。このプロセスの仕組みと、自身のAppを最大限に理解するために実行できる手順を確認しましょう。
-
24:00 究極のAppパフォーマンスサバイバルガイド
パフォーマンスの最適化は、追跡が必要な指標や使用するツールが多く、困難なタスクのように思われます。しかし、心配はいりません。このAppパフォーマンスに関するサバイバルガイドは、開発プロセスを円滑にし、Appを使用する人々の素晴らしい体験に貢献するツール、メトリクス、パラダイムを理解するのに役立てることができます。
-
15:30 Appのパワーとパフォーマンスに関する不具合の診断
パワーとパフォーマンスの不具合を確認する際のプライオリティの特定方法を素早く見つけましょう。デバイスやパーセンタイル固有の情報を用いて低下したメトリクスを追跡する方法を確認し、最適化に注力して貴重な開発時間を節約しましょう。また、デバイスのストレージを消耗させるAppの一般的なアンチパターンを追跡する方法、ワークフローのカスタマイズを支援する方法、App Store Connect APIを追加してAppの実世界でのパフォーマンスを常に把握する方法についても紹介します。
-
10:30 Mac用TestFlightについて
TestFlightをMacで利用できるようになりました。ビルドとテスターを管理して、フィードバックを収集して、macOS Appを展開する方法を確認しましょう。Xcode Cloudに統合される新機能と内部テストにさまざまな拡張が施されたことで、すべてのプラットフォームでテストがさらに簡易化されています。
-
25:37 Xcodeのおける高度なプロジェクト設定
より複雑なXcodeプロジェクトを扱っていますか? そうした場合に最適な機能があります。複数のAppleプラットフォーム用にビルドするためにプロジェクトを設定する方法、プラットフォームごとにコンテンツをフィルタリングする方法、カスタムビルドルールやファイル依存関係の作成方法などを紹介します。マルチプラットフォームのフレームワークターゲット、プロジェクトとスキームの構成を最適化する方法、構成設定ファイルの効果的な利用方法などを詳しく説明します。...
-
-
WWDC20 -
7:16 Discover Core Imageデバッグ技術
Xcode環境変数を使用して、Core Imageパイプライン内のレンダリングおよび最適化の問題を検出して、修正します。Core Imageグラフを可視化するための環境変数の設定方法を紹介します。Core Imageグラフの生成方法、およびそれを解釈してメモリ、色、およびパフォーマンスの問題を発見し、Core Imageパイプラインを改善および最適化する方法について学びます。
-
11:43 UIテストにおける割り込みやアラートの処理
Appのインターフェースへの割り込みの可能性を予測する方法、それらを識別するスマートテストのビルド方法をお伝えします。UIへの割り込みのタイミングは定まっておらず、一般的にはオンボーディングや初回起動時に起こり、見つけ出すのが難しいことがあります。割り込みを理解し、UI割り込みハンドラを使ってより強力なテストを書いたり、予想されるアラートの管理方法もお伝えします。 お使いのAppをXcodeでテストするための最新の改善点に関する詳細は、““XCTSkip your tests“、“Get your test results faster”、“Triage test failures...
-
29:30 Siri Event Suggestionsを使ってリーチを広げる
Appやウェブ、またはEメールでイベント情報をホストする場合、Siri Event Suggestionsは予定を把握する助けになります。このことによってプライバシーを危険にさらす必要もありません。イベント情報をカレンダーAppに自動的に表示し、複雑な情報提供を管理したり、イベントを様々な条件タイプと関連付ける方法や、ウェブやEメール用のiOSやMarkup向けにSiri Event Suggestions APIを使う方法についてもお伝えします。
-
23:16 Apple Silicon Macの新しいシステムアーキテクチャについて
Apple Silicon Macは、AppleのSystems-on-Chip (SoC) アーキテクチャを使い最新の強みをもたらします。CPUとGPUのタスクに統合メモリアーキテクチャを活用し、MetalやAccelerateといったApple SiliconがチューニングされたフレームワークでMac Appは驚くべきパフォーマンス上のメリットを享受します。ブート、セキュリティにおける新機能と変更点、またそれらがあなたのAppにどのように影響するかをお話します。
-
16:24 より早くテスト結果を得る
フィードバックループをスピードアップさせ、より早く修正するために、テストスイートを改善しましょう。なかなか終わらず、動作の悪いテストを排除するためのテストプランの活用方法、Xcodebuildのアップデート、APIを含むXcode内でのテスト実行に関して最新の改善事項についてお伝えします。XCTest内のテストのタイムアウトおよび実行時間の許容範囲を調べ、デバイスの並列化を分析し、明確なフォールト位置の特定でパフォーマンスのバランスを取るために推奨される方法もお伝えします。...
-
17:29 Apple Silicon MacでiPadやiPhone Appを利用する
Apple Silicon MacはipadやiPhoneのAppをそのまま実行でき、AppはMac App StoreからMacユーザーに提供されます。Apple Silicon MacでiPad 、iPhone Appがどう実行されるか、またAppが見つけられやすくなる要因を説明します。MacであなたのAppをテストする方法、Appの配信オプションについても説明します。
-
40:44 Mac AppのApple Siliconへのポーティング
ポーティングに関する疑問への回答は、ここにあります。Apple Silicon用にmacOSのAppを再コンパイルし、素早く起動し、パフォーマンスが改善し、プラットフォームの未来をサポートしてくれるユニバーサルAppをビルドする方法を学びます。Xcodeを使って、ユニバーサルなmacOSのバイナリのビルドや、お持ちのAppの実行、デバッグ作業、テストがどのように簡素化できるかを説明します。実施する必要のあるローレベルコードへの変更は何かを学び、プロセス上および別プロセスでのプラグインの操作方法を見つけ出し、ユニバーサルAppを使った作業における役立つヒントを知ることができます。...
-
2:09 Siriで一般的なエラーを読み解き、対応する
「すみません、Appで問題が起きました・・・」 Siriのエラーにがっかりしないでください:Siriのインテントのデバッグ方法を学び、VoiceやShortcuts Appで、ユーザーが使用できる優れたインテグレーションを作成する方法をお伝えします。よくあるエラー、そのテスト方法、あなたのAppでシームレスなSiri体験を提供する道筋についてもご説明します。
-
13:45 MetricKitの新機能
MetricKitを導入して、電力とパフォーマンス低下を素早く検知し、Appに起きた問題のトラブルシュートをしましょう。CPUインストラクション、アニメーションヒッチ、終了理由といったAppで追跡することが可能な最新メトリクスを説明します。またハング、クラッシュ、ディスク書き込みのトラブルシュートの助けとなる、MetricKitでできる診断についてもお伝えします。
-
12:23 Xcodeを使いAWS Lambda上でSwiftを使用する
サーバーレス機能は、クラウド上でイベント駆動型、またはその他の目的が限定されたタスクを実行することでますます一般的になってきており、デベロッパがより容易に計算コストを見積もったり、管理したりすることを可能にします。Swiftでサーバレス機能を構築し、Xcodeを使いローカルでデバッグし、これらの機能をAWS Lambdaプラットフォームに追加するための新しいSwift AWS Lambda Runtimeパッケージの使用方法を学びましょう。低メモリーフットプリント、決定性パフォーマンス、素早い起動時間のおかけで、AWS Lambda上でSwiftがどのように活躍するかをお伝えします。
-
13:45 XCTestを使ってアニメーションヒッチを除去する
アニメーションは、Appのユーザー体験を劇的に向上させ、直接操作しているような感覚を与え、自身が起こしたアクションがもたらす結果をより理解することに役立ちます。アニメーションヒッチはそのような経験を台無しにします。スクロールやアニメーションを円滑に行うために、割り込みを検知するXCTestの使用方法をお伝えします。あなたのAppを頼りにしている人々に影響が出る前に、不具合を見つけ出す方法もお伝えします。
-
17:27 Core Data: 雑件と格言
Core DataはあなたのAppからの情報を永続的に、常に保存する主要な方法です。データをより早く読み込み、取り込むためにより良く実装する方法をこれからお見せします。必要なデータ取得をバッチ挿入、必要なデータへのカスタムフェッチ要求を使ってどう改善し、持続ストアへの変更通知に対応するかを見ていきましょう。 このセッションを有効に活用いただくには、Core Dataの知識があり、過去に利用されたこともあることが望ましいです。フレームワークについてより詳細な情報が必要な場合には、“Making Apps with Core Data”をご参照ください。
-
42:42 Swift用にObjective-Cフレームワークを洗練させる
Objective-CのヘッダーをSwift内で美しく動くよう、洗練させましょう。扱いの難しいObjective-Cフレームワークを、使い心地の良いAPIに転換する方法をお伝えします。より豊富な型情報、慣用名、Swiftへのより良いエラーを提供するために使うことのできる注釈の置き場についてご説明します。まだあなたが気がついていないかもしれないSwift APIを正しく動かすためのカギを握るObjective-Cのコンベンションについてもご紹介します。 このセッションを最大限に活用するには、SwiftとObjective-Cに慣れていることが望ましいです。...
-
11:07 Xcode Organizerでパフォーマンス問題を診断する
2、3回クリックするだけの操作で、Appの複数のバージョンから集約されたパワーやパフォーマンスデータを分析しましょう。 最新のXcode Organizer、そのインタラクティブインターフェースをご紹介します。複数のリリースを経たAppメトリクスを簡単に比較、対比することが可能になります。ディスクの書き込み診断やヒッチメトリクスをスクロールする方法もご説明します。Appのユーザーに対し、よりよいパフォーマンスを提供し、バッテリーの消費量を減らし、デバイスの健康状態を改善するために、これらをどのように使用できるかをお伝えします。 Xcode...
-
13:11 Xcode Libraryにカスタムビューとモディファイアを追加する
利用可能なSwiftUIビューを見つけ、Xcode Previewsのキャンバスへドラッグ&ドロップし、リッチで視覚的なAppの編集を可能にするのがXcode Libraryです。自身のビューとモディファイアを使いXcode Libraryのコンテンツを拡大する方法、またAppやSwiftパッケージ内で再利用性と発見性を最適化する方法をお伝えします。 Xcode Previewsについての詳細は、"Structure your app for SwiftUI previews"と"Visually edit SwiftUI views"をご覧ください。
-
15:00 Xcodeを使い、ローカリゼーションに適したレイアウトを作る
世界各国のオーディエンスとあなたの作品を共有し、カルチャーや言語と結びつける素晴らしい方法は、Appのローカライズです。Appのレイアウトを慎重に構成することで、1語も翻訳することなくローカライズの準備ができるようになります。XcodeでUIを構成する方法、言葉数が多く、右から左に書き進む言語によく見られる課題の特定、インターフェースを調整しつつ、誰にとっても最高の体験を提供できる方法をお伝えします。
-
24:52 StoreKit Testing in Xcodeの導入
App Storeサーバに接続することなく、ローカル環境でApp内課金のテストを行う、StoreKit Testing in Xcodeをご紹介します。テスト環境をセットアップし、StoreKitのコンフィギュレーションファイルを作成し、レシートをローカルで検証する準備を整える方法について説明します。さらに、さまざまなApp内課金のシナリオをテストし、StoreKitTestフレームワークでそれらのテストを自動化する方法を説明し、サンドボックス環境でのテストに関する最新の改良点をご紹介します。
-
15:12 Power and Performance APIでトレンドを特定する
カスタムチームダッシュボード、バグレポートシステム、その他Power and Performance MetricsやDiagnostics APIのカスタムワークフロー内で、Appのパフォーマンスメトリクスを追跡しましょう。XcodeでPower and...
-
26:06 Create MLを使用したアクションクラシファイアの構築
Create MLでAction Classificationモデルを作成する方法を説明します。カスタムアクションクラシファイアを使用すると、Appはビデオまたはカメラを介してリアルタイムで身体の動きを認識し、理解することができます。ジャンピングジャック、スクワット、ダンスの動きなどの人間の動作を識別するために、サンプルを使用してCore MLモデルを容易にトレーニングする方法についてご説明します。これを支えるVision FrameworkのBody...
-
20:14 シミュレータのエキスパートになる
シミュレータは、お持ちのMac製iOS、iPadOS、tvOS、watchOSのAppを直接起動させます-別のデバイスは必要ありません。Appの最新のツールや特徴をご紹介し、シミュレータスキルを磨く方法をお伝えします。ポインタやトラックパッドサポートのテスト方法、Simulator Preferencesの調整方法、開発環境におけるプッシュ通知のシミュレーションに役立つsimctlのようなコマンドラインツールの使用方法もお伝えします。 このセッションでは、シミュレータに関する概要を簡単に知ることができますが、このツールに関してさらに学びたい場合は、WWDC19の“Getting...
-
33:42 SwiftUI previews向けにAppを構成する
開発にSwiftUIを使うと、より柔軟でメンテナンスのしやすいAppを、短時間で作ることができます。プロジェクトに微調整を加えることでプレビュー体験を改善する方法、複数のファイルを同時にプレビューする方法、プレビュー中にサンプルデータを利用する方法についてもお話します。よりプレビューやテストしやすいビューインプットを定義するための戦略もお見せします。 このセッションを最大限に活用するには、SwiftUIに慣れていることが望ましいです。XcodeでSwiftUIプレビューとインタラクトする基本については、WWDC20の"Visually Edit SwiftUI...
-
23:40 AVFoundationとVideoToolboxを使ったDecode ProRes
Mac AppでProResコンテンツをより簡単にデコードおよび表示する方法: AVFoundationとVideoToolboxのデコード機能を活用して、最適なグラフィックパイプラインを実装する方法について学びます。Appのベストプラクティスとパフォーマンスに関する考慮事項を共有し、Afterburnerカードをパイプラインに統合する方法およびMetalを使用してデコードされたフレームを表示する方法について説明します。
-
24:02 AVFoundationを使用したHDR動画の編集と再生
MacOS AppでHDRの編集と再生をサポートする方法および特定のハードウェア構成がHDRの再生に適しているかどうかを判断する方法を紹介します。内蔵コンポジターでAVMutableVideoCompositionを使用し、HDRコンテンツを簡単に編集する方法、Core Imageの内蔵イメージフィルターを使用して独自のAVMutableVideoCompositionを作成する方法、HDR編集を可能にするカスタムコンポジターの作成方法と使用方法について説明します。
-
22:44 高品質なSiriメディアインタラクションをデザインする
Siri体験を音楽、音声Appに向けデザインする技術的な手順、その謎を解き明かします。優れたインタラクションを作ること、Siriがさらに高い正確性と個性をもって応答できるようにカスタムボキャブラリーを提供する方法をお伝えします。よくあるエラーをデバッグし、AppleのSiriチームも使っているのと同じ方法でインテントをテストする方法もお見せします。
-
36:16 MetalでGPUバイナリを作成する
シェーダーパイプラインを増強しMetalシェーダーのコンパイルモデルを拡張すると、特に初回ローンチ時のPipeline State Object (PSO) ロードタイムが大幅に削減されます。Metalバイナリアーカイブとダイナミックライブラリを利用した明確なPSOキャッシュとGPUバイナリーの共有について学びます。ライブラリの作成のためのツールチェーンも詳述し、シェーダーコンピレーションワークフローが改善します。
-
17:55 不具合検出テストを書く
不具合のため計画:最も手強いバグでさえも発見し、診断するのに役立つ有効なテストをデザインしましょう。最良のコードにおいてでも、隠れた問題を発見できるように、XCTestを使った自動テストの改善方法についてお伝えします。問題のトリアージを容易にする不具合検出テストの準備方法、インターフェースの問題を解決し、素早く修正できる方法もお伝えします。 このセッションを有効に活用するためには、XCTestフレームワーク内でUIテストを書くことに慣れていることが望ましいです。 テストツールの詳細については、“The suite life of testing”に進んでください。
-
5:06 SwiftUIビューを視覚的に編集する
Appを、常に最高の状態に保ちましょう:Xcode PreviewsとSwiftUIを使い、素早く編集を繰り返し、改善することができます。PreviewsのキャンバスでAppをイチから作り、そのインターフェースをLight、Darkモード、といった異なる環境下での見え方を確認し、Dynamic Typeといったアクセシビリティ機能を有効にする方法をお見せします。 SwiftUI Previewsについての詳しい情報は、"Structure your app for SwiftUI previews"、"Add custom views and modifiers to the...
-
20:56 MetalでのGPU側のエラーのデバッグ
Xcode 12の強化されたレポーティングで、最も扱いにくいGPU側のプログラミングエラーでさえも見つけ出しましょう。MetalのAPI検証レイヤはプロジェクトのほとんどの問題を捕捉できますが、GPUエラーはデバッグが難しい多くの問題の原因となる場合があります。 GPU側のエラーを知り、Xcode...
-
23:15 AVFoundationを用いHDRメディアをAppでエクスポート
AVFoundationを使って、お持ちのAppでハイダイナミックレンジ(HDR)を作成し、エクスポートする方法を知ることができます。ハイダイナミックレンジ、およびお持ちのAppで有効活用する方法を学んでください。HDRコンテンツのエクスポートを可能にする特徴集合を導入し、HDRフォーマットを検査し、現在の制約を評価し、HDRエクスポートをサポートするAppleのプラットフォームを探し出します。
-
32:50 GPUカウンタによるMetalのAppやゲームの最適化
GPUカウンタは、GPU使用量を精密に測定し、ボトルネックを正確に示してMetalのAppやゲームのワークロードを最適化するのに役立ちます。ここでは、グラフィックスワークロードの概要を示すためにXcode 12上のMetal System TraceインスツルメントやMetal Debuggerで使用できるツールをご紹介し、収集したデータを使用してGPUパイプラインで十分に活用されていない場所や過度に使用されている場所を見つける方法を示します。Appの機能を向上させるためにそのデータに基づいてどのような対応ができるかご覧ください。 本セッションの前に、Apple...
-
14:51 Xcode PlaygroundにおけるPackageとProject
Xcode Playgroundがあれば、デベロッパはSwiftとフレームワークAPIをより調査しやすくなり、迅速な実験のためのscratchpadとしても使用できます。Xcode PlaygroundにおけるXcodeのモダンなビルドシステムの活用、リソースへの改善されたサポートの提供、プロジェクト、フレームワーク、Swiftパッケージの統合など、ドキュメントや開発ワークフローをどのように改善できるかをお伝えします。
-
14:17 Xcode 12によるMetal Appのインサイトの取得
MetalのデバッギングとXcode 12のパフォーマンス最適化ツールによって、グラフィックスの問題を短時間で見つけ出す方法を学びましょう。ここでは、Metal Debuggerを使用して問題をすばやく診断する方法をご紹介します。メモリの使用量、帯域幅、パフォーマンス、Metal APIの実装の改善方法を提案する新しいサマリービューをご覧ください。 本セッションの前に、Metalの基本を理解しておくことをお勧めします。まずは “Harness Apple GPUs with Metal”をご覧ください。
-
6:12 Xcodeを使用したMetalベースCore Imageカーネルの作成
Metal Shading Languageで書かれたCore ImageカーネルをAppに統合してロードする方法について学びます。また、これらの画像フィルタを適用して独自のエフェクトを作成する方法についても説明します。Metal Shading Languageで書かれたCore ImageカーネルのXcode規則と命名規則の使用方法を紹介します。MetalおよびMetal Shading Languageを用いて、Core Image APIを効果的かつ最適に使用する方法について説明します。
-
12:38 XCTIssueを使用してテストの失敗をトリアージする
テストの失敗を役立たせましょう:Xcodeでの最新のテスティングAPIを使い、キャッチされていない問題をトリアージし分析する方法をお伝えします。テストワークフローを簡単にする方法、最高品質の製品を提供するのに役立つであろう失敗をコンテキストに組み込む方法について紹介します。 よりよいトリアージをするためにテストをデザインする方法に関しては、“Write tests to fail”をご覧ください。 Xcodeのテストワークフローに関する最新の改善情報に関しては、 “Get your test results faster”、“Handle interruptions and...
-
8:37 動画AppのためのCore Imageパイプラインの最適化
Core Imageの処理能力を活用し、App内の動画パフォーマンスを最適化する方法について説明します。あなたのAppで動画にエフェクトを適用するためのCore Imageパイプラインを構築する方法を紹介します。CIContextを使用するときに、Appのメモリのフットプリントを減らす方法、およびCore Imageフィルタを使用した動画再生のためのAVPlayViewまたはMTKViewビュークラスの使用に関するベストプラクティスについて学びます。さらに、独自のカスタムカーネルをMetal Shading Languageで書くべき理由について説明し、Core...
-
37:32 Mac Catalyst Appのインターフェイスの最適化
Xcodeの新しい「Optimize Interface for Mac」オプションを使用することで、アピアランスも操作感もMacらしくなるようにMac Catalyst Appをカスタマイズする方法をご覧ください。Catalyst...
-
15:27 Mac Catalystに関する新機能
Mac Catalystの最新の更新について説明し、iPadOS AppをMacに導入する方法を確認します。Appライフサイクルの拡張を確認し、新しいExtensionをAppに統合し、MacOSの新しいルックアンドフィールがMac Catalyst Appにどのような影響を与えるかを学びます。新しいOptimized for Macモードを紹介します。そして、フレームワークの可用性や美しい新デザインを含むすべての改良点について詳しく説明します。その改良点によって、iPad AppをMacにもっと簡単に導入できます。 本セッションの前に、Mac...
-
6:35 テストをXCTSkipする
大事なテストの結果を入手しましょう-そして大事でないものはSkipしましょう。XCTSkipを実行し、条件に合わせてテストがランタイム中に開始しないようにする方法をお伝えします。この新しいテスト結果をどう戻し、様々なテストの中で単にpassとfailだけではないドキュメントテストの実施方法を丁寧にご説明します。 このセッションを最大限に活用するには、XCTestと、unit/UIテストについての知識があることが望ましいです。事前に"Testing in Xcode"をご覧ください。 XCTSkipを学んだら、テストに関する改善点も確認しましょう:"Triage test...
-
24:42 Core MLでのモデルの配布とセキュリティ
Appのバイナリ外でCore MLモデルをデプロイし、機械学習機能をAppに導入する際により柔軟で制御しやすくする方法について説明します。また、Core MLモデルデプロイメントによりAppのアップデートを行うことなく更新されたモデルを導入する方法についても学習します。さらに、暗号化を使用してカスタムの機械学習モデルを保護する方法や、Xcodeでモデルのパフォーマンスをプレビューする方法も一通り説明します。 TensorFlowやPyTorchなどの環境で学習済みのモデルを取り込む場合など、Core MLの使い方の詳細については、"Get your models on device...
-
11:48 Create MLにおけるImage and Video Style Transferモデルの作成
Create MLのStyle Transferを使用して、写真や動画にスタイル付けされたエフェクトを導入します。モデルを数分でトレーニングして、クリエイティブなビジュアル機能をAppに簡単に導入できる方法を紹介します。トレーニングのプロセスと、結果を制御するためのオプションについて学びます。また、これらのモデルの内3つを同時にARKitでデモンストレーションすることによって、リアルタイムのパフォーマンスを確認します。 本セッションの前に、Create MLを使いこなせるようになっておくことをお勧めします。概要については、“Introducing the Create ML...
-
54:38 SwiftUIのご紹介
宣言型プログラミングの世界を探求しましょう:フル機能のSwiftUI Appを一から構築する方法、そしてSwiftUIとXcode両方の力を合わせ、優れたAppをより短時間で構築する方法もお伝えします。
-
23:05 Objective-Cランタイムの進化
Objective-CやSwiftクラスの基礎となる、低レベルのビットやバイトのミクロの世界に飛び込んでみましょう。内部のデータ構造、メソッド一覧、タグ付きポインタに対する最近の変更がどのようにパフォーマンスの改善やメモリー使用量の減少につながっているかをお伝えします。内部の個々の要素に依存するコードにおけるクラッシュの認識および解決方法を紹介し、ランタイムに対する変更に影響されないコードの維持方法もお伝えします。
-
-
WWDC19 -
43:18 Appの起動を最適化する
Appの起動が遅いとストレスがたまるものです。このセッションでは、App起動用の新しいinstrumentと、Appの起動を速くする方法について説明します。Appの起動時に行われる事柄や、この重要な時間における作業を最小限にし、優先順位を付け、最適化する方法についてご確認ください。エンジニアによる、iOS Appの起動を速くするためのヒントやコツも紹介します。
-
34:54 Instrumentsの概要
XcodeのInstruments Appには、Appのパフォーマンスをプロファイリングするための豊富なツールとテンプレートが用意されています。このセッションでは、Instrumentsの詳細と、コードのボトルネックを特定する方法について説明します。タイムプロファイリングと特定箇所のトラッキング機能を活用することで、どのようにコードに有益な変更を加え、Appの応答性を大きく改善できるかについてご確認ください。
-
10:14 Accessibility Inspector
Accessibility Inspectorを活用すると、Appの中でアクセシビリティに対応していない部分を特定することができます。その部分をアクセシビリティ対応にする方法についてフィードバックが表示されるほか、VoiceOverのシミュレーションも行われるため、ユーザーが実際に聞くVoiceOverを確認できます。Accessibility InspectorでAppを完全にデバッグするライブデモを通して、この強力なツールを使用してあらゆるユーザーに対応したAppを作る方法についてご確認ください。
-
33:40 Notarization(認証)について
Notarization(認証)は、App ReviewやMac App Storeへの提出を要求せずに、悪意のあるMacソフトウェアを事前に特定してブロックするためのものです。この認証は昨年導入され、すでにMac Appデベロッパに広く利用されています。このセッションでは認証のワークフローについて詳しく説明し、認証サービスの新機能を紹介します。
-
33:02 Xcode 11の新機能
アイデアをかつてなく迅速に製品化するために設計された、Xcode 11の新機能を紹介します。ソースコードを編集および整理する新しい方法、ユーザーインターフェイスを設計およびプレビューするための新機能、デバッグとテストのための優れた改良点についてご確認ください。また、デベロッパツールに関する今年のセッションの概要もご確認いただけます。
-
14:49 機械学習における新機能
Core ML 3が大幅に拡張され、これまで以上に高度なオンデバイスの機械学習機能をAppで利用できるようになりました。このセッションでは、さまざまなタスクのためのCore MLモデルを簡単に作成できる新しいCreate ML Appについて説明します。Vision、Natural Language、Sound、Speechの魅力的なアップデートや、最先端のモデルタイプに新たに対応したことや、モデルパーソナライズの概要についてご確認ください。
-
44:09 Xcodeプレビューをマスターする
Xcode 11ではユーザーインターフェイスのプレビューがエディタに直接表示されるため、編集、デバッグ、実行のサイクルをシームレスなワークフローで進めることができます。このセッションでは、プレビューの仕組み、SwiftUI Appの構造をプレビューに最適化する方法、既存のビューとビューコントローラをプレビューに対応させる方法について説明します。
-
33:24 SwiftパッケージをXcodeに導入する
コードの整理と共有に便利なSwiftパッケージが、すべてのAppleプラットフォーム向けのAppをXcode 11で構築する際に利用できるようになりました。このセッションでは、コミュニティで開発されたパッケージをプロジェクトで使用する方法、Swiftパッケージの構造、パッケージのバージョン管理と依存関係の仕組みについて説明します。
-
37:49 Appのストレージを最適化する
Appにデータを保存する方法は、ディスク使用量だけでなく、Appのパフォーマンスとデバイスのバッテリー駆動時間にも影響します。このセッションでは、データのシリアル化を最適化し、画像を処理し、ディスクと同期するテクニックを説明し、SQLiteの機能を活用してパフォーマンスと安全性を向上させる方法を紹介します。
-
43:06 シミュレータを最大限に活用する
このセッションでは、シミュレータの世界を詳しく紹介します。シミュレータの仕組みやあまり知られていない機能、シミュレータのコマンドラインインターフェイスによる自動化についてご確認ください。MetalによるシミュレータのネイティブGPU高速処理や、Metalコードを最適化して活用する方法についても説明します。
-
36:09 不利なネットワークと温度条件に向けて設計する
ワールドクラスのAppは、最も過酷な環境でも優れたユーザー体験を提供するものです。このセッションでは、Xcodeを使用して不利なネットワークと温度条件をシミュレーションする方法について説明します。Appの性能を試し、実際にパフォーマンスを確認してみましょう。厳しい条件に対応するために導入できるベストプラクティスについてご確認ください。
-
37:42 カスタムinstrumentsのモデリング
カスタムinstrumentsを使用すると、Appを自由にプロファイリングし、実行中におけるAppの動作を説明することができます。各カスタムinstrumentsの中心にあるのはモデラーです。このセッションでは、signpostの出力をinstrumentsで表示するデータに変換する、独自のモデラーを構築する方法について説明します。Instrumentsルールエンジンの仕組みと、instrumentsを最適化して効率を最大限に高める方法についてご確認ください。このセッションは、WWDC 2018の「カスタムInstrumentsの作成」を土台にしています。
-
39:04 優れたプロファイリング体験を開発する
このセッションでは、再利用可能なクラス、サブシステム、フレームワークに、便利なトレースを追加する方法について説明します。コードのトレースを簡単にすることで、利用者に価値ある情報と安心感を与えることができます。SwiftおよびObjective-Cコードでのトレース、カスタムinstrumentsの構築、Instruments 11でのデータの可視化のベストプラクティスについてご確認ください。他のデベロッパがAPIの約束事を理解して、パフォーマンスに影響を与えるアンチパターンを避けられるよう、ツールに関する専門的な知識を共有しましょう。
-
49:24 MetalのAppとゲームを最適化する
リソース消費量の高いMetalのAppやゲームにおいて、パフォーマンス、メモリ、帯域幅の最適化を検討することは重要です。このセッションでは、レンダリングを円滑にして高いフレームレートを達成するための鍵となるベストプラクティスについて説明します。また、GPUへの負荷が高い処理や想定外の処理を特定するために役立つ強力なツールも紹介します。高いパフォーマンスを引き出せるGPU機能と、メモリの効率的使用に関するエキスパートからのアドバイスについてご確認ください。
-
30:34 App Store Connectの新機能
Appの提出、管理、配信をこれまで以上に円滑にする新機能によって、App Store ConnectがAppのライフサイクルの各段階において果たす役割は向上し続けています。このセッションでは、App Store Connectの最新のエンハンスメントや、毎回のリリースでAppを確実に改良していく新しい方法について説明します。
-
39:07 Appのバックグラウンド実行の最新情報
Appでバックグラウンド実行を活用することは、優れたユーザー体験を提供できる強力な方法です。このセッションでは、バックグラウンドでAppを実行する際(特にVoIPまたはサイレントプッシュを使用する場合)に従うべきベストプラクティスと、長時間実行する処理やメンテナンスのタスクを可能にするまったく新しいスケジューリングAPIについて紹介します。
-
37:09 Xcode 11でのデバッグ
Xcode 11では、バグをすばやく発見および修正するための新機能が導入されています。このセッションでは、ネットワークの状況と発熱の状態をシミュレーションする方法と、デバッグ中にAppのランタイム環境を上書きする方法を紹介します。デバッグ機能がどのようにXcodeのプレビューと連動し、ビルドと実行の前に問題を特定できるかについてご確認ください。View Debuggerを使用してSwiftUIビューのトラブルシューティングを実行する方法もご確認いただけます。
-
41:03 ClangとLLVMの新機能
このセッションでは、ClangコンパイラとLLVMの向上によって可能となった、C、Objective-C、C++の最新のエンハンスメントについて紹介します。また、新しい静的解析機能と、それらを使用してコードを改善する方法、そしてコードサイズのための新しい最適化機能を活用する方法も説明します。
-
39:33 バッテリー駆動時間とパフォーマンスを向上させる
このセッションでは、毎日の開発、ベータテスト、App Storeでのパブリックリリースを行いながら、パフォーマンスの問題を発見して修正する方法を紹介します。XCTestsでCPU、メモリなどを測定することで、毎日の開発の間にパフォーマンスの問題を特定する方法や、MetricKitを使用してベータテストとパブリックリリースの際に現場で問題を見つける方法をご確認いただけます。また、Xcode Organizerで、App Store上のAppの各バージョンから集計した最も重要なパフォーマンス指標が表示されるようになったことも説明します。
-
20:44 LLDB:「po」の先へ
LLDBは、実行時にAppの確認とデバッグができる強力なツールです。このセッションでは、Appの値を表示するさまざまな方法、カスタムのデータ型をフォーマットする方法、独自のPython 3スクリプトを使用してLLDBを拡張する方法について説明します。
-
41:06 最新のSwift APIのデザイン
すべてのプログラミング言語には、ユーザーが期待するいくつかの慣習があります。このセッションでは、Swift APIのデザインで一般的なパターンを、SwiftUI、Combine、RealityKitといった新しいAPIからの例を使用して紹介します。チームの一員としてAppを開発する場合も、他の人が使用できるようにライブラリを公開する場合でも、APIを明瞭かつ正しく使用できるよう、Swiftの新機能の使い方についてご確認ください。
-
54:25 Xcodeの概要
Xcodeは、Appleプラットフォーム向けの優れたAppを作成するための開発環境です。Xcodeの機能を活用して、新しいプロジェクトの作成からApp Storeでの配信に至るまで作業を進める方法についてご確認ください。このセッションでは、実際に機能するSwiftUI Appを開発しながら、Xcodeのユーザーインターフェイスの操作方法、ソースエディタとライブユーザーインターフェイスプレビューの活用方法、コミュニティで開発されたSwiftパッケージをAppに組み込む方法、コードをリファクタリングおよびテストする方法を紹介します。
-
40:32 Swiftのバイナリフレームワーク
Xcode 11では、Swiftでのバイナリフレームワークの使用と作成が完全にサポートされました。このセッションでは、新しいXCFrameworkのバンドルタイプでデバイスとシミュレータを同時にサポートする方法、Swiftモジュールのインターフェイスの仕組み、フレームワークの経時的な変化を管理する方法について説明します。
-
14:34 Create ML Appの紹介
Core MLのパワーをAppに組み込むには、「どうやってモデルを作成するか」という課題に取り組む必要があります。新しいCreate ML Appでは、直感的なワークフローでモデルを作成することができます。このセッションでは、この使いやすいツールで、モデルをすばやくトレーニング、評価、テスト、プレビューする方法について説明します。多数の強力な機械学習タスクを処理するためのテンプレートが数多く用意されていますので、その中の1つをまずお試しください。モデルの継続的な改良と実験のための多くの機能についても詳しく紹介します。
-
53:30 Xcodeでテストする
コードが正常に動作することを一貫した方法で検証するために、ユニットテストは不可欠です。このセッションでは、XCTestを使用した、Xcodeのビルトインテスト機能について説明します。Xcode 11の新機能であるテストプランを使用してテストを準備し、異なる構成で実行する方法や、テストを自動化して効率的に結果を活用する方法についてご確認ください。
-
40:38 Core ML 3フレームワーク
Core ML 3は、これまでオンデバイスの機械学習では利用できなかった高度なモデルタイプに新たに対応しています。このセッションでは、モデルのパーソナライズにより、Appをパーソナライズできる度合いを大きく広げる方法について説明します。モデルをリンクさせる方法や、既存のモデルのコンバージョンに使うCore MLツールの向上点について、より深く理解していただけます。
-
34:34 優れたデベロッパの習慣
App開発を成功させるには、多くのことを習得する必要があります。このセッションでは、生産性を高め、Appのパフォーマンスと安定性を向上させるために、開発ワークフローに組み込むことができる手法を紹介します。Xcodeで記述するコードの品質を改善する方法や、有益な開発テクニックの実践的な例についてご確認ください。
-
-
WWDC18 -
35:25 Measuring Performance Using Logging
Learn how to use signposts and logging to measure performance. Understand how the Points of Interest instrument can be used to examine logged data. Get an introduction into creating and using custom instruments.
-
46:45 Appのアセットを最適化する
iOS 12の新機能を活用し、見た目も魅力的でデータ効率のよいアートワークをAppに組み込むために、アセットを使う方法について学んでいきましょう。アセットカタログを最大限に活用し、アートワークアセットを整理、最適化、制作する方法を紹介します。デザイナーとデベロッパの間のワークフローを効率化するテクニックについても紹介します。Appに美しいアートワークアセットを組み込み、対象ユーザーをさらに拡大するとともに、Appの配信を改善し、フットプリントを削減できるようにしましょう。
-
39:48 Xcodeでビルドスピードを上げる
Xcode 10でAppのビルドスピードを上げましょう。すべてのプロセッサコアを最大限に活用するために、プロジェクトを構築する方法やコードを調整する方法について紹介します。試しにコードを少しだけ調整してみる場合でも、リリースに向けて完全なAppをビルドしている場合でも、ご紹介するテクニックを活用すれば、Appのビルドにかかる時間を節約することができます。
-
38:13 Metalシェーダのデバッグとプロファイリング
Metalには、シェーダの動作を分析し、パフォーマンスを最適化するためのパワフルなツールが用意されています。このセッションでは、Xcodeの新しいジオメトリ表示機能を使った、Vertexステージに関する問題のトラブルシューティング方法について説明します。シェーダデバッガを使うと、Vertex、Fragment、Computeのシェーダの実行を行ごとに確認することができます。GPUへの負荷の分析に関する詳しい情報や、A11 Bionicのためのシェーダプロファイラの強化点についてご確認ください。
-
53:41 XcodeとLLDBでの高度なデバッグ
高度なテクニックや、Xcodeでのデバッグワークフローを向上させるためのヒントとコツを紹介します。また、LLDBとカスタムブレークポイントを活用したより高度なデバッグ方法や、Xcodeのビューデバッガツールを最大限に活用し、AppのUIの問題をより効果的に解決する方法についても紹介します。
-
55:40 カスタムInstrumentsの作成
カスタムInstrumentsのメリットや使用するタイミングについて紹介します。カスタムInstrumentsの構造やその作成方法に加えて、優れたInstrumentsの属性、高度なモデル化、CLIPS言語の使い方についても詳しくご確認いただけます。
-
33:35 Metal Game Performance Optimization
Realize the full potential of your Metal-based games by tackling common issues that cause frame rate slowdowns, stutters, and stalls. Discover how to clear up jitter and maintain a silky-smooth frame rate with simple changes in frame pacing. Get introduced to new tools for analyzing rendering...
-
51:28 iOSメモリについて理解を深める
Appのメモリ使用量に影響を与えているものを特定する上で、メモリグラフをどのように活用できるかを紹介します。1枚の画像にかかる実際のメモリコストについて学習し、Appのメモリ使用量を削減するヒントやコツについてもご確認ください。
-
57:17 クラッシュとクラッシュログについて理解する
Appの突然なクラッシュは、ネガティブなユーザー体験やApp Reviewでの却下の原因となります。クラッシュログを分析する方法、クラッシュログに含まれている情報、クラッシュの原因を診断する方法を学んでいきましょう。再現しにくいメモリ破損やマルチスレッドに関する問題などについても説明します。
-
37:27 テストのヒントとコツ
記述したコードが正しく動作するかどうかを検証する上でテストは欠かせませんが、コードにどうしても依存関係が含まれる場合があります。このセッションでは、そうしたテストしにくいコードでも、XCTestを使ってAppleプラットフォーム上でテストできるようにするテクニックについて紹介します。また、実行速度が高速でメンテナンスも少なくて済む、高品質なテストを記述するためのさまざまなヒントも紹介します。
-
-
WWDC17 -
54:37 Modernizing Grand Central Dispatch Usage
macOS 10.13 and iOS 11 have reinvented how Grand Central Dispatch and the Darwin kernel collaborate, enabling your applications to run concurrent workloads more efficiently. Learn how to modernize your code to take advantage of these improvements and make optimal use of hardware resources.
-
53:52 SceneKit: What's New
SceneKit is a fast and fully featured high-level 3D graphics framework that enables your apps and games to create immersive scenes and effects. See the latest advances in camera control and effects for simulating real camera optics including bokeh and motion blur. Learn about surface subdivision...
-
-
WWDC16 -
37:18 System Trace in Depth
Join engineers from the Instruments team for another focused look at the System Trace Instruments profiling template and how to get the most out of it. Discover how threads, virtual memory, and locking interact to affect performance. Dive deep for a practical look at how you can improve your...
-
41:15 Advanced Metal Shader Optimization
The Metal shading language is an easy-to-use programming language for writing graphics and compute functions which execute on the GPU. Dive deeper into understanding the design patterns, memory access models, and detailed shader coding best practices which reduce bottlenecks and hide latency...
-
35:41 Concurrent Programming With GCD in Swift 3
Swift 3 provides new interfaces that make it easier than ever to write applications with Grand Central Dispatch. Learn the basics of GCD and best practices on how to use it to architect your Swift application. You'll also hear about new APIs and other GCD improvements.
-
-
WWDC15 -
38:37 What's New in LLDB
Enhancements to LLDB simplify life for Swift and Objective-C developers alike. Experienced developers will find new powers within the debugging console, and learn more about the connection between the debugger and Swift REPL. Newcomers will get insight into the range of possibilities hidden...
-
35:40 Swift and Objective-C Interoperability
Discover new features that make it easier than ever to craft Objective-C APIs that work beautifully in Swift, as well as new Swift language features that provide even better interoperability. Apple engineers will also discuss enhancements to Apple's SDKs that improve the Swift experience.
-
40:27 App Thinning in Xcode
The app distribution pipeline is becoming more powerful and flexible. Learn to create full featured apps that are delivered to users devices with new App Thinning features such as slicing and ODR. See how to integrate these new features into your continuous integration and testing processes, and...
-
-
WWDC14 -
56:33 Ingredients of Great Games
Kick off the game development sessions of WWDC 2014 by gaining insight into the key ingredients needed to create a great game for iOS. Understand the importance of harnessing the full capabilities of the platform to create a richer gameplay experience. Get practical guidance about game production...
-