No Realm, No Life/MVVMをベースに複雑な振る舞いをしっかり把握できるアプリ開発

No Realm, No Life/MVVMをベースに複雑な振る舞いをしっかり把握できるアプリ開発

杉上洋平さん @ Wantedly株式会社

Wantedly株式会社のiOSエンジニアである杉上洋平さんによる、ビジネスシーンで使えるメッセージングサービスSyncの開発当時の模様をiOSを中心にご紹介していただきました。開発のスケジュール、リソース、アーキテクチャ、アプリの規模や進め方など非常に参考になります。

講演は2部構成で、前半はRealmをSyncアプリに採用するにあたって、具体的なアーキテクチャの構成やモデルの取り扱い方などの説明と、その他のデータ永続化レイヤーを使用した経験から比較して、Realmを選ぶことによるメリットなどもお話していただきました。

後半では、Syncアプリの開発を例に、複雑化する一方のアプリ開発において、Syncではどのように円滑に素早く不具合の少ない開発を行ってきたかについて、実践的な内容で説明していただきました。かなり多くのライブラリを使用していることと、すべてピュアSwiftで開発を行っているなど、プロジェクトのハンドリングは一見すると困難に思えますが、実際はテクノロジーを高度に使い分け、非常にスマートな開発を行っているということが印象的です。

中でもSwiftBondとSwiftTask、Realmを上手に組み合わせて、ビューコントローラからロジックのコードをほとんど追い出してしまっているところは必見の内容です。クライアント側で複雑な状態を管理する方法として、非常に参考になります。


Realm Team

Realm Team

The team behind the greatest mobile database in the world! We have all kinds of peeps, from the engineers who build our products to the publishers who help this content come out to the managers who keep our company running smoothly.