UITableViewをいかに高速に描画、更新するかはiOSアプリケーションの実装において頻繁に遭遇する問題です。
本セッションでは単純な reloadData を用いた場合と差分計算アルゴリズムを用いた場合で実際にどの程度の差が生じるのか検証した結果を提示します。
また、複数の差分計算アルゴリズムとその実装を比較することで、それぞれの実装が適しているケースを提示します。
Storyboardの扱いでしばしば挙げられる問題点の1つとして、文字列を扱う事によるtypoや変更への弱さが挙げられます。
ここではProtocol Oriented Programmingを用いて、そのデメリットをできる限り解消していきます。
私の現在担当しているアプリケーションはファーストリリースから早5年が経過しようとしています。
しかし、ユーザの求めるサービス、そして何よりUI/UXへの期待値は5年前とは比べ物にならないくらいに上がりました。
ユーザの期待を裏切らない為に、我々iOSチームがfpsを一つの指標に置いてUI/UX改善の為に行っている事、またこれから改善していきたい事についてお話します。
Swiftの生みの親、クリス氏によって2017年8月にプロポーザルasync/await for Swiftの下書きが公開されました。その内容はコルーチンサポートで、我々はSwiftで非同期処理をより使いやすく読みやすいコードを書けるようになります。このトークはその内容を理解するために、様々な言語で使われるasync/awaitの比較分類、Swift3から使えるasync/awaitライブラリの利用例とその内部実装を解説します!
apollo-ios や GraphQLSwift/GraphQL といったライブラリを使うと、GraphQL を使ったクライアントアプリや GraqhQL サーバを実装することができます。
このトークでは、クライアントとサーバの両面から GraphQL について触れつつ、ライブラリを利用した実装方法や実際にプロジェクトで利用した際の注意点などをお話できればと思います。
QuipperではSwiftとReact Nativeのモジュールを組み合わせてiOSの開発を進めています。
標準を外れた開発体制には数多くの困難が付きまといますがそれらに取り組んでいって得られた知見をお伝えできればと思います。
Agenda:
登場から早2年、もはや Haptic Feedback も含めた UI が必須と言っても過言ではありませんが、効果的に用いている事例もまだ多くないのが現状です。このトークでは、具体的な事例や HIG などから、効果的な Haptic Feedback のための考え方や、具体的なガイドライン、また、実装の tips も取り上げます。このトークを聞けば、誰でもすぐに効果的な Haptic Feedback を組み込むことができるはずです。
2017年12月1日朝起きたら,Zaim のせいでiPhoneがクラッシュすると Twitter 上で騒がれていました.
前回のリリースから多少は時間がたっていたし,そもそもアプリが iPhone をクラッシュさせるなんてできるの?
本当にZaimのせいだったのか,そもそも何が起こっていたのか.何が原因だったのか.
わかったこと,推測できたこと,喋っても問題なさそうなこと喋ります.
Quipperが開発する学習サービス「スタディサプリ」ではIAP(アプリ内課金)による支払いが可能です。IAPは同サービスで高いシェアを持つ人気決済手段ですが、運用者の立場では他の決済手段と比べて不満がないわけではありません。このトークでは以下のトピックを通じてiOSアプリでの課金手段について再考します。
先日任天堂から発表されたマリオパーティーのゲーム内で実装されている、複数のSwitchを並べた時にディプレイ間の位置を調整する素晴らしい機能を、iOSでも実装した結果を発表します。
リリースするアプリでこの技術を使おうとすると既に任天堂が特許を持っているので注意が必要です。
プロジェクトが大規模化していくと、さまざまな業務を自動化したくなってきます。同時にロジックが増え、特定の人しかメンテできなくなったFastfileにお悩みの方も多いでしょう。
このトークでは、実際の活用事例を交えながら、大規模プロジェクトにおける効果的なFastfileの書き方、プロジェクトの雑務自動化についてをお話しします。
そのほか、fastlaneコミッターによる明日から使える実践的なtipsも数多くお伝えします。
東急ハンズのレジは内製開発のiPadアプリで動いています。
そんなレジ用アプリはアプリ間で様々な情報を交換しています。
レジ間を飛び交う通信内容や通信方式の現在に至るまでの変遷を紹介します。
iOS11から可能になった画面収録で生放送機能を実装し、サービスインするまでの実装
原始のiPhoneからカメラは搭載されていましたが、深度センサが搭載されたのは比較的最近のことです。カメラやGPSが、デジタルの世界と我々が生きる現実世界を繋ぐ重要な役割を担い、アプリ開発者に多くの創造性を与えてくれたのと同様に、「奥行き」がわかるようになったというのはアプリ開発の次元がひとつ増えたようなものです。本トークではiOSでの深度の扱いについて、取得方法だけではなく、細かいパラメータの意味やMetalでの処理まで詳解します。
私の担当するアプリでは、Auto-Renewable Subscriptionsを長らく運用してきました。
しかし、その運用を続ける上でぶつかった問題も多くありました。
Auto-Renewable Subscriptionsの運用事例を元に、ユーザにとって最高の形でプレミアムな機能を提供するために学んだことについてお話します。
「API から何が返ってきているかわからない」「色々なパターンの返り値の表示を見てみたい」といった経験はないでしょうか?
Charles なら、通信の中身を確認することができるだけでなく、リクエスト/レスポンスの編集、リクエスト先の変更など、アプリ開発のデバッグに便利な機能を使うことができます。
この記事では Charles を使ったことがない人向けに、 Charles の基本的な使いかたと使いどころについてご紹介します。
研究開発成果やアイデアを基にして起業する人材であるアントレプレナーやリーディング企業において新事業創出に挑戦する人材であるイントラプレナーの育成を持続的展開できるエコシステムの構築を目的としたEDGE NEXTプログラム( https://ssl.waseda-edge.jp/ )、および「ビジネス力×データサイエンス&データエンジニアリング力」を備えた博士人材を社会に送り出すことを使命としたD-DATaプログラム( https://d-data.jp/ )の取り組みとその相乗的連携により始まる新しいプログラム「アントレプレナー養成海外武者修行プログラム」についてご紹介します。
時は2018年未だに定期ポーリングを使った画面更新でリソースを無駄遣いしていませんか?
FRESHではgRPC streamを利用し、サーバープッシュ方式でイベントを受け取る事ができるミドルウェアPlasmaを開発し、リアルタイムで快適なユーザー体験を提供しています。
このトークでは、Plasmaについて実際の利用例を紹介しながらお話します。
最近の宇宙産業をとりまく状況を説明するとともに、ispace社やYspace社での技術開発の取り組みやベンチャー企業や起業に挑戦するモチベーションについて語ります。
差分更新のテクニックを使うと,IndexPathを持ち回ることなく,UITableViewの必要な箇所のみ挿入・削除できるようになります。
これはいつでも採用できる手法なのでしょうか? 0~5000行で変化するテーブルビューにも使えるでしょうか?
このトークでは主にトータルの更新パフォーマンスにフォーカスして,5000行規模の差分更新を実用的な速度にするために必要な,ボトルネックの解析と遭遇するトレードオフについて紹介します。