はじめに
2014年に登場したプログラミング言語Swift。2015年にOSS化が発表され、2016年秋にはメジャーアップデートSwift 3.0のリリースを控えています。私は、iOSアプリ開発に3年ほど携わっていますが、Swiftほど書けば書くだけ好きになる、また書きたくなる言語はないと思います。
SwiftのOSS化にともないIBMが次々にSwift開発のツールを発表しました。IBM Swift Sandboxはサイト上でSwiftのコードを実行できるサービスです。また、KituraというSwift製のサーバーサイドプロジェクトも発表されました。そして、IBM Cloud Tools for Swiftです。IBM Cloud Tools for Swiftは、Bluemix上のSwiftコードなどを管理するためのMac用ツールです。従来は、コマンドラインツールを使う必要があったBluemixへのデプロイを、GUIツールで簡単に可能にするツールです。
今回の記事では、IBM Cloud Tools for SwiftとKituraを使ってSwiftでサーバーサイドプログラムをする方法をご紹介したいと思います。
今までiOSアプリを作っていた言語で簡単にWebアプリが作れるなんてすごいです。ワクワクします。
- 各開発ツールのインストール
- IBM Cloud Tools for Swiftの使い方
- Kituraの使い方
- KituraとObject Storageを使ってデータを保存する
それでは参りましょう。
開発環境
今回のサンプルアプリは以下の環境で実施しました。
Swiftバージョン | DEVELOPMENT-SNAPSHOT-2016-06-06-a |
---|---|
Mac バージョン | OS X El Capitan(バージョン10.11.5) |
IBM Cloud Tools for Swiftバージョン | 1.1.0.0 |
Kitura | Kitura 0.19 |
Bluemix 地域 | 米国南部 |
Bluemixのアカウントは取得済み、地域「米国南部」にスペースを作成済みを前提に記事を進めます。
各開発ツールのインストール
Homebrewのインストール
まだMacにHomebrewをインストールしていないなら、ターミナルで下記のコマンドを実行しインストールします。
$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
curlをインストール
Kituraを使用する際にcurlコマンドが使われます。まだMacにインストールしていないなら、下記のコマンドをターミナルで実行します。
$ brew install curl
Xcode 8 beta 4をインストール
Appleの開発者ページにアクセスしてXcode 8 beta 4をインストールします(Apple IDが必要になります)。
Swiftのインストール
Swift公式サイトのダウンロードページへアクセスをします。
今回はJune 6, 2016のスナップショットで開発をしていきます。最新ではありませんが、IBM Cloud Tools for SwiftからクローンされるKituraで作動するSwiftのバージョンがこのバージョンなので、このバージョンをインストールします。
June 6, 2016を選択すると、swift-DEVELOPMENT-SNAPSHOT-2016-06-06-a-osx.pkgというファイルがダウンロードされるので、インストールします。
インストールできたら、ターミナルからSwiftのツールチェーンを使用するために以下のようにパスを通します。
$ export PATH=/Library/Developer/Toolchains/swift-latest.xctoolchain/usr/bin:$PATH
このツールチェーンはアプリをビルドする際に使用されます。もしビルドするときに失敗するようなら、こちらの設定を見なおしてください。
最後にXcodeの有効な開発ディレクトリパスを下記のコマンドを実行して設定します。
$ sudo xcode-select -s /Applications/Xcode-beta.app/Contents/Developer/
これでSwiftの設定は終了です。
ちなみに、もしも今Xcode7.3.1で開発している方は、開発ディレクトリパスをもとに戻すコマンドは以下のとおりです。この記事を読み終わって、iOSアプリ開発に戻る際は、このコマンドを実行してください。
$ sudo xcode-select -s /Applications/Xcode.app/Contents/Developer/
今「旬」のテクノロジーや革新的なサービスを一挙紹介!
オープンイノベーションを支える国内外の最新事例を始め、最先端の技術を活用しサービスを展開している企業やコミュニティの皆さまより、全32セッション(クラウド・ロボティックス・IoT・DevOps・ビックデーターなど)が予定されています。
インフラエンジニアも、開発エンジニアも、営業の方も、そうでない方も、クラウドを活用した、最新のサービスやテクノロジーに興味のある方ならどなたでも参加していただけます。イベント開催の二日間、今「旬」のテクノロジーやビジネスをお楽しみください。