SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

Swift 4で最初に知っておきたい3つのポイント

Swift 4の外部ライブラリを利用して機能を実装する

Swift 4で最初に知っておきたい3つのポイント 第5回

  • X ポスト
  • このエントリーをはてなブックマークに追加

 本連載では、Swiftの基本的なプログラムができる読者を対象に、「Xcode 9」と「Swift 4」を使ってアプリを開発する際の基本的な内容である「Swiftでアプリ開発を行う上での基本的な記述の仕方や文法」「アプリの画面上での具体的な処理」「外部ライブラリを利用してアプリに機能を実装する方法」などを解説します。前回まではSwift 4の内部的な機能について説明しました。第5回では、外部のライブラリを利用して機能を実装する方法に関して説明します。

  • X ポスト
  • このエントリーをはてなブックマークに追加

はじめに

 外部ライブラリを利用してアプリを作成することは、一定の品質の機能をアプリに実装できることや開発者自身の負担を減らせるという理由で実際のアプリ開発でも行われている実践的な方法です。

 本連載はタイトルの通り、アプリ開発の最初に知っておくべき基本的な事柄の説明をメインテーマとしています。内容によっては、Swift 4以前のバージョンに触れることやSwift自体の言語仕様などには説明が及ばないこともご了承ください。本連載以上の各種情報は末尾の参考文献等を参照してください。

 今回は次の内容について説明します。

  • CocoaPodsを利用したプロジェクトへのライブラリの導入
  • ライブラリの機能を利用する/ライブラリの機能を拡張する基本的な方法

対象読者

 本記事は、次の方を対象にしています。

  • Swiftでの基本的なプログラムができる方
  • Xcodeを使える方

外部ライブラリを利用する【Swift 4】

 macOSやiOS向けに作成されたObjective-C/Swiftのライブラリは、GitHubで多数公開されています。これらのGitHub上で公開されたライブラリをダウンロードし、Xcodeのプロジェクトに追加するCocoaPodsというツールがあります。CocoaPodsを利用すると、Xcodeのプロジェクト単位でライブラリの導入が容易に行えます。Swift 4よりライブラリをインストールするためのPodfileの作り方と書式が変わったため、CocoaPodsの設定から順を追って説明します。

CocoaPodsのインストール

 macOSにはRubyが最初からインストールされています。CocoaPodsはRubyのgemコマンドを経由してインストールします。コンソールを立ちあげて次のコマンドを実行してください。

リスト1 CocoaPodsのインストール
$ gem install cocoapods

 CocoaPodsはpodコマンドで起動できます。cocoapodのインストールが終わった後に、リスト2のバージョンを確認するコマンドを実行し、バージョンが表示されるかを確認します。

リスト2 CocoaPodsのバージョンの確認
$ pod --version
1.3.1

 バージョンが表示されることで、CocoaPodsのインストールが正常に行われたことが確認できます。

外部ライブラリの導入

 インストールしたCocoaPodsを利用し、GitHubで公開されているライブラリをXcodeのプロジェクトに導入します。今回はボタンの外見をカスタマイズできるライブラリ、「PMSuperButton」を例にインストールの方法と確認について説明します。

[1]Podfileファイルの作成

 外部ライブラリをインストールするXcodeプロジェクトの直下までターミナルで移動し、pod initのコマンドを実行します。コマンドを実行すると、CocoaPodsを利用して外部ライブラリを導入するためのテキストファイル、「Podfile」が生成されます。生成されたPodfileの内容は次の通りです。

リスト3 Podfileのひな型
# Uncomment the next line to define a global platform for your project
# platform :ios, '9.0'

target 'ButtonSample' do
  # Comment the next line if you're not using Swift and don't want to use dynamic frameworks
  use_frameworks!

  # Pods for ButtonSample   -------(1)

end

 サンプルのプロジェクト名がButtonSampleという名前なので、そのプロジェクト名の入ったPodfileのひな型が生成されます。(1)の「# Pods for ButtonSample 」の下にインストールするライブラリの名前を記述します。PMSuperButtonをインストールする例ではPodfileの内容はリスト4の通りになります。

リスト4 PMSuperButtonをインストールする例
# Uncomment the next line to define a global platform for your project
# platform :ios, '9.0'

target 'ButtonSample' do
  # Comment the next line if you're not using Swift and don't want to use dynamic frameworks
  use_frameworks!

  # Pods for ButtonSample
  pod 'PMSuperButton'
end

 基本的に「pod 'ライブラリ名'」を記述することでライブラリの最新版がGitHubからダウンロードされXcodeのプロジェクトに組み込まれます。ライブラリのバージョンを指定する場合などは、導入するライブラリのGitHubのページにPodfileの記述例が記載されているので、そちらで確認してください。

[2]インストールの実行

 Podfileの作成後に、CocoaPodsを利用して外部ライブラリをインストールするコマンドpod installを実行して実際にライブラリをXcodeのプロジェクトに組み込みます。コマンドを実行すると、ターミナルにリスト5のようにインストールが成功した旨のメッセージが表示されます。

リスト5 ライブラリのインストールと確認
$ pod install
Analyzing dependencies
Downloading dependencies
Using PMSuperButton (2.0.4)
Generating Pods project
Integrating client project
Sending stats
Pod installation complete! There is 1 dependency from the Podfile and 1 total pod installed.

 ターミナルを確認して、Podfileに記載した通りのライブラリがインストールされたことを確認します。「.xcworkspace」の拡張子でファイルが生成されます。サンプルの場合は、「ButtonSample.xcworkspace」というファイルが生成されています。

ButtonSample.xcworkspaceファイルの確認
ButtonSample.xcworkspaceファイルの確認

 「.xcworkspace」ファイルの生成後は、Xcodeから「.xcworkspace」の拡張子のほうを起動して開発を行います。

 Xcodeのウィンドウでは、「Pods」というディレクトリ内にライブラリが組み込まれていることが確認できます。

ライブラリの確認
ライブラリの確認

 これでライブラリを利用する準備が整いました。

会員登録無料すると、続きをお読みいただけます

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

次のページ
ライブラリの機能を利用する/拡張する【Swift 4】

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
Swift 4で最初に知っておきたい3つのポイント連載記事一覧

もっと読む

この記事の著者

WINGSプロジェクト 片渕 彼富(カタフチ カノトミ)

WINGSプロジェクトについて>有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。2018年11月時点での登録メンバは55名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂きたい。著書記事多数。 RSS X: @WingsPro_info(公式)、@WingsPro_info/wings(メンバーリスト) Facebook

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

山田 祥寛(ヤマダ ヨシヒロ)

静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト」代表。主な著書に「独習シリーズ(Java・C#・Python・PHP・Ruby・JSP&サーブレットなど)」「速習シリーズ(ASP.NET Core・Vue.js・React・TypeScript・ECMAScript、Laravelなど)」「改訂3版JavaScript本格入門」「これからはじめるReact実践入門」「はじめてのAndroidアプリ開発 Kotlin編 」他、著書多数

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/10677 2018/03/08 14:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング