iOSの社内ライブラリをやめる

この記事の社内ライブラリはアプリとは別にリポジトリを分けて管理しているコードで、CocoaPodsやCarthageでアプリにインストールできるようにしているが、社内のアプリにしか使っていない物のことです。

なぜ社内ライブラリが必要だったか

大抵の会社ではアプリを一つだけ作っていることは少なく、複数のアプリを開発していることが多い。複数のアプリで社内のAPIにつなぐための通信コードやドメイン関連のコードは共有したい。1つのアプリは1つのリポジトリで管理することが多い。。そのため、共有したいコードをライブラリとしてアプリとは別のリポジトリに切り出して、ライブラリ管理ツールを使ってアプリににインストールして解決している。

アプリを一つのプロジェクトで管理する

具体的なやり方は以下のリンクをみて欲しい。 recruit-tech.co.jp

Xcodegenを使えば複数のアプリを一つのXcodeプロジェクトで管理することは比較的簡単にできるような環境が整ってきている。共通に使うコードをframeworkとして複数のアプリで扱うことができる。

社内ライブラリをやめる

全てのアプリを1つのプロジェクトで管理することができれば、全てのアプリを1つのリポジトリで管理することができます。1つのリポジトリでアプリを管理しているため、社内ライブラリをリポジトリに切り出す必要はなくなります。ライブラリに切り出していたコードも一つのリポジトリで管理できるので、社内ライブラリをやめることができます。

終わりに

私はやりましたが、全ての会社で当てはまるような話ではないと思ってはいます。