「詳細!Swift iPhoneアプリ開発入門ノート」の各章の概要は次のとおりです。
(こちらも参考にしてください →詳しい目次

PART1 Xcodeをはじめる
 最初にXcodeの各部の名称と機能の概要、アプリの動作を試すiOSシミュレータの使い方を知りましょう。Swiftプログラミングを遊ぶように試すことができるPlaygroundの使い方も具体例で示します。この後、PART 2からはSwiftのシンタックスの解説です。早くiOSアプリを作ってみたいという人はPART 6を開いてみてください。
  • Chapter 1-1 Xcode の準備
  • Chapter 1-2 Xcode の使い方
  • Chapter 1-3 iOS シミュレータで試す
  • Chapter 1-4 Playground で試す
PART2 基本シンタックス
 プログラミングにおいてもっとも重要な基本シンタックスを説明します。Swiftは一般的なプログラム言語と似て取り組みやすいですが、実際にはなかなかの強者です。タプルだけでなく、条件分岐やループ処理にも新しい言語らしいアイデアがあります。
  • Chapter 2-1 ステートメントとデバッグ関数
  • Chapter 2-2 定数と変数
  • Chapter 2-3 タプル
  • Chapter 2-4 演算子
  • Chapter 2-5 条件分岐
  • Chapter 2-6 ループ処理
PART3 ストリングとコレクション
 ストリング、配列、辞書について解説します。それぞれに細かな仕様がありますが、すべてを覚える必要はなく、どのようなことができるのかということを把握すればOKでしょう。必要に応じて調べ直してください。
  • Chapter 3-1 ストリング String
  • Chapter 3-2 配列 Array
  • Chapter 3-3 辞書 Dictionary
PART4 オプショナル、関数、クロージャ
 オプショナルはSwiftの特徴的な仕様の1つです。概念としては単純ですが、慣れるまでは戸惑う場面があるかもしれません。関数オブジェクトやクロージャはプログラミング初心者には少し難しい内容なので後回しでも構いません。将来役立つことがあるので、その存在を知っておいてください。
  • Chapter 4-1 オプショナル
  • Chapter 4-2 関数
  • Chapter 4-3 関数オブジェクト
  • Chapter 4-4 クロージャ
PART5 クラス、構造体、列挙型
 Swiftのクラス定義、構造体、列挙型は自由度が高く、なかなか欲張りです。初心者はあまり深入りせずに先に進むのがよいのかもしれませんが、ここでの踏ん張りが将来の差になるでしょう。この山は登るべきです。
  • Chapter 5-1 クラス定義
  • Chapter 5-2 クラスの拡張
  • Chapter 5-3 列挙型 enum
  • Chapter 5-4 構造体 struct
PART6 iOS アプリを作る
 ここからは実際にiOSアプリを作っていきます。Xcode 6から画面サイズの設計方法が新しくなりました。まずはその説明から入ります。後半はアプリで使う標準UI部品のプログラミングを解説します。デリゲートを使うUI部品では、ここでデリゲートの基礎を理解してください。以降もたびたび出てくる手法です。
  • Chapter 6-1 画面サイズとオートレイアウト
  • Chapter 6-2 プロジェクトのスナップショット
  • Chapter 6-3 アシスタントエディタを使う
  • Chapter 6-4 標準のUI 部品を使う
  • Chapter 6-5 デリゲートを使うUI 部品
PART7 ビューと画面表示
 アプリの画面はビューでできています。ビューの作成と表示はその意味でもっとも基本的な要素です。テーブルビューとコレクションビューは、デリゲートやデータソースの扱いなど難しい要素も含んでいますが、これがわかるとiOSアプリ開発の大きな山を1つ乗り越えたことになります。ビュー切り替えや更新の映像効果についても解説します。
  • Chapter 7-1 ビューの作成と表示
  • Chapter 7-2 画像とボタンの作成とConstraints設定
  • Chapter 7-3 テーブルビュー UITableView
  • Chapter 7-4 コレクションビュー UICollectionView
  • Chapter 7-5 ビューのアニメーションと映像効果
PART8 シーン移動とビューコントローラ
 複数のシーンを移動するアプリケーションを作れるようになるとアプリの設計の幅が広がります。セグエの使い方、ビューコントローラとシーンの関係などを理解してください。またこの章では、アラートとアクションシート、Touch IDでの指紋認証についても解説します。
  • Chapter 8-1 セグエでシーンを移動する
  • Chapter 8-2 ナビゲーションコントローラで遷移する
  • Chapter 8-3 タブバーでシーンを切り替える
  • Chapter 8-4 アラートとアクションシート
  • Chapter 8-5 Touch ID で指紋認証を行う
PART9 SpriteKit でゲーム作り
 SpriteKit は、グラフィック処理が速くGame 制作を主な目的として利用されるフレームワークです。2D、物理演算に関わるクラスを含んでいて、SpriteKit だけの世界があります。描画、アニメーション、物理ボディ、衝突判定処理などを詳しく解説します。
  • Chapter 9-1 SpriteKit の基本
  • Chapter 9-2 SpriteKit エディタ
  • Chapter 9-3 ノードを追加する
  • Chapter 9-4 ノードのアクション
  • Chapter 9-5 アクションを組み合わせる
  • Chapter 9-6 物理ボディの作成と操作
  • Chapter 9-7 インバースキネマティック、ジョイント、フィールドノード
  • Chapter 9-8 衝突カテゴリと衝突判定

SpriteKitの衝突した相手を見極める

物理ボディをカテゴリ分けし、衝突イベントを通知するカテゴリcollisionBitMaskを指定します。
衝突のSkPhysicsContactDelegeteのデリゲートメソッドを処理して、パドルが跳ね返したボールの色を調べてパドルの色を変更しています。


(Chapter9-8 p498、ex_contactTestBitMask)

SpriteKitのカテゴリを使った衝突判定

SpriteKitで物理ボディを作ると、標準ではすべての物理ボディ同士が衝突します。カテゴリを作り、物理ボディをカテゴリ分けすることで衝突し合うカテゴリを指定できます。
次の例では四角形はすべての形と衝突しますが、円と楕円は互いにぶつかりません。


(Chapter9-8 p493、ex_categoryBitMask_collisionBitMask)

SpriteKitのインバースキネマティック

SpriteKitのインバースキネマティックを試します。インバースキネマティックとは、腕の関節のように連結しているノードを動かしたとき連動した動きを作るものです。腕の長さや回転角度の範囲などに制限された動きをします。


(Chapter9-7 p482、ex_SKAction_IK)

Touch IDで指紋認証

Touch IDで指紋認証を行うには、LocalAuthenticationフレームワークを使います。最初に指紋認証ができるデバイスかどうかをチェックし、可能ならば指紋認証を行います。指紋認証そのものはiOSが行ってくれるので、プログラムでは返ってくる認証結果で処理を分岐するだけです。
なお、指紋認証のテストはiOSシミュレータでは行えません。iOSデベロッパプログラムに参加し、登録した実機で試す必要があります。


(Chapter8-5 p415、ex_TouchID)

SpriteKitの物理ボディを作る

SpriteKitエディタを使えば、コードを書かずに物理ボディを作ることができます。
次の例の落下するカエルや障害物の四角形はSpriteKitエディタを使って作っています。

SpriteKitエディタを使って物理ボディを作る

(Chapter9-6 p470、ex_SpriteKitEditor_physicsBody)

次の例ではSpriteKitエディタを使って四角い物理ボディを作り、カエルとアザラシはコードで作成したスプライトノードに物理特性を設定しています。

SpriteKitで物理ボディを作る

(Chapter9-6 p475、ex_SKPhysicsBody)