こんにちは、マルチデバイスチームでスマホアプリのエンジニアをしております星野です。 エムスリーでは医療従事者向け/一般の方向けに複数のアプリを開発していますが、その中でも特に主力のアプリである m3.com アプリで現在行っているリファクタリングについてお話ししていきます。 ※iOS/Android のアプリがあり、両方のリファクタリングを進めていいますが、今回は iOS 版の話です ※この内容は私個人ではなく、チーム全体で行なっていることをまとめたものです イントロダクション 新規アプリかリファクタリングか リファクタリングの大まかな設計 MVVM + Flux マルチモジュール化 DI リファクタリングの進め方 その他のルール 異なるデータ同士を構造が似ているという理由でまとめない Helper や Manager といった責務が不明瞭な名前のクラスは作らない ID 型を定義する 参考
![7年間運用している主力iOSアプリをリファクタリングしている話 - エムスリーテックブログ](https://cdn-ak-scissors.b.st-hatena.com/image/square/9cf0caf1733d23028a56a9351473a5c8d361b244/height=288;version=1;width=512/https%3A%2F%2Fcdn-ak.f.st-hatena.com%2Fimages%2Ffotolife%2Ft%2Ftmnet357%2F20220308%2F20220308094843.png)