CA.swift #8 に参加しました
先日参加してきたサイバーエージェントさんのイベントの簡単なまとめです。
イベント概要
サイバーエージェントのiOSエンジニアによる勉強会。
RxSwift、ReactiveSwift関連内容を中心とした特集回とのことでした。
イベント名
Twitter ハッシュタグ
発表テーマ/登壇者
- 『ViewModel設計パターンの比較と分類』/yimajo
- 『RxSwiftのDisposable達をご紹介!』/matsuokah_
- 『Introduction to RIBs』/dekatotoro
- 『RxSwift・ReactiveSwiftの比較や動向』/shin8484
- 『RxSwift を用いた設計で、配信コンテンツを不正利用から守る』/AkkeyLab
詳細
『ViewModel設計パターンの比較と分類』
ゲストスピーカーの今城氏のは「RxSwift研究読本」を執筆されている方。
最近はnoteの有料記事も書き始めたとか。
イベントのハッシュタグca_swiftでつぶやかれた内容を画面の右に表示させており、リアルタイムで随時コメントを受けつつ進めるというスタイル。
音声読み上げされていて全てスルーせずやり取りしていて面白いです。
内容的にはRxSwiftのざっくりした歴史と、4つのViewModelのパターンを紹介していました。
- sergdort
- kickstarter
- Functional Swift Conference 2018
- 上記のViewModelが避けている「クラス指向的ViewModel」
4つ目はアンチパターンとして紹介され、「逆こんまり状態」と表現されてました。
つぶやき状況から察するに「RxSwift研究読本」を読むとより理解できそうです。
『RxSwiftのDisposable達をご紹介!』
Disposable の種類・特徴を紹介されていました。
正直なところこのあたりはあまり気にしたことがなかったですが、実行順や効率などはなるほどと思いました。
最近追加されたRxAtomicについても触れられており、Cのラッパーでinline関数になっているというのは興味深かったです。
『Introduction to RIBs』
Uberが公開しているアーキテクチャのフレームワーク「RIBs」の紹介です。
Router、Interactor、Builderの集合体ということで、
View、Presenter、Componentもオプションとして加わる場合があります。
特徴として、大規模なモバイルアプリ用、テスト容易性、責務と依存関係が明確、
OCPの原則などが挙げられるそう。
RIBを一つの塊としてツリー構造で捉えられていて、UI層とは一致しなくて良いためUIKitに依存しないライフサイクルの管理ができるとのこと。
今回はじめて知ったのですが、試してみたことのある方は会場に結構いて、試してみたいと思いました。
『RxSwift・ReactiveSwiftの比較や動向』
RxSwiftとReactiveSwiftの両方を使ったことのある方による発表でした。
それぞれ別のプロダクトでこの両者を使うというのはなかなか貴重ですね。
印象としては、ReactiveSwiftの方が良い意味で「固い」感じがしましたが、RxSwiftの方が資料が多くシェアも多いので苦労しそうに感じました。
『RxSwift を用いた設計で、配信コンテンツを不正利用から守る』
RxSwift を用いた設計で、配信コンテンツを不正利用から守る
VueFluxベースで個人開発している動画視聴アプリについて、RxSwiftを用いて動画の不正利用を防ぐアプローチを考えたというもの。
URL変更を購読する、IPアドレス変更を購読するというアプローチを紹介しつつ、やはり暗号化かな、、と。
おわりに
いままで勉強会には参加してこなかったのですが、外に出るのは刺激もあり学びもあるので、今後は少しでも時間を見つけて足を運んでみようかとおもいました。
Author And Source
この問題について(CA.swift #8 に参加しました), 我々は、より多くの情報をここで見つけました https://qiita.com/takayuki/items/256cccb653182ba50ad4著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .