採択
2018/08/31 17:10〜
Track B
レギュラートーク(15分)

差分計算アルゴリズムを用いた高速なUITableView描画

fumito_ito fumito-ito

UITableViewをいかに高速に描画、更新するかはiOSアプリケーションの実装において頻繁に遭遇する問題です。

本セッションでは単純な reloadData を用いた場合と差分計算アルゴリズムを用いた場合で実際にどの程度の差が生じるのか検証した結果を提示します。
また、複数の差分計算アルゴリズムとその実装を比較することで、それぞれの実装が適しているケースを提示します。

採択
2018/08/31 17:10〜
Track D
レギュラートーク(15分)

プロトコルでStoryboardともっと仲良くなる

417_72ki 417.72KI

Storyboardの扱いでしばしば挙げられる問題点の1つとして、文字列を扱う事によるtypoや変更への弱さが挙げられます。
ここではProtocol Oriented Programmingを用いて、そのデメリットをできる限り解消していきます。

採択
2018/08/31 17:40〜
Track A
レギュラートーク(30分)

レガシーなアプリケーションの60fps化を目指す為にやっていること

satoshin21 Satoshi Nagasaka

私の現在担当しているアプリケーションはファーストリリースから早5年が経過しようとしています。
しかし、ユーザの求めるサービス、そして何よりUI/UXへの期待値は5年前とは比べ物にならないくらいに上がりました。
ユーザの期待を裏切らない為に、我々iOSチームがfpsを一つの指標に置いてUI/UX改善の為に行っている事、またこれから改善していきたい事についてお話します。

採択
2018/08/31 17:40〜
Track B
レギュラートーク(30分)

Swiftの生みの親によるasync/await for Swiftを徹底解説し、新しい非同期処理の手法を理解する

yimajo 今城 善矩

Swiftの生みの親、クリス氏によって2017年8月にプロポーザルasync/await for Swiftの下書きが公開されました。その内容はコルーチンサポートで、我々はSwiftで非同期処理をより使いやすく読みやすいコードを書けるようになります。このトークはその内容を理解するために、様々な言語で使われるasync/awaitの比較分類、Swift3から使えるasync/awaitライブラリの利用例とその内部実装を解説します!

採択
2018/08/31 17:40〜
Track C
レギュラートーク(30分)

GraphQL on Swift

bird_tummy tummy
このトークはスピーカー都合でキャンセルになりました

apollo-ios や GraphQLSwift/GraphQL といったライブラリを使うと、GraphQL を使ったクライアントアプリや GraqhQL サーバを実装することができます。
このトークでは、クライアントとサーバの両面から GraphQL について触れつつ、ライブラリを利用した実装方法や実際にプロジェクトで利用した際の注意点などをお話できればと思います。

20
採択
2018/08/31 17:40〜
Track D
レギュラートーク(15分)

iOS×React Nativeのハイブリッド開発現場から伝えたい事

hotchemi Shintaro Katafuchi

QuipperではSwiftとReact Nativeのモジュールを組み合わせてiOSの開発を進めています。
標準を外れた開発体制には数多くの困難が付きまといますがそれらに取り組んでいって得られた知見をお伝えできればと思います。

Agenda:

  • 同期
  • どこから導入を進めていったか
  • 直面した課題
    • データの同期
    • Navigationの実装
  • チーム体制
  • ハイブリッド開発はアリか?
採択
2018/08/31 18:00〜
Track D
レギュラートーク(15分)

Haptic Feedback による効果的なマイクロインタラクション

tdksk Keisuke Tada

登場から早2年、もはや Haptic Feedback も含めた UI が必須と言っても過言ではありませんが、効果的に用いている事例もまだ多くないのが現状です。このトークでは、具体的な事例や HIG などから、効果的な Haptic Feedback のための考え方や、具体的なガイドライン、また、実装の tips も取り上げます。このトークを聞けば、誰でもすぐに効果的な Haptic Feedback を組み込むことができるはずです。

採択
2018/09/01 10:50〜
Track A
レギュラートーク(15分)

iPhone が数秒おきにクラッシュするんだけど!

watura watura

2017年12月1日朝起きたら,Zaim のせいでiPhoneがクラッシュすると Twitter 上で騒がれていました.
前回のリリースから多少は時間がたっていたし,そもそもアプリが iPhone をクラッシュさせるなんてできるの?
本当にZaimのせいだったのか,そもそも何が起こっていたのか.何が原因だったのか.
わかったこと,推測できたこと,喋っても問題なさそうなこと喋ります.

採択
2018/09/01 10:50〜
Track B
レギュラートーク(15分)

In-App Purchase再考 ーサーバサイドエンジニアの運用経験と他決済手段との比較を添えてー

ohbarye ohbarye

Quipperが開発する学習サービス「スタディサプリ」ではIAP(アプリ内課金)による支払いが可能です。IAPは同サービスで高いシェアを持つ人気決済手段ですが、運用者の立場では他の決済手段と比べて不満がないわけではありません。このトークでは以下のトピックを通じてiOSアプリでの課金手段について再考します。

  • サーバサイドエンジニアとしての決済運用経験(障害、サポート)
  • 他の決済手段との比較(決済手数料、管理画面の使い勝手)
採択
2018/09/01 10:50〜
Track C
レギュラートーク(15分)

iOSでSwitchの複数ディスプレイ配置調整を実装してみた

henteko07 へんてこ

先日任天堂から発表されたマリオパーティーのゲーム内で実装されている、複数のSwitchを並べた時にディプレイ間の位置を調整する素晴らしい機能を、iOSでも実装した結果を発表します。
リリースするアプリでこの技術を使おうとすると既に任天堂が特許を持っているので注意が必要です。

採択
2018/09/01 11:20〜
Track A
レギュラートーク(30分)

詳解Fastfile

giginet ぎぎにゃん

プロジェクトが大規模化していくと、さまざまな業務を自動化したくなってきます。同時にロジックが増え、特定の人しかメンテできなくなったFastfileにお悩みの方も多いでしょう。

このトークでは、実際の活用事例を交えながら、大規模プロジェクトにおける効果的なFastfileの書き方、プロジェクトの雑務自動化についてをお話しします。
そのほか、fastlaneコミッターによる明日から使える実践的なtipsも数多くお伝えします。

採択
2018/09/01 11:20〜
Track B
レギュラートーク(30分)

東急ハンズのP2Pレジ間通信2018

r_plus taiki komaba

東急ハンズのレジは内製開発のiPadアプリで動いています。
そんなレジ用アプリはアプリ間で様々な情報を交換しています。

レジ間を飛び交う通信内容や通信方式の現在に至るまでの変遷を紹介します。

採択
2018/09/01 11:20〜
Track C
レギュラートーク(30分)

二癖くらいある画面収録からの生放送

matsuokah_ matsuokah

iOS11から可能になった画面収録で生放送機能を実装し、サービスインするまでの実装

  • 生放送のするまでの全体フロー
  • RPBroadcastSampleHandlerおよび、画面収録のExtensionのライフサイクルについて
  • 画面のサンプリングタイミングと生放送の特性について
  • SampleBufferの差し替えによる、生放送中の動画の動的な編集
  • 動画データの検証ポイント
採択
2018/09/01 13:30〜
Track A
レギュラートーク(30分)

Depth in Depth

shu223 堤 修一

原始のiPhoneからカメラは搭載されていましたが、深度センサが搭載されたのは比較的最近のことです。カメラやGPSが、デジタルの世界と我々が生きる現実世界を繋ぐ重要な役割を担い、アプリ開発者に多くの創造性を与えてくれたのと同様に、「奥行き」がわかるようになったというのはアプリ開発の次元がひとつ増えたようなものです。本トークではiOSでの深度の扱いについて、取得方法だけではなく、細かいパラメータの意味やMetalでの処理まで詳解します。

採択
2018/09/01 13:30〜
Track B
レギュラートーク(30分)

Auto-Renewable Subscriptionsを5年間運用した歴史から学ぶ注意点

yuutetu 加賀江 優幸

私の担当するアプリでは、Auto-Renewable Subscriptionsを長らく運用してきました。
しかし、その運用を続ける上でぶつかった問題も多くありました。
Auto-Renewable Subscriptionsの運用事例を元に、ユーザにとって最高の形でプレミアムな機能を提供するために学んだことについてお話します。

採択
2018/09/01 13:30〜
Track C
レギュラートーク(15分)

Charles でネットワークデバッギング

kumamo_tone Kazumasa Kumamoto

「API から何が返ってきているかわからない」「色々なパターンの返り値の表示を見てみたい」といった経験はないでしょうか?

Charles なら、通信の中身を確認することができるだけでなく、リクエスト/レスポンスの編集、リクエスト先の変更など、アプリ開発のデバッグに便利な機能を使うことができます。

この記事では Charles を使ったことがない人向けに、 Charles の基本的な使いかたと使いどころについてご紹介します。

採択
2018/09/01 13:30〜
Track D
EDGE紹介

EDGE NEXT × D-DATaの相乗的人材育成プログラムの威力

早稲田大学理工学術院 教授 朝日 透

研究開発成果やアイデアを基にして起業する人材であるアントレプレナーやリーディング企業において新事業創出に挑戦する人材であるイントラプレナーの育成を持続的展開できるエコシステムの構築を目的としたEDGE NEXTプログラム( https://ssl.waseda-edge.jp/ )、および「ビジネス力×データサイエンス&データエンジニアリング力」を備えた博士人材を社会に送り出すことを使命としたD-DATaプログラム( https://d-data.jp/ )の取り組みとその相乗的連携により始まる新しいプログラム「アントレプレナー養成海外武者修行プログラム」についてご紹介します。

採択
2018/09/01 13:50〜
Track C
レギュラートーク(15分)

Plasma - gRPC streamを利用したリアルタイムなユーザー体験

ra1028fe5 Ryo Aoyama

時は2018年未だに定期ポーリングを使った画面更新でリソースを無駄遣いしていませんか?
FRESHではgRPC streamを利用し、サーバープッシュ方式でイベントを受け取る事ができるミドルウェアPlasmaを開発し、リアルタイムで快適なユーザー体験を提供しています。
このトークでは、Plasmaについて実際の利用例を紹介しながらお話します。

採択
2018/09/01 14:00〜
Track D
EDGE紹介

宇宙開発に向けたテクノロジーと挑戦

(同)Yspace 代表 田中克明

最近の宇宙産業をとりまく状況を説明するとともに、ispace社やYspace社での技術開発の取り組みやベンチャー企業や起業に挑戦するモチベーションについて語ります。

採択
2018/09/01 14:20〜
Track A
レギュラートーク(30分)

5000行のUITableViewを差分更新する

banjun ばんじゅん🍓

差分更新のテクニックを使うと,IndexPathを持ち回ることなく,UITableViewの必要な箇所のみ挿入・削除できるようになります。
これはいつでも採用できる手法なのでしょうか? 0~5000行で変化するテーブルビューにも使えるでしょうか?

このトークでは主にトータルの更新パフォーマンスにフォーカスして,5000行規模の差分更新を実用的な速度にするために必要な,ボトルネックの解析と遭遇するトレードオフについて紹介します。