レギュラートーク(30分)

実践コーディネーターパターン ~DIやディープリンクとの応用編~

swiz_ard 久保出雅俊

コーディネーターパターンは、画面間の遷移や表示などの責務をコーディネーターと呼ばれるクラスに任せるデザインパターンです。このトークでは、コーディネーターパターンの実践的な使い方、DIやディープリンクなどアプリケーションの設計には欠かせない要素とどのように組み合わせて使うのかについてご紹介します。

レギュラートーク(30分)

ARKit Maniacs

shmdevelop satoshi0212

私はこの半年、ARの使用事例を集めると共にその拡張した使い方を検討してきました。その中で得たTipsを共有するとともにAREnvironmentProbeAnchor、ARWorldMapなどの効果的な使い方、空間共有の実例などをデモを交え熱く深く語りたいと思います。

レギュラートーク(30分)

え、今さら? Genericsと仲良くなる入門

paper_and_paper paper_and_paper

Genericsは、Swiftの中でも異色のパワーを秘めた記述方法です。しかし、一方では非常に抽象化された概念だけあってか、どこかフワッとしています。関数型言語に馴染みがない、Swiftを使い始めてまもない...など、理由はともあれ、本トークではジェネリクスだけにフォーカスして、Genericsと仲良くやるTipsをお話したいと思います。すでにSwift❤️な人だけでなく、まだGenericsにピンとこない人も是非お楽しみください!

レギュラートーク(30分)

アトミックデザインの導入と実践プロセス

ngtknt 永田 健人

アトミックデザインは、デザインコンポーネントの共通化により開発プロセスの効率化を図るためのフレームワークです。Wantedly VisitのiOS Appでは、このフレームワークを導入し、開発の効率化とデザインの一貫性を向上させることができました。このトークでは、具体的にどのようにコンポーネントを分類し、どのようにプロセスを回していったかについて、実際に作成したコンポーネントと共にご紹介します。

レギュラートーク(30分)

富豪的分析の世界へ ~Google AnalyticsからFirebase Analyticsへの移行~

yuutetu 加賀江 優幸

皆さんは、Google AnalyticsとFirebase Analyticsのどちらを使用していますか?
Google AnalyticsからFirebase Analyticsへの以降の注意点についてお話しします。
具体的には、
・Google AnalyticsとFirebase Analyticsの違い
・大規模アプリに置いてどのように実装し移行を行うか
についてお話します。

レギュラートーク(30分)

SwiftでCLIツールを作って業務効率化を図る

marty_suzuki marty-suzuki

普段の業務で少し手間だったりすることがあったりしないでしょうか。
もしかするとその作業をCLIルーツにしてしまえば、業務効率化が図れるかもしれません。
本トークでは、Remote Notificationの送信をCLIツールにしたことで通知からの画面遷移テストが手軽にできるようになった話や、🐳cujiraを使ってQA期間中のチケットの状態を可視化しやすくした話をしていきたいと思います。

レギュラートーク(30分)

ReSwiftを用いたSingle Storeで安全なアプリ開発

jumpersons okamoto

ReSwiftを用いて開発の中で得られた開発チップスを紹介します。
具体的には以下の内容を話します。

・ReSwiftが向いているアプリ
・Stateの設計について
・Actionの設計について

レギュラートーク(30分)

Cocoa MVCを拡張していくという設計手法

kazuhiro494949 林和弘

広く普及しているレイヤードアーキテクチャが紹介される時、それらが持つ汎用的なパターンに注目が行きがちです。しかしアプリ開発の現場で具体的な課題を解決する場合、その裏側にある考え方・そのパターンができるまでの過程が重要です。 本トークは以前別のイベントで発表した「漸進的にViewControllerの肥大化を防ぐ」から更に一歩踏み込んで形式化を試みつつ、パターンを自分たちで作っていくという従来とは別のアプローチを提案したいと思います。

レギュラートーク(30分)

iOSでmp4をデコードして自分だけの動画プレーヤーを作ろう!

noppefoxwolf noppe

動画や配信サービスの流行している昨今、iOSアプリ側で動画のデコードする需要は大きくなりました。
このセッションではiOS上でVideoToolbox.framework,AudioToolbox.frameworkを使い、mp4のh264/avc・aacをデコードする手法を紹介します。
低レイヤーAPIを利用することで独自の暗号化をかけたり、パフォーマンスやカスタマイズ性の高いデコーダーを実装することができます。

レギュラートーク(30分)

画面遷移は本当にUIViewControllerから切り離すべきだろうか

kazuhiro494949 林和弘

画面遷移は実行時に複数のUIViewController(VC)間で暗黙に情報が伝達されながら、適切なオブジェクトを使ってコントロールされます。 本トークではそういったUIKitの特徴を紐解き、遷移がVCから分離・抽象化されることにより発生するコスト・リスクを整理します。それを前提にできる限りUIKitのレールに乗った画面遷移実装を議論したいと思います。

レギュラートーク(30分)

イチから始めるアクセシビリティ ~まずはできるところから~

stzn3 shiz

スマホは多くの人にとって生活に欠かせないものとなってきており、様々な環境、境遇の方がアプリに触れる機会も増えています。
そんな時、アクセシビリティは一つの大きなテーマになってくると思います。

  • そもそもアクセシビリティとは?
  • iOSではどんな機能が提供されているのか?
  • アプリに導入するには?
    といった基本的な部分に触れ、アクセシビリティを考えるきっかけになれば良いと思っています。
レギュラートーク(30分)

Metalによる素材を活かしたUI作り

kazuhiro494949 林和弘

iOSにはGPUの性質を活かしたデザインが様々なところで使われています。シェーダーを使うとグラフィカルでインタラクティブなデザインが可能になります。本トークではGPUの特徴を活かしたグラフィックプログラミングで独自のUIを作る方法について説明します。

レギュラートーク(30分)

SDK開発におけるXCUITestの活用

konyavic konyavic

SDK開発は、アプリ開発と比べると規模が限られる反面、様々なアプリ構成に対応した設計と工夫を要求します。
特に、UIを表示する機能においては、導入先アプリのviewの実装によって大きな影響を受けます。
それらの要求に対して、効率的に且つ再現性を持った手法でテストを実施するにあたって、
XCUITestを利用する方法の提案と工夫を実例交えて紹介します。

レギュラートーク(30分)

LIFULL HOME'S「かざして検索」リリースの裏側

HanawaTakuro Hanawa Takuro

LIFULL HOME'S「かざして検索」は建物をかざすだけでその建物の物件情報を閲覧できるUXを提供する機能です。この機能は新たな住まいの探し方として話題となり、各種メディアで取り上げていただいています。

機能の提案からリリースに至るまでのプロジェクトの話だけでなく、物体検出機能をCoreML+Visionで実装する方法、ARKitと併用する方法、実際のプロダクトに組み込む為のテクニックなどの技術的な要素も交えてお話しします。

レギュラートーク(30分)

挫折させない iOS App 開発勉強会の裏側

AkkeyLab AkkeyLab

最強プログラマが誕生していたかもしれないのに…、開発の魅力を伝えられないエンジニアには大きな責任があります。
初心者にアプリ開発の魅力を知ってもらい、自発的に急成長させる勉強会のノウハウをご紹介します。この勉強会は大学のサークル活動の一環として行ったものです。

レギュラートーク(30分)

RxSwift をアプリ設計に上手に活用するためのプラクティス

usamik26 宇佐見公輔

RxSwift は非同期処理やデータバインディングを統一的に扱うことができる、強力なフレームワークです。
しかし、強力な反面、何でもできてしまうために、使い方に注意を払う必要があります。
無計画にあちこちで RxSwift を使ってしまうと、メンテナンスが困難な実装になってしまいます。
上手に活用するためには、どのような点に気を配るべきなのかを考えていきましょう。

レギュラートーク(30分)

RxSwift のスケジューラを理解する

usamik26 宇佐見公輔

RxSwift は iOS アプリ開発で広く使われるようになってきました。
しかし、RxSwift は学習コストが高いという問題を抱えています。
ここでは、初学者がつまづきやすく経験者にも誤解されやすい点のひとつ、スケジューラについて詳しく見てみます。
非同期のイベントをうまく扱えるという RxSwift の良さを活かすには、どの処理がどのスレッドで実行されるのかを理解することが大事です。

レギュラートーク(30分)

ARKit with Metal

shu223 堤 修一

ARKitは非常に簡単に扱えるよう設計されていますが、同時に柔軟性・拡張性も備えており、iOSの他のフレームワークと連携させることで無限の可能性を秘めています。その中でもカメラから得た画像や設置する仮想オブジェクトに対して、もっとも低レイヤで自由度高く画像処理や描画処理を行える手段がGPUを制御するフレームワークであるMetalです。本セッションではARにおけるMetalの使い所、Metalの基礎、具体的な実装方法を解説します。

レギュラートーク(30分)

退屈なことはApp Store Connect APIにやらせよう

giginet ぎぎにゃん

ついに発表されたApp Store Connect API。これを使えば何ができるのでしょうか?
公開されている情報からいくつかの業務改善のアイディアをお話しします。
また、実際にApp Store Connect APIクライアントを実装してみて、Swiftで簡単なタスクを記述する方法をお伝えします。

このトークの内容はトーク時にApp Store Connect APIが公開されているかによって変わります。

レギュラートーク(30分)

iPhoneでコスプレをする技術

tanakasan2525 Tatsuya Tanaka

今の自分の姿に飽きていませんか?
このトークではiPhoneを通じて、あなたを俗世から解放し、バーチャルな世界で生きるための技術について紹介します。