
iOS開発者は、他の開発者(サードパーティ開発者)の成果を使用するのが大好きです。 通常、ライブラリにはソースコードが付属しています。 通常、開発者リポジトリから取得したライブラリのソースコードをプロジェクトに追加します。 このアプローチにはいくつかの欠点があります。
- ライブラリのバージョンとそれらの関係を追跡するのが難しい場合があります
- 利用可能なすべてのライブラリのリストを表示できる共通の場所はありません。 もちろん、githubはオープンソースプロジェクトの最大の避難所の1つですが、それだけではありません
- このようなライブラリのソースコードを更新する必要があることを常に覚えておく必要があります。 (一部では、 gitサブモジュールのような問題が問題を解決します)
- ソースをダウンロードしてプロジェクトに追加すると、ライブラリコードをローカルで変更したくなることがよくあります。これは将来、ライブラリを更新するときに頭痛の種になります。
CocoaPods依存関係管理ツールは、前述の問題の多くを解決できます。 CocoaPodsは、使用するライブラリ間の依存関係を処理し、それらをダウンロードし、プロジェクト構造を適切な形式で作成および維持します。
CocoaPodsを使用すると、サードパーティの開発を使用してプロジェクトを作成するのがはるかに簡単になります。 それでは、始めましょう。
はじめに
公式Webサイトによると、CocoaPodsはObjective-Cプロジェクトのライブラリの依存関係を管理するための最適なツールです。
ライブラリリポジトリからコードをダウンロードしてプロジェクトのフォルダーにコピーする代わりに、CocoaPodsにすべてを行う機会を提供できます。
たとえば、JSONを使用して一部のサービスのRESTfull APIと通信するアプリケーションを作成する必要があります。
最も人気のあるHTTP要求ライブラリはAFNetworkingです (ASIHTTPRequestはサポートされなくなったため)。
まず、CocoaPodsをインストールする必要があります。 CocoaPodsはRubyプロジェクトであり、幸いなことに、RubyインタープリターはMacOSに標準で付属しています。 Rubyは唯一のCocoaPods依存関係であり、最初にコマンドを実行してターミナルのパッケージリストを更新する必要があります。

おそらく、正しく動作させるには、まずXcodeのコマンドラインツールを更新またはインストールする必要があります。 これを行うには、[Xcode]> [設定]> [ダウンロード]> [コンポーネント]に移動します。
パッケージリストが更新されたら、CocoaPodsをインストールできます。
sudo gem install cocoapods &&
pod setup

CocoaPodsがインストールされました。
ハローワールド
新しいほとんど空のプロジェクトを作成します[ファイル]> [新規]> [プロジェクト...]> [シングルビューアプリケーション]、たとえば:


最初の依存関係を追加する
さて、ここで彼は-真実の瞬間です。 最初の依存関係をプロジェクトに追加します。
ターミナルで、プロジェクトフォルダーに移動し、次の操作を行います。
1)ポッドファイルを作成します

2)ライブラリを追加する

ご覧のとおり、依存関係ファイルの形式は非常に単純です。 AFNetworkingに行を追加し、最新バージョン0.10.0に関心があることを示しました。
Podファイルの形式について詳しく説明します。
3)初期環境を生成し、CocoaPods自体とライブラリソースの両方の必要なファイルをロードします。 そして最も重要なことは、常に最新の状態に保つことです。
pod install

これらの簡単な手順を実行すると、プロジェクトの新しいドラフトが作成されます。 次に、生成されたxcworkspaceを使用して作業する必要があります。 つまり、プロジェクトファイルをワークスペースのみの独立したエンティティとして忘れてください 。
open CocoaPodsExample.xcworkspace
これがプロジェクト構造の外観です

これで、AFNetworking.hを安全に接続し、ソースをダウンロードしてプロジェクトに配置したかのように、このライブラリを使用できます。

実際、これはおそらくCocoaPodsを使用する主な方法です。 基本、最小限、シンプル。
依存関係ファイルは、孤立したAFNetworkingを希釈することで補完できます。
ポッド「SSToolkit」
ポッド「AFNetworking」、「> = 0.5.1」
ポッド「CocoaLumberjack」
本質は変わらず、仕事のシンプルさは消えません。
CocoaPodsで利用可能な最も人気のあるライブラリのリストを次に示します。
- AFNetworking
- ASIHTTPRequest
- ブロックキット
- コンサイスキット
- コアプロット
- EGOTableViewPullRefresh
- Facebook-iOS-SDK
- ジョンソン
- MBProgressHUD
- ニンバス
- クイックダイアログ
- 到達可能性
- SFHFKeychainUtils
- シェアキット
CocoaPodsは間違いなく、Cocoa-developerの武器庫にツールがなければならないと考えられます。
