iOSDC Japan 2019
2019年9月5日開催 / 発表資料 82 本
Takanori Hirobe
SwiftのStringがUnicodeをどう扱い文字数を数えるかを解説。添字アクセスが直感的でない理由とその設計思想が理解できる。
FromAtom
iOSの画面収録ライブ配信をReplayKit2とUpload Extensionで作る方法の解説。約50MBのメモリ制限などハマりどころとデバッグのコツが分かる。
Tomohiro Suzuki
C#でiOSアプリを作るXamarin.iOSで、メモリーリークが起きやすい理由と検出の苦労、ネイティブとマネージドの関係、SwiftやObjective-Cの理解の必要性を語る。
所友太
UIStoryboardSegueの基本からUnwind Segue、Xcode 11のIBSegueActionまでを凝縮して紹介。Segueの使いどころと魅力が分かる。
ようせい
音声配信サービスRadiotalkで、音声を書き起こしてテロップ動画にする機能の開発事例。音声解析や動画合成の方法、エディタのUI設計が分かる。
417.72KI
ダックタイピングとObjective-Cのid型を組み合わせ、protocolでラップせずにUserDefaultsをテスト用オブジェクトへ差し替える手法と、その考え方が分かる。
- めくるめくシェーダアートの世界スライド動画
Youichi Takatsu
GPUシェーダでピクセルの色を決めて描くシェーダアートの原理と基本テクニックを解説。距離場やレイマーチング、インタラクティブ表現のデモも見られる。
- ライブラリのインポートとリンクの仕組み完全解説スライド動画
Kishikawa Katsumi
ライブラリのインポートとリンクの仕組み、静的・動的の違いを解説。リンクエラーを論理的に切り分け、パッケージ管理ツールを使いこなせるようになる。
- 縦書きエディタを6プラットフォームで開発してみてスライド動画
六々
6プラットフォーム対応の縦書きエディタ開発を通じ、文字コードやフォント、自前描画、IME対応などクロスプラットフォーム開発の知見が得られる。
- 色の難しい話に負けない体づくり60分スライド動画
しもとり
コントラスト比、色覚多様性、ダークモード、色空間など、光と色の基礎知識を整理し、AppleのHIGなどのガイドラインの意図を理解して色を正しく扱えるようになる。
- ランチセッション動画
CREW
ランチタイムに行われたスポンサー等によるセッション。具体的な内容は概要に記載がない。
shiz
Swiftで書き方に迷う場面を題材に、クリーンコードとは何か、なぜ必要か、どう書くかを考え、状況ごとに根拠を持って書き方を選べるようになるための話。
WASEDA-EDGE人材育成プログラム事務局長 朝日透
WASEDA-EDGEの活動を踏まえ、次世代の技術者へ向けたメッセージを伝えるセッション。詳細な概要は未掲載。
kariad
Xcodeでブランチカバレッジが取れない理由を、Swiftのカバレッジ計測の仕組みから解説し、計測の可否や代替策が分かる。
白山 文彦
AWS Device FarmでiOS実機テストを行う手順と、XCTest・XCUITestの実行、CI/CD組み込みで実機管理の負担を減らす方法が分かる。
EAGLYS株式会社CSO 丸山祐丞
秘密計算でデータを暗号化したまま処理する仕組みと、その安全性、サービスへの応用の可能性を紹介するセッション。
株式会社Genics・代表取締役 栄田源
日常生活で使うロボット製品に適したユーザーインターフェースのあり方を考えるセッション。詳細な概要は未掲載。
日向強
iOSとAndroidのBLE内部処理を読み解き、比較的大きなデータを安定して送る最適化方法と、L2CAPによる通信の可能性が分かる。
Tomoki Kobayashi
LOGO由来のタートルグラフィックスをSwift Playgroundsで動かす実装と、Playground Bookの作り方・配布方法、公開後の反響が分かる発表。
合同会社Yspace共同代表/慶應義塾大学 日高萌子
宇宙開発の現場で使われる最新テクノロジーを紹介するセッション。詳細な概要は未掲載。
栗山徹
UIImage、CGImage、CIImageの特徴と使い分けを解説。OpenCV連携や、リアルタイム画像処理の性能改善事例から、適切な選び方が分かる。
Project VLEAP. 共同代表・CTO 新保正悟
VLEAP.の取り組みと、VRが近い将来にもたらす未来像を語るセッション。詳細な概要は未掲載。
ダンボー田中
FatViewControllerを自動テスト前提で安全に書き換える難しさと、現実的な手法およびどの痛みを許容したかの判断が分かる。
Kesin11
App Storeのリジェクトを防ぐため、審査ガイドライン遵守を自動チェックするFastlaneプラグインの開発事例。チェック項目やQA連携の方法が分かる。
- クロマキー合成を使い透過動画をAR空間に表示するスライド動画
satoshi0212
クロマキーシェーダーでARに透過動画を表示する実装を解説。60fps・音声付きで滑らかに再生する工夫やリアルタイム映像の扱いが分かる。
- サービスにおけるデザインシステムの構築スライド動画
nakajijapan
モバイルアプリにデザインシステムを導入した経緯と進め方を解説。カラー管理の自動化や画像管理など、エンジニア側でできる取り組みが分かる。
稲見 泰宏
Curry-Howard同型対応を軸に、Swiftの型とプログラムが論理の命題や証明に対応する仕組みを、圏論の図式も交えて理解できる。
ロクネム
定期購読型のApp内課金Auto-Renewable Subscriptionsの実装でのつまずきやノウハウ、StoreKitの使い方、サーバー設計、WWDC19のサーバー間通知の新仕様を解説する。
- 今こそ理解しよう、輸出コンプライアンススライド動画
坂本 和大
App Store申請時の輸出コンプライアンス質問に、HTTPSやEAR免除の扱いも含めどう答えるべきかをフローチャートで5分解説する。
- 日本のサマータイムに苦しめられた話スライド動画
uhooi
1948〜51年に日本で実施されたサマータイムが原因でiOSアプリが強制終了した不具合の調査と対応を時系列で紹介し、日付処理で注意すべき境界日時が分かる。
Sho Ikeda(いけしょー)
Xcode 11のXCFrameworksの構造と作成方法、従来の.frameworkの配布上の問題をどう解決するか、導入理由の推測が分かる。
darquro
Swift 5のProperty Delegatesの仕組みと、State・UserDefaults・Validationの実装例を紹介。ボイラープレート削減や設計での役割が分かる。
クウルス
Xcode 10.2で登場したLLDBのvコマンドの使い方を解説。poコマンドとの違いを知り、不具合の原因特定を速くするデバッグ手法が分かる。
bannzai
Objective-Cの動的なメソッド呼び出しで誤ったメッセージを送った際のクラッシュと、その復帰策をユーモアを交えて解説する。
- Core MLで実現する爆速のARサイズ計測スライド動画
Kohei Arai
Core MLで測定点を推定し、ARKitで実寸を得るTシャツの自動サイズ計測プロトタイプ。精度とその改善方法、使ったモデルの知見が分かる。
Kuniwak
Configuration ProfileでできるiOS設定変更と、アプリからそれをインストールする方法が分かり、環境構築を楽にするヒントが得られる。
akutsu
プッシュ通知の許諾率を17%から40%に改善した事例。許諾ダイアログ周りでiOSエンジニアが陥りがちな落とし穴と解決策が分かる。
kiwi
AWSのAmazon Pinpointでセグメント別のプッシュ通知を配信する方法。Lambdaによるカスタマイズや複数チャネルの使い分けが分かる。
- SOLID原則を生活に適用するスライド動画
takasek
SOLID原則を部屋掃除やドキュメントなど日常の事例に当てはめるLT。原則への理解が深まり、設計の「におい」を見抜く感覚が養われる。
Hiroyuki Aoki
Apple標準機能のみで同一のmacOS開発環境を素早く用意する方法と各手法の特徴、OSバージョンアップで生じる課題が分かる。
Takeshi Ihara
動画アプリの投げ銭用アプリ内通貨を消耗型課金でネイティブ実装した経験を、他の課金方式と比較しながら仕組みと注意点が分かる。
Matsui Mai
テスト未経験のエンジニアが、5年もののObjective-C中心のレガシーiOSアプリにユニットテストを導入した奮闘記。最初の一歩の踏み出し方が分かる。
ろく
入門書を終えた初心者が中級へ進むために1年間で実践した学び方と得られた知見を紹介し、iOS開発の世界を広げる行動のヒントが得られる。
NESS
家具ECサイトにAR Quick LookとUSDZを導入した事例。仕組みや3Dモデリング、実装のコツ、ユーザー体験とコンバージョンへの効果が分かる。
- tvOS 13にちょっと注目してみるスライド動画
redryerye
WWDC19で発表されたtvOS 13の新機能を整理し、TVServicesの変更点やUXのベストプラクティス、没入感ある体験の実装方針が分かる。
Jumpei Ono
iOSエンジニア向けに、スマホ連携しやすいマイコンの選び方と基板の設計・発注方法を紹介し、自作IoTガジェットの始め方が分かる。
ahiru_starrr
個人開発アプリを100万DLに伸ばした経験から、App Storeの検索やランキングの仕組み、ASOなど費用をかけずに利用者を増やす方法が分かる。
アマゾネスいけばた
CallKitを初めて実装した際に詰まった点、データ扱いや設定画面の不具合、機能停止などの苦労と対処を共有する体験談。
- GitLabRunnerで始める自前CI環境スライド動画
i.terasaka
GitLab RunnerをiMacで動かす自前CI環境の構築例。テスト実行やDeployGate配信、ストア提出の自動化、設定例とつらみが分かる。
- Swiftでつくるファミコンエミュレータのススメスライド動画
thara
Swiftでファミコンエミュレータを作る体験談。低レイヤー開発の楽しさと、最初の一歩を踏み出すきっかけが得られる。
- 値オブジェクトへのCodable対応スライド動画
maguhiro
ID等を値オブジェクトで型分けして取り違えを防ぎつつ、Codableでの変換に対応する工夫が分かる。
アンカンファレンス
自作の二つのSwiftUIライブラリの実装と、そこから生まれた新しいアーキテクチャパターンを扱うアンカンファレンス発表。
- スナップショットテスト実戦投入スライド動画
imaizume
スナップショットテスト導入でQAコストを減らした事例から、API・状態のモック化など必要な準備や導入判断の材料が得られる。
tarunon
Autolayoutの曖昧なレイアウト(Ambiguous Layout)をテストケースで自動検出し、コンパイラやレビューでは防げない性能劣化を防ぐ手法が分かる。
Yuta Koshizawa
Value SemanticsとProtocol-Oriented ProgrammingをSwift 5.1時代の視点で整理し、SwiftUIを使いこなす土台となる理解が得られる。
我妻幸長
ディープラーニングを超える自律的なAIの可能性を、脳科学や統合情報理論から考察し、アプリに「意識」を持たせるアルゴリズムの方向性が分かる。
アンカンファレンス
iOS版クックパッドアプリのコードを公開しながら質問に答えるアンカンファレンス。大規模アプリの実装の実態に触れられる。
行木 千春
カスタムInstrumentsの作り方を解説。アプリ内イベントを可視化してログ送信やAPI呼び出しの問題、性能ボトルネックを見つけられる。
- モバイル決済アプリの作り方スライド動画
kenmaz
モバイル決済アプリ開発の技術トピックをiOS開発者視点で紹介。Apple Pay、QRコード決済、本人確認、セキュリティ対策と今後が分かる。
- ランチセッション動画
Bitrise
ランチタイムに行われたスポンサー等によるセッション。具体的な内容は概要に記載がない。
アンカンファレンス
カンファレンスの撮影をテーマにした、カメラマン向けのアンカンファレンスセッション。
- TBD動画
@hak & @tomzoh
タイトル・概要ともにTBDで内容未定の発表。内容が確定していないため、詳細は不明。
satoshin21
iPhoneのカメラが光を取り込み画像にするまでの仕組みを解説。F値・ISO・被写界深度やRAW現像、iOSでのマニュアル撮影アプリの作り方が分かる。
noppe
ソーシャルライブでのデジタル化粧の需要と仕組みを学び、高価なSDKを使わずMLとMetalで実装する方法が分かる。
- 今こそwatchOSスライド動画
堤 修一
性能向上やIndependent App対応で、watchOSアプリ開発が初期よりどう可能性を広げたかを解説し、今のwatchOS開発の現状が分かる。
monoqlo
TwilioとCallKit/PushKitで音声通話機能を実装した知見の共有。使い方、デバッグ手法、Twilioの回避策、CallKitのバグへの対処が分かる。
- SwiftyMath で学ぶ数学(抽象代数学)スライド動画
さのたけと
SwiftyMathのコードを題材に、群・環・体などの抽象代数学をprotocolやstructで実装しながら学ぶ入門。Swiftの知識で数学概念を理解できる。
- すべての人のためのアクセシビリティ対応スライド動画
akatsuki174
iOSのアクセシビリティ機能と実装方法を、視覚・聴覚・身体の観点から解説。VoiceOverや文字サイズ対応など、全ユーザーの体験向上につながる対応が分かる。
- 多言語対応と戦う 2019年版スライド動画
matsuokah
多言語対応で直面する装飾文字、レイアウト変化、画像内文字などの課題と、翻訳SaaS活用を含む運用フロー・デバッグ手法が分かる。
y.imajo
RxSwiftのコードを参考に最小限のリアクティブフレームワークを自作し、Cold/Hot、Subjectなどの仕組みを根本から理解できる。
hiragram
TrueDepthカメラとARKitでVTuber向けの表情トラッカーを作った事例。Webカメラ方式より高精度な理由と運用面の利点が分かる。
かっくん
個人アプリにiOS 13以前からDark modeを自前実装した経験談。考え方や実装手順、iOS 13対応、表示崩れ修正で苦労した点が分かる。
rikusouda
Swiftのスタック変数がCPUレジスタとどう関係するかを、LLVM IRやARM64アセンブラを読んで調べた体験談。低レイヤの調べ方と結論が分かる。
nade
モノレポで複数アプリをリリースする際のCI連携やhotfix反映の課題と、Gitブランチ運用で事故を防ぐ実践的な方法が分かる。
くろるり
SwiftUI時代に備え、既存アプリで今できるコンポーネント化、プレゼンテーションとドメインの分離、依存性注入の3つのリファクタリングが分かる。
shibatom
ARKitで特徴量の少ない壁が認識できない問題に直面した経験から、壁にARポスターを貼る方法やARKit開発のTipsが分かる。
- iOSDCのプロポーサル判別器をつくろうスライド動画
Daiki Matsudate
過去4年分のiOSDCプロポーサルを使い、採択されるかを判定する判別器を作る試み。データ作成から判別までの流れが分かる。
niwatako
暗号資産の法改正に向け、エンジニアが法律を学び提言を行う活動の紹介。法律もコードと捉え、社会を変えるために開発者ができる関わり方を考える。
kateinoigakukun
Swift on WebAssemblyのランタイムがどう実現されているかを概説し、Kotlin NativeやRustに比べて対応が難航している理由と現状が分かる。
- これデフォルトで作れないんだ!?を解消した話スライド動画
m-naruse
デザイナーの要求とiOS標準UIのギャップによる無理な実装を減らすため、あるあるな要求の考察と解決策、UIレシピブックアプリを紹介する話。
Hiroshi Shikata
高さ可変セルのフィードやチャット画面でスクロールがカクつく原因と、なめらかにする実装方法を5分で学べる。
- 令和時代のゲームボーイ開発 👾スライド動画
ぎぎにゃん
発売30周年のゲームボーイを題材に、実機で動くゲームを開発する方法と、最新技術での楽しみ方を紹介する。