GitHub Copilot, Cursor, Devin, Claude Code ... 次々と登場する AI ツール。 「結局どれを使えばいいの?」という疑問があると思います。
アプリ開発業務でいくつかの AI サービスを使ってきた経験から、それぞれの AI サービスの「得意技」と「苦手分野」を解説。
さらに、それぞれの特性を活かした「ハイブリッドAI開発」の実践方法をお伝えします。
iOSアプリ開発におけるCI/CDの遅さに悩んだことがある方は多いでしょう。ビルドに10分以上かかる、キャッシュのダウンロードが遅い、そんな経験をお持ちではありませんか?私たちのチームもこれらの課題に直面し、試行錯誤を経てたどり着いたのが「Namespace.so」という高速CI実行基盤です。
Namespace.so を導入することで、ビルドやテスト時間を約2〜3倍短縮し、従来20分弱かかっていた実行時間を8分弱にまで改善することができました。本セッションでは、その導入プロセスと得られた成果、さらに実際に活用してわかったベストプラクティスや注意点をお話しします。
■ セッションの構成
■ 対象者
■ 得られる知見
このセッションを通じて、CI/CD改善に関する実践的なアイデアと手段を提供し、すぐに自チームで活用できることを目指します。
「プライベートリポジトリの SDK、アプリの CI でビルドが通らない...」そんな経験はありませんか?
本セッションでは、OpenID Connect 認証 SDK の開発を通じて得たプライベートリポジトリ配布の完全自動化手法を紹介します。Swift Package Manager でのバージョン管理、GitHub Actions による自動リリース、そしてアプリ側 CI での依存解決まで、実際に動くコードと設定ファイルを交えながら、明日から活用できる実践的なノウハウを提供します。
さらに、AI ツール (Cursor) を活用した効率的な SDK 開発フローや、DocC による自動ドキュメント生成など、モダンな開発手法も紹介。社内 SDK の開発・配布・メンテナンスに関わる全ての悩みを解決します。
みなさん一度は実践するであろう自作コンパイラ。触ったことがない人に取っては何をすればいいのか、何をしているのか理解されていないと思います。
現在、オープンソースで多くのコンパイラのコードはあり、仕組み自体理解することはおそらく可能でしょう。
時には自分の手でコンパイラを作ってみることも重要だと私は思います。しかも好きなプログラミング言語で。
一度その仕組みを理解し、自身の手に触れてみることは、プログラミング言語やコンピューターサイエンスへの理解を格段に深める貴重な経験となります。
このセッションでは、Swift言語を用いてC言語のサブセットをコンパイルするミニマルなコンパイラーを自作した経験から得られた知見を共有します。
実装を通して直面した課題と解決策、そしてコンパイラの各フェーズが実際にどのように動作するのかを、実践的な視点でお伝えします。
また、Swiftの表現力を活かしたコンパイラ開発の魅力も感じていただければ幸いです。
セッション内容:
Apple Intelligence の登場により、App Intent はアプリの機能を外部に公開する重要な基盤となります。しかし、「どのような機能を App Intent として提供すべきか?」という問いに多くのデベロッパーが直面しているのではないでしょうか。
本セッションでは、この課題に対し、Interactive Widget を「App Intent 活用の足掛け」と捉え、アプリを開くことなくウィジェット上で処理を完結させるための具体的な実装方法を解説します。
多くのwidgetでは必要な情報を表示するため活用されたり、アプリへのショートカット導線が提供されているケースが大半です。
Interactiveなwidgetがあれば、ユーザーはアプリ本体を起動せずにタスクを完遂でき、よりシームレスな体験を提供できます。
本セッションではAppIntent の基本的な仕組みや概要には深く触れませんが、Interactive Widget を通じて AppIntent を実践的に活用することで、将来的な Apple Intelligence 対応にも繋がる知見を得られるでしょう。Widgetだけですべてが完結する、新しいユーザー体験の構築に挑戦してみませんか?
このセッションで話すこと
「暑い日にスマートフォンを使っていて、アプリの動作が遅くなった…」そんな経験、ありませんか?
特に屋外で利用されるアプリにとって、端末の温度はユーザー体験を大きく左右する重要な要素です。スマートフォンが熱を持つと、アプリのパフォーマンスが著しく低下したり、一部の機能が制限されたりすることがあります。このような影響を把握しておくことは、快適なサービス提供のために非常に重要です。
本トークでは、Foundationフレームワークに含まれる ProcessInfo.ThermalState API に注目します。このAPIを使うことで、デバイスの熱状態を4段階で把握することが可能です。
今回は実際に屋外で使われるモビリティアプリにおいて、ThermalState が季節や時間帯、アプリの状態などによってどのように変化するのかなど、実測データとともに詳しくご紹介します。
さらに、熱状態に応じてアプリが取ることができる対策についても解説します。
スマートフォンを「熱中症」から守り、夏でもクールで快適なユーザー体験をお届けしましょう!
「暑い日にスマートフォンを使っていて、アプリの動作が遅くなった…」そんな経験、ありませんか?
特に屋外で利用されるアプリにとって、端末の温度はユーザー体験を大きく左右する重要な要素です。
スマートフォンが熱を持つと、アプリのパフォーマンスが著しく低下したり、一部の機能が制限されたりすることがあります。このような影響を把握しておくことは、快適なサービス提供のために非常に重要です。
本LTでは、Foundationフレームワークに含まれる ProcessInfo.ThermalState API に注目します。このAPIを使うことで、デバイスの熱状態を4段階で把握することが可能です。
今回は、実際に屋外で利用されるモビリティアプリにおいて、春から夏にかけてThermalStateがどのように変化するのかなど、実測データと共にご紹介します。
さらに、端末が高温になった際にアプリが取ることができる対策についても触れます。
スマートフォンを「熱中症」から守り、夏でもクールで快適なユーザー体験をお届けしましょう!
皆さん、サーバ側で時間がかかる処理のハンドリングや、進捗を表示する際、ついポーリングで実装していませんか?
弊プロダクトでもポーリングを採用するケースが多かったのですが、これからのプロダクトの進化に備えてSSE通信基盤をモバイルアプリで構築し、全面的に採用しました。
本セッションでは、Server-Sent Events(SSE) という2009年から存在する歴史の長い技術について詳しく説明し、ポーリングと比較した際のメリット、生成AIを活用したプロダクトにおけるUX向上の実例も交えて解説します。
「ポーリング以上、WebSocket未満」
そんな立ち位置のServer-Sent Events(SSE) がこの大LLM時代の流れに乗って知名度が上がり、普及されることを祈ってお届けします。
最近、一部のiPhoneでApple Vision Pro向けの空間写真や空間ビデオを撮影できるようになりました。しかし、「立体的に表示するにはApple Vision Proが必要で、あまり使っていない」という方もいらっしゃるのではないでしょうか?実は、Meta QuestやPICO 4といったHMDも対応していますし、Looking Glass Goを使えばHMDを着用せずに楽しむこともできます。
さらに、iPhoneの保護ガラスとしても機能するSpatialGlassを利用すれば、もっと手軽に空間写真と空間ビデオを楽しむことができます。本トークでは、空間写真と空間ビデオの基本概念の理解から始め、効果的な撮影のコツを共有し、撮影後の楽しみ方までを一気通貫でお伝えします。
※空間写真と空間ビデオの特性上、スライドではその魅力を十分にお伝えしきれないため、会期中にお声がけいただければ、いつでも実物をご覧に入れます。
iOS初期のスキューモーフィズムは現実世界を画面に写し取ることで触れたくなるデザインを生み出しました。iOS7ではフラットデザインへと進化し、画面内での抽象的な操作感が当たり前になりました。そして去年の登壇で私は、iOSらしさとは「画面上の要素が現実世界に近い挙動をしていること」だと話しました。私たちはこれまで、四角い画面の中にUIを閉じ込め、その中で現実世界に近い挙動を再現してきました。
そして今、Apple Vision Proの登場やLiquid Glassのような技術によって、画面という枠の存在感が薄れ、UIは現実世界とソフトウェアが直接つながる存在へと変わりつつあります。
この登壇では以下の内容をお伝えします。
Appleの新しいデザインシステムがどのように「空間に馴染むデザイン」へ進化しているか
iOS26で変わった光の扱いやマテリアルの表現、奥行き感の演出など、具体的なUIデザイン要素を解説します。
画面がありながらも空間に馴染むデザインを目指している、いま私がつくっているプロダクトの紹介
顔認証やドア前での会議室予約を行う常設型アプリのUI設計では、ユーザーの手元にデバイスがあるわけではないため、空間に自然に馴染むデザインが求められます。その中で実践したUI設計の工夫や試行錯誤を共有します。
画面という枠がなくなる未来を見据えた体験設計のヒント
画面内だけでなく周囲の物体や光、空間の広さなど現実世界の制約を踏まえたUI/UX設計で何が求められるかを考察します。
現実世界と一体化したデザインを目指してプロダクトをどう進化させていくか、一緒に考えていきましょう!
Apple Vision Proの登場により、Safari上で動作するWebXRの可能性がますます広がっています。
本セッションでは、WebXR Device APIの基本とともに、Safari on visionOSとSafari on iOS間で体験できるWebXRの違い、Meta Quest Browser とのAPI対応差を整理しながら、Apple Vision Proならではの“Spatial Web”体験を掘り下げます。
可能性は広がりましたが、まだできないこともあるので何ができて・何ができないかを明確にします。
さらに、WebKit公式ブログで発表された visionOS 26(Safari 26)で強化される新機能にも触れ、空間表現の可能性が今後どう広がるのか、予想される今後の展望を解説します。
ネイティブアプリとの棲み分けを意識しつつ、来たるべき“Spatial Web”時代に備えるための視点を提供します。
皆さん、最近健康診断は受けましたか?
実はアプリでも健康診断は行われているんです。
起動時間やHang率など、パフォーマンスデータは自動で記録されています。
ただし、それを確認するにはXcode Organizerを開いて自分で見に行く必要があります。
でも、わざわざ開くのは面倒だし、忙しいとつい忘れてしまいます。
そのまま見逃してしまえば、アプリからのSOSに気づけないままに…。
・バッテリー消費が激しい
・スクロールがカクつく
・画面がフリーズする
こうした不調が続けば、ユーザーのiPhoneからあなたのアプリが静かに削除されてしまうかもしれません。
本トークでは、App Store ConnectAPI × GitHub Actions で構築する自動パフォーマンス監視体制について、5分で解説します。
Next Talk's HINT:
・App Store ConnectAPI(perfPowerMetrics)
・GitHub Actions
・Xcode Organizer
現代のiOSアプリ開発において、インデントは4スペースではなく2スペースが選択されていくべきであり、将来的には4スペースを使っているのはレガシーコードの匂いがするようになる、という話をします。
まず、2スペースの長所と4スペースの短所を明確にし、世界のSwiftスタイルガイドやOSSプロジェクトでの2スペース選択状況を解説します。さらに、個人プロジェクトで2スペースを導入する具体的な方法についても実践的なアドバイスを提供します。
このセッションの後には、4スペースを疑いもなく使うということはなくなり、思い込みを捨て2スペースを採用する参考になれば幸いです。
SwiftUIを使っているあなたは 実はすでに関数型プログラミングに入門しています 。なぜならSwiftUIの宣言的なUI記述は、関数型プログラミングの宣言的アプローチをUI構築において採用したものだからです。
UI構築における宣言的アプローチの「どのように描画するか」ではなく「何を表示するか」を記述する思考法は、複雑さを排除して予測可能性を高める関数型プログラミングの戦略と同じと言って良いでしょう。しかし多くの開発者はUI以外のコードでは手続き型の書き方に戻ってしまいます。もしビジネスロジックやデータ処理、またはテストコードでさえも関数型プログラミングの宣言的アプローチを使えば、「どのように処理するか」でなく「どのような結果が欲しいのか」を明確に記述でき、コードの予測可能性と可読性を向上させることができます。
これからはAIがコードを書いていく時代でもあり、AIに的確かつ多くの指示を出していきコーディングをしていくことは逃れられません。しかし、AIへ宣言的アプローチを使わせず低い可読性のコードを生成させる場合、コードをレビューをするあなた自身がボトルネックとなるはずです。もしくは、コードをレビューをせず何も考えずにAIに言われるがまま、良さげな結果のガチャを引き続けることになるのでしょうか。しかし、そんなやり方でソフトウェア開発を楽しめると思えますか?あなた自身は到来するAI時代に確固たる自信を持つタイミングはくるのでしょうか? なぜあなたはSwiftを使っているのにUI以外でも関数型プログラミングをしていないのか、いますぐやるべきではありませんか?
このセッションでは、SwiftUIで慣れ親しんだ宣言的アプローチを他の領域にも拡張する具体的な手法とメリットをビフォーアフターとともに解説します。
プロジェクトごとのXcode設定調整の煩わしさを解消し、チーム内でのフォーマット不一致や記述ルールの食い違いに終止符を打ちませんか?
コードスタイルの一貫性は、可読性向上、オンボーディング効率化、そしてチームの健全なコミュニケーションに直結する「チームの調和」の要です。
これまでのXcodeでは、コードスタイルの統一を手動で行うことが多く、この運用は負荷が高いという課題がありました。
しかし、Xcode 16から待望の.editorconfigが標準搭載され、Xcodeはプロジェクトのルールに則った賢いエディタへと進化しました。
本セッションでは、この革新的な変化を徹底解説します。
.editorconfigの基本から、Xcode 16でサポートされる全プロパティについて解説し、各プロパティがコードにどのような自動整形をもたらし、「完璧なコードスタイル」を築くのかを、コード例やデモを通じて視覚的にご紹介します。
特に、大規模プロジェクトでインデントスペースを4から2に統一する際に直面した、数万行規模の変更に伴うコンフリクト回避とその解決策に焦点を当てます。
ゴールは、Xcode 16の.editorconfig活用により手動設定の煩わしさから解放され、堅牢で美しいコードベースを効率的に維持できる開発環境を手に入れることです。あなたのチーム開発に「完璧なコードスタイル」と「真の調和」をもたらす第一歩を踏み出しましょう。
広島という地方生まれの私がパソコンを触るようになったのはExcelでお小遣い管理を始めたのがきっかけでした。そこからVBAを触ったりブログを作ったり、Webサービスを開発するようになりました。最初は書籍を通じて学べていたものの、次第に相談できる人が必要になりました。でも周りに詳しい人はいませんでした。
そんな時出会ったのが地域のITコミュニティでした。
メンバーに相談していく中でカンファレンス運営に携わる機会やインターンを紹介して頂くこともできました。
今、僕が都内でiOSエンジニアとして働くことができるようになったのはコミュニティ活動によるものが大きいと実感するようになりました。
上京や転職など私の人生に大きく影響しているITコミュニティ活動について変遷を紹介します。
iOSDCをはじめとするカンファレンスやSwift愛好会などのコミュニティなどは基本的に有志のメンバーが活動・運営しています。
このセッションを通して少しでもコミュニティに興味を持っていただけると幸いです。
日々の開発作業でシミュレータを操作する際、細かな手間が積み重なって、貴重な時間を奪われていませんか?
「ダークモードの表示を確認したいだけなのに、ホーム画面に戻って、設定アプリを開いて、デベロッパメニューをタップして…。」
「プルリクに添付する動画を撮りたいけど、QuickTime Playerを起動して、収録範囲を選ぶのが地味に手間…。」
そんな、誰もが経験する「ちりつも」な手間に、貴重な開発時間を奪われていませんか?
もし、その面倒な操作がキーボードショートカット一発で片付いたら、どうでしょう?
例えば、あれだけ手間だったダークモードとライトモードの切り替えも、たった一つのコマンドで瞬時に行えます。
本トークでは、このように日々の動作確認を劇的に効率化する、選りすぐりのショートカット術をデモを交えて紹介します。
画面の回転やスクリーンショットといった基本技はもちろん、意外と知られていない2本指操作やシェイク操作など、知っているだけで開発体験が格段に向上するテクニックを厳選しました。
このセッションを聴き終えれば、あなたはもうマウスに頼ることなく、キーボードだけでシミュレータを自在に操れるようになります。開発をもっと快適に、もっと集中できる時間にしましょう。
※ 本セッションは非常に真面目な内容となっております
iOSアプリ開発において画像リソースを格納することは多々あるかと思います。
でもその格納するファイルの形式や内部の構造について正しく把握していますでしょうか。何も考えることなくPDFやSVG形式にしていませんか?
ファイル形式や方法を間違えるとたった100KBの画像を格納したつもりでも、アプリサイズを30MB増えたりする可能性もあります。
本セッションでは、普段何気なく利用している画像リソースの拡張子や格納方法について現時点のベストプラクティスを探求し、効率的な格納方法を見つけ出していきます。
Swift OpenAPI Generatorは、Appleがオープンソースで開発を主導するOpenAPIから関連コードを自動生成するツールです。
このテクノロジーの魅力は、既存のツールと比べてよりSwiftらしい型による安全な表現が実現できる点にあります。
しかしながらSwift OpenAPI Generatorへの移行には、注意すべき点が複数あり、必ずしも簡単とはいえません。具体的には、次のような点に注意が必要です。
ローカルのモックサーバーへの接続時の注意事項
ローカル環境でのモックサーバー接続の際に発生しやすい問題点を特定し、それに対する具体的な対策を説明します。
エラーのハンドリング
よくあるエラーケースを紹介し、それらをどのように効果的に処理するかについて解説します。
生成された型のドメインモデルへの変換
自動生成された型をアプリケーションのドメインモデルに効果的に統合するための手法を紹介し、コード例を交えて具体的に説明します。
このセッションでは、上記の課題に対する知見を共有し、参加者が実際にSwift OpenAPI Generatorを導入する際の手助けとなることを目指します。
筆者はiOS開発についての技術記事を5年ほど継続的に書き続け、2025年には「iOS開発の教科書」という電子本を執筆するに至りました。本セッションではiOS開発という枠組みを超えて、テクニカルライティング(技術的な内容の文章作成)についての実践知を共有します。テクニックに関しては他にもっと専門的に論じられているものがあるので、モチベーションの部分を厚めに話します。
技術発信をしてみたいが躊躇している方の後押しになるのはもちろん、そうでもない方でも日常の技術情報の伝え方の改善につながる内容になるかと思っております。