タグ

ブックマーク / rizumita.medium.com (2)

  • XcodeのRun Scriptフェーズを無効にしてビルド時間を短縮する(スクリプト付き)

    私が担当しているiOSアプリをXcodeでビルドすると、CarthageやCocoaPodsであわせて50近くフレームワークを利用しているためフレームワークをコピーするRun Scriptフェーズで時間がかかっていました。計測したところコンパイルが必要なくても49秒かかっていました。 そのRun Scriptフェーズを実行しないようにして、ビルド時間が35秒短縮されました。それらのRun Scriptフェーズは一度実行すればDerivedDataを削除したりフレームワークを追加・削除したりしない限り実行する必要はありません。ですのでそのフェーズを実行しないように設定することでビルド時間を短縮することが出来ました。(CocoaPods1.2.0ではCode Signingをパラレルに実行できるようになるようなので、効果は小さくなると思いますが) 具体的にはRun ScriptフェーズのRun

  • iOSアプリにおけるソフトウェアアーキテクチャパターンの考察

    私が試したことのあるiOSアプリでのソフトウェアアーキテクチャパターンとそれに関わるフレームワークの考察です。実際に使ってみて考えたことや感じたことを元に書いていきます。 基のMVCコントローラが肥大化することやモデルレイヤーの設計が明確でないなどの問題があるといわれています。しかし、比較的小さいプロジェクトではたいてい肥大化の心配もモデルレイヤーの詳細な設計も必要ないのでMVCを選択すると良いと思います。 MVVMMVVMはビューとモデルを繋ぐビューモデルが重要な役割を果たします。問題は、画面遷移やモデルレイヤーの設計が示されていないことです。極端な例ですが、ビューモデルにAPIアクセスのコードを書いてしまい、ビューモデルが肥大化して問題になったという話を聞いたことがあります。MVVMを採用するほどのアプリになると画面遷移やモデルレイヤーの実装方法を規定すると良いのですが、MVC同様に

  • 1