いよいよver1.0がリリース!SwiftからはじめるiOSアプリ開発:その1【初心者向けアプリ開発3分tips】
2014/09/16公開
アプリ開発スクール『RainbowApps』
日本で初めて、プログラミング受講料の無料提供を始めたアプリ開発スクール。iPhone,、Android、Unity、HTML5、AWSコースを展開しており、受講用のMac完備、初心者・未経験者から受講OK。特徴は、大手IT企業からベンチャーまで、受講後の就職・転職もサポートしている点だ。全国で教室を開いているほか、オンライン講座も展開中。詳しい情報はコチラ
こんにちは、日本最大のアプリスクール『RainbowApps』で、主にiOSアプリ開発の指導を担当している我妻幸長と申します。本連載では、iOS、Android、Unityなどのアプリ開発について、初心者向けの内容を『RainbowApps』講師陣が分かりやすく解説していきます。
第一回目は、iOSアプリ開発についてです。
数日前に、Appleの新デバイス発表が世界中の開発者に衝撃を与えたばかりですね。
iOSアプリ開発は、今大きなターニングポイントを迎えています。今年6月2日に新プログラミング言語SwiftがAppleから発表され、Swiftによるアプリ開発を試すことが可能になりました。また、今後アプリ開発の主軸がSwiftに移行していく可能性が示唆されました。
さらに、9月9日にXcodeの最新版、Xcode6 GM Seedがダウンロード可能になり、Swiftで開発したったアプリをApp Storeに申請することが可能になりました。
従来はiOS開発のためにObjective-Cというやや癖の強いプログラミング言語を使わざるを得ませんでしたが、Swiftの登場により、シンプルで分かりやすい表記でアプリ開発のコードを記述することが可能になりました。
Swiftは、今後より多くの人々にiOSアプリ開発者への道を開いていくことかと思います。この機会に、主にこれからiOSアプリ開発を始める人に向けて、SwiftとXcode6を用いたアプリ開発の基礎を、以下の順番で紹介していきたいと思います。
【1】iOSアプリ開発の概要
【2】Swiftって何?
【3】Playgroundを起動してみよう!
【4】Swiftで遊んでみよう!
アプリ開発やSwiftの概要を解説した後、XcodeのPlaygroundという機能を使ってSwiftの簡単なコードを実際に動かしてみます。
【1】iOSアプリ開発の概要
iOSアプリ開発にはXcodeという開発環境を用います。Xcodeの最新のバージョンは6.0です。Swiftでアプリ開発が可能なのはこのバージョン6.0以降です。XcodeはMac OS版しかありませんので、それ以外の環境、例えばWindows環境などでiOSアプリ開発をすることはできません。
Xcodeは無料でダウンロードが可能です(以下にダウンロード先のリンクを貼っています)。作製したアプリをMac上のシミュレータ上で動作確認するのみであれば、お金を取られることはありません。
ただ、実機でアプリの動作確認をしたり、作ったアプリをApp Storeに掲載させるためには、年間税別で7800円かかる開発者登録が必要です。
実際に開発をする際は、Xcodeを起動後、最初にプロジェクトというものを作製します。プロジェクトはアプリ開発をするためのベースのようなもので、基本的には1アプリあたり1つのプロジェクトが必要です。プロジェクトの中で、Storyboardという機能を用いて画面をデザインしたり、Objective-CやSwiftを用いてアプリを機能させるためのコードを書いていくことになります。
本記事ではまだプロジェクトの作製は行いません。まずはPlaygroundという機能を使って、Swiftに慣れることから始めていただきたいと思います。
【2】Swiftって何?
Appleの開発者向けサイトにある、SwiftのOverviewはこちら
Swiftは、今年の6月にApple開催の開発者向け会議、WWDCで発表されたばかりのとても新しいプログラミング言語です。
これまでは、iOSアプリ開発にObjective-Cという言語が用いられてきました。Objective-Cは30年前に開発された言語で、本格的なオブジェクト指向言語なのですが癖が強く、特にプログラミング初心者はかなりの苦戦を強いられました。
Swiftでは、Objective-Cで長い記述が必要であった処理がより短い記述で可能になり、他の言語の優れた機能が数々導入されています。
Swiftの優れた点を以下にいくつか挙げてみます。
・コードに無駄な記述が少なく、可読性が高い。
・他言語のモダンな仕様が導入されており、洗練されたコードの記述が可能。
・コードの安全性にしっかりと配慮がされており、不具合が発生しにくい。
・処理が高速。
どの程度時間がかかるかは分りませんが、今後Objective-Cは次第にSwiftに置き換わっていくものと考えられます。今からアプリ開発を始める方にとっては、Swiftから始めるのも一つの選択肢かと思います。
ただ、6月にSwiftが発表されてからこれまでに何度も仕様が変更されています。一応9月9日の発表でSwiftのバージョンは1.0になりましたが、Swiftが抱える問題点が解消され、仕様が固まるまでまだ時間がかかる可能性はあるかと思います。
この後は、実際にSwiftのコードを記述して、動作の確認を行います。
【3】Playgroundを起動してみよう!
まずはXcode 6 GM seedをAppleのWebサイトからダウンロードしてください。
https://developer.apple.com/jp/xcode/downloads/
ダウンロードされたxcode_6.dmgファイルをダブルクリックし、Xcodeのインストールを行ってください。無事インストールされると、アプリケーションフォルダにXcode.appという名前のアイコンが確認できるはずです。
Xcode.appをダブルクリックして、Xcodeを起動してください。起動後、以下のような画面が見えるはずです。
上記の画像において、赤い点線で囲んだGet started with a playgroundをクリックしてください。
以下の画面が表示されます。
次に、Nameの箇所にお好きな名前を付けて、Nextをクリックしてください。
その後保存場所の指定を求められるので、保存場所を指定してCreateボタンを押してください。
上のように表示されれば、Playgroundが無事起動したことになります。すでに2行ほどSwiftのコードが記述されていますが、この後これらの行の下に数行ほどコードを追加してみたいと思います。
【4】Swiftで遊んでみよう!
Playgroundは”遊び場”という意味です。コードと戯れるようにして、Swiftの扱いに慣れていきましょう。
まずは、7行目の辺りに以下のコードを記述してください。
let aaa = 1
let bbb = 2
let ccc = aaa + bbb
これは【aaaに1を入れて、bbbに2を入れて、cccにはaaaとbbbを足した値を入れる】という意味です。
aaa、bbbとcccは定数と呼ばれるものです。数値などを入れておいて、後から足し合わせたりすることができます。
letはこれらが定数であることを示しています。ちなみに、letの代わりにvarと記述すると、定数ではなく変数になります。定数と変数の違いは、あとから中身の値を変更できるかどうかです。
画面右には、各定数の中身が表示されています。
このように、コードの入力直後に結果を確かめることができるのがPlaygroundの特徴の一つです。数値を変更したり、新たな定数や変数を追加したりしてみて、ぜひSwiftと戯れてみてください。
次に、12行目の辺りに以下のコードを記述してください。
let ddd = “Rainbow”
let eee = “Apps”
let fff = ddd + eee
“”で囲まれた領域は「文字列」と呼ばれており、文章を扱うことができます。
dddに”Rainbow”という文字列を入れて、eeeに”Apps”という文字列を入れます。fffにはdddとeeeをつなげた文字列を入れます。この場合も、画面右側で各定数の中身を確認することができます。さまざまな文字列をつなげてみて、結果を確かめてみてください。
次に、その下に次のコードを記述してください。
for i in 1…50{
i/10
}
このコードは、iの値を1から50まで1つずつ変化させて、その都度{ }の中の処理を行うという意味です。
{ }の中ではiの値を10で割っています。
上図の右側の矢印で指されたアイコンをクリックしてみてください。以下のように、実行結果が右側にグラフで表示されます。
iの値を10で割った結果は整数で得られますので、結果は階段状になります。計算方法や値を変化させて、結果のグラフがどう変化するのか確かめてみてください。
プログラミングの上達のコツの一つは、好奇心の赴くままにコードと戯れてみることです。今回の記事ではSwiftの記述法のごく一部しか紹介していませんが、ぜひSwiftのさまざまなコードを調べて、Playgroundに書いてみてくださいね。
今回は最初にアプリ開発とSwiftの概要を説明しました。そしてPlaygroundを使ってSwiftの動作を確認しました。次回以降は、Xcode6を用いて簡単なアプリの制作を実際に行います。お楽しみに。
【著者プロフィール】
RainbowApps講師
我妻幸長
1977年生まれ。茨城県出身。東北大学大学院博士課程物理学専攻を修了。大学の研究員や半導体関連企業の技術職をを経てiOSアプリ開発者に。2012年より、開発の傍ら講師として主にiOSアプリ開発の指導を開始。2014年にメイン講師兼教育事業部責任者に就任。
iOSのカリキュラムを設計開発する傍ら、Android、Unityを含むRainbowAppsのカリキュラム全体の監修を行う。これまで累計500人以上の受講生にアプリ開発の指導を行った経験アリ。開発者としての代表作は、『ちんあなごのうた 南の海の音楽祭』など。
9月21日(日)に、動画教育サイトschooにて『開発環境の構築から一緒に始めよう!―Swiftで始めるiOSアプリ開発』も開講。
【著者からひと言】 iOS、Android、Unityなどのアプリ開発を本格的に学びたい方は、ぜひRainbowAppsにお越し下さい。プログラミング初心者の方から経験者の方まで、レベルに合わせた対応が可能です。