はじめに
連載第1回目では、Swiftを使って開発を行う際に必要なツール類と、Swiftのプログラムを試す環境の構築について説明します。Objective-C経験者が初めてSwiftに触れることを前提として、開発環境の構築とSwiftの特徴について説明します。
対象読者をObjective-Cが分かる方としている関係上、Objective-C自体の言語仕様やXcodeの使い方については解説を割愛する場合があることをご了承ください。同様にSwift自体の説明も必ずしも十分でない場合があります。そのような場合は末尾の参考文献等を参照してください。
対象読者
本記事は、次の方を対象にしています。
- Objective-Cの基本的なプログラムが出来る方
- Xcodeを使える方
Swiftとは
Swiftとは、AppleのイベントWWDC 2014(2014年6月)で発表された新しいプログラム言語です。従来のObjective-Cに代わる言語として、OS XやiOS向けのアプリケーションの開発に利用できる言語です。Swiftで開発したアプリケーションを利用できるのは、「OS X version 10.9」「iOS 7」以降のOSです。現在、Appleから開発者向けに両OS向けSwiftを利用できる統合開発環境Xcode 6が公開されています。
Swiftでは、Objective-Cで厳密だった型の宣言やメソッドの定義等が緩和され、コードの作成が容易なスクリプト言語に近い仕様となっています。このため、PHPやRubyでプログラムを学び始めた方にも取り組み易い言語であると言われています。
Swiftの特徴
WWDC 2014で発表されたSwiftの概要のうち、注目されている点をあげると次のようになります。
(1)型の指定/ポインタの概念/;(セミコロン)の不要
変数を指定する際に型を指定しなくてもかまいません。また、変数の中身が格納されるメモリ上のアドレスをポインタに格納する/不要になった変数のメモリ割当てを解放する、といった作業は不要になりました。このことはコンパイラが変数の型を補完したりメモリの管理を代わりに行っているためです。同様にプログラムの改行に関してもコンパイラが自動で判断しますので、改行の;(セミコロン)も記述する必要はありません。Swiftではプログラムの記述が簡単になります。
(2)モダンなプログラミング
型を変数とした型関数を扱うジェネリクス、処理を関数の定義の組み合わせとして記述する関数型プログラミングが可能となるファンクションやクロージャといったモダンなプログラム概念が導入されています。他の言語の便利な点を導入し易くなります。
(3)Objective-Cとの互換性
SwiftとObjective-Cには互換性があり、SwiftからObjective-Cのコードを呼び出す/Objective-CからSwiftのコードを呼び出すことが可能です。アプリ開発をSwiftで行う場合にも、Objective-Cのライブラリ/クラスを利用することができ、これまでの資産を引き続き活用できます。
(4)高速な動作
Swiftは、Appleが採用している高速コンパイラLLVMをデフォルトで使用し、相性も非常によいとされています。作成するアプリの内容にもよりますが、Swiftで作成したアプリは、Objective-Cで作成したアプリよりも高速に動作すると期待されています。
アプリ開発者にとって最も重要なのは(1)の点です。Objective-Cで非常に面倒だった記述が、Swiftでは大幅に簡略化されています。従って、Swiftの学習コストの減少と、Swiftを利用したアプリ開発の生産性の向上が非常に期待されています。
Swiftの新しいデバッグツール
Swiftでは、プログラムが簡素化されるという前述の点のほかに、デバッグも容易に行えるようになります。Swiftの開発ツールであるXcode 6以降では、Playgroundという簡単なデバッグツールが付属します。左側の領域に記述したプログラムを、右側でインタラクティブに変数の内容を出力したり、処理を実行したりするツールです。
上記の例では、変数のstrの内容とa+bの計算結果が右側に出力されています。Playgroundを利用すると、プログラムの一部の処理を手軽にシミュレートできます。
開発環境の準備
Appleは、新しいOSやツールを公開する前に、β版として正規版の1つ前のバージョンを公開します。iOS 8の公開前にも、iOS 8β版とXcode 6β版が先に公開されSwiftを利用できました。今後、Swiftも含め新しい機能を持ったiOSの公開が予想されますので、本節ではβ版も含めた開発環境の準備について説明します。
iOSとXcodeのβ版を利用するためには、iOS Developer Programへの登録が必要です。詳細はiOS Developer Programのページで確認できます。
Xcodeの準備
正式版の場合
App StoreでXcodeを検索してインストールします。
β版の場合
β版のXcodeは、App Storeからではなく、iOS Dev Center内でのみ配布されます。iOS Dev Centerへログイン後、左上のタブの「iOS 8 beta」を選択し、コンテンツをiOSβ版向けのものに切り替えます。その後、Xcode 6のダウンロードリンクからXcode6本体をダウンロードし、インストールします。
iOSの準備
正式版の場合
正式版がリリースされた時点で、「設定」のアイコンにバッジが表示されます。「設定」―「一般」―「ソフトウェアアップデート」と進んで新しいiOSをインストールできます。
β版の場合
iOSのβ版は、iOS Dev Centerで配布されます。iOSβ版のアーカイブファイルをダウンロードして、実機にインストールします。ダウンロードしたファイルを展開後、実機をUSBケーブルで端末に接続し、iTunesを経由して次の手順で実機にインストールします。
- iOS Dev CenterよりiOSのアーカイブファイルをダウンロードし、展開
- 実機をUSBケーブルでPC端末に接続
- iTunesを起動し、Mac Optionキー/Windows Shiftキー を押しながら「アップデートを確認」をクリック
- ダウンロードしたアーカイブファイルを指定し、iTunesから実機にファイルを転送
- 実機の画面のオペレーションに従ってインストールを完了
iOSのインストール作業はMac/Windows端末のどちらでも行えます。Windowsの場合は、アーカイブファイルを展開するためにHFSExplorerというフリーソフトが必要です。
インストールするiOSはβ版なので、必ずしも全ての機能が安全に使えると保証されているわけではありません。β版を試す場合は、普段電話機として使うiPhoneではなく、機種変更した後の端末やiPod等を利用し、開発用端末を別にしておくのがいいです。