2018/6/29 Fri. "みてねのMeetup#1" で発表したスライドです。 iOS版の開発について順をおって説明しました。
アイスタイルでiOS開発をしています @mishimay です。 アイスタイルアドベントカレンダーの17日目の記事を担当します。 アイスタイルでは日々新しい試みを行っていますが、iOS設計のベストプラクティスがだんだんと収束してきたので一旦まとめておこうと思います。 目指す設計 理解しやすい 開発しやすい テストしやすい 方針 上記設計を実現するための基本的な戦略は、各コンポーネントを 疎結合 にすることです。 具体的には以下のような設計を目指します。 コンポーネントの役割を明確にする 依存関係を明確にする 現在、Clean Architecture 1 や MVVM などの設計手法を参考に以下のような設計を行っています。 依存関係を一方通行にする 円の内側ほど抽象度が高く一般性がある 外側から内側は参照可 内側は外側の事情を知らなくて良い 内側から外側を参照したい場合は 依存関係逆転の原
※本記事は個人的な考察であり、ゆえに間違った箇所などがございましたらぜひとも反論やマサカリを投げて頂けたら嬉しいです。なお、本記事における「MVVM」は、基本最近お流行りの RxSwift のデータバインディング機構に依存した、UIViewController に ViewModel を保持する MVVM を指します。 ここ数年、少なくとも日本では iOS 開発において、MVVM が非常に流行っているようです。少なくとも、いろんな勉強会やカンファレンスに参加したときに MVVM の話はよく聞きますし、筆者自身としても個人プロジェクトを除く、本業副業両方とも担当しているプロジェクトは基本設計として MVVM を採用しています。 しかし、かといって MVVM は MVC と比べる際、圧倒的な優位性を持っているのかといえば、少なくとも筆者はそう思いません。もちろん MVC と比べた MVVM の
#potatotips 37 の資料です AppRootControllerでスプラッシュアニメーションをする時の方法についても発表しました https://speakerdeck.com/yimajo/approotcontroller-woshi-tutesupuratusiyuanimesiyonwoshi-zhuang-suru-2017-dong
□導入 MVVMの知名度は十分に高まっているものの、MVVMでの開発はまだまだしきいが高いと感じる方が多いのではないかと思います。確かに、MVVMで開発するためのライブラリやフレームワークが出揃い始めており、それらの技術について説明したコンテンツも充実しつつあるように思います。しかし、これらの技術をどう使って設計していけばよいのかはどのコンテンツにもあまり語られていません。特にMVVMの肝であるはずのView Modelの設計をどうしたらよいのかについて説明しているコンテンツがなく、各技術者に任されてしまっています。 私自身、模索を繰り返しながら何とかViewModelの設計をやっているのが実態で、まだまだ不明な点が多くあります。しかし、今まで私がMVVMによる開発を行ってきたなかで得たものを、「View Model設計のための原則」というテーマで、何回かに分けてご紹介したいと思います。い
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く