2014年12月13日発売予定です!
詳細!Swift iPhoneアプリ開発入門ノート
Swift 1.1 + Xcode 6.1 + iOS8.1対応
大重美幸 [著]
価格:2880円 + 税 / 512ページ
待望のSwift 1.1対応 サンプル332本!
twitter @note_swift
PART 1 Xcode をはじめる
Chapter 1-1 Xcode の準備
iOS デベロッパセンター/Xcode のインストールとアンインストール/Xcode の動作環境Chapter 1-2 Xcode の使い方
プロジェクトとテンプレート/テンプレートを選ぶ/ワークスペースChapter 1-3 iOS シミュレータで試す
Chapter 1-4 Playground で試す
iOS シミュレータを起動する/ホーム画面とマルチタスキングバー/iOS シミュレータの設定/フィンガーアクション/スナップショットを撮る/写真を取り込む
変数の値を変える/定数を定義する/式を実行する/Value Histroy 機能/コンソール出力/Sin グラフを描く/楕円形を描いてみる/SpriteKit のアニメーションを試す/関数定義とクラス定義
PART 2 基本シンタックス
Chapter 2-1 ステートメントとデバッグ関数
プログラムコードの試し方/ステートメントの区切り/コメント/数値の3桁区切り/デバッグ用の関数とキーワード/アサーション assert()Chapter 2-2 定数と変数
定数の宣言と型推論/変数の宣言と型推論/型の指定/型の違いが引き起こすエラー/型をキャストする/定義済みの値Chapter 2-3 タプル
タプルを作る/値を取り出す/インデックス番号でアクセスする/ラベル付きのタプルChapter 2-4 演算子
算術演算子/インクリメント、ディクリメント/論理演算子/比較演算子/代入演算子/三項演算子/レンジ演算子/ビット演算子Chapter 2-5 条件分岐
Chapter 2-6 ループ処理
if /if ~ else/if ~ else if ~ else/ネスティングと論理演算/switch文/レンジ演算子を使って振り分ける/タプルを利用した振り分け/バリューバインディング/値の振り分けに条件式を使う where/フォールスルー
for-in/for/while/do-while/繰り返しのスキップや実行の中断/ループにラベルを付ける
PART 3 ストリングとコレクション
Chapter 3-1 ストリング String
ストリング/同じ文字の繰り返し/特殊文字/ストリングに変数や式を含める/連結/比較/数値に変換する/String.Index/部分文字列を抜き出す/文字を順に取り出す/検索する/接頭辞と接尾辞/文字の挿入と削除Chapter 3-2 配列 Array
Chapter 3-3 辞書 Dictionary
配列を作る/値の型を限定した配列/空の配列/空かどうか調べる/同じ値で初期化する/値を追加・挿入する/指定した位置の値を削除する/最後の値を削除する/すべての値を削除する/値を入れ替える/配列のコピー/多次元配列/すべての値を取り出す/インデックス番号と値を取り出す/最初の値と最後の値を取り出す/配列を連結する/値を逆順に並べる/値をソートする/値を抽出するfilter()/すべての値で演算を行うmap()
辞書を作る/値の型を限定した辞書/空の辞書/空かどうか調べる/要素の個数/辞書の値を取り出す/値を変更する/辞書のコピー/要素を追加する/更新前の値を受け取る/要素をすべて取り出す/キーと値をタプルに代入する/キーだけをすべて取り出す/すべての値を取り出す/要素を削除する
PART 4 オプショナル、関数、クロージャ
Chapter 4-1 オプショナル
変数にnil を代入する/オプショナルバリュー/アンラップする/nil のときの初期値/if文でのオプショナルバインディング/while文でのオプショナルバインディング/オプショナルチェインニング/メソッドの戻りがオプショナルバリューの場合Chapter 4-2 関数
関数を定義する場所/グローバル関数/Playground で関数を試す/引数がない関数/引数がある関数/引数の個数を指定しない/引数に初期値を設定する/引数を変数宣言する/外部引数名を付ける/外部引数名の省略/引数や戻り値が配列の関数/複数の戻り値がある関数/メソッドの定義/多重定義/ジェネリックな関数/よく使う関数/Chapter 4-3 関数オブジェクト
Chapter 4-4 クロージャ
関数を変数に代入して使う/関数を引数で渡す/関数を戻し値にする
戻り値があるクロージャ/クロージャを変数に代入する/クロージャの型/引数と戻り値があるクロージャ/引数と戻り値がないクロージャ/複数の引数と戻り値があるクロージャ/クロージャを引数で受け取る関数を作る/クロージャ間で共有・保持できる変数
PART 5 クラス、構造体、列挙型
Chapter 5-1 クラス定義
クラスとは/インスタンスの型/クラス定義の書式/クラスメンバーとインスタンスメンバー/クラス定義ができる場所/クラス定義ファイルを作る/インスタンスを作って操作する/Stored プロパティとComputed プロパティ/イニシャライザ/複数のイニシャライザを定義する/指定イニシャライザとコンビニエンスイニシャライザ/クラスメソッドの実装/リードオンリーのプロパティを作る/プロパティオブザーバー/レイジープロパティ/アクセス権/アクセス権を設定したクラスの例
Chapter 5-2 クラスの拡張
クラスの継承/オーバーライド/スーパークラスのメソッドを使う/オーバーライドを制限する/プロトコルの定義/プロトコルを採用する/プロトコルと継承を組み合わせる/エクステンションによるクラス拡張Chapter 5-3 列挙型 enum
Chapter 5-4 構造体 struct
列挙型を定義する/列挙型の値を代入する/列挙型の値で処理を割り振る/Enum Value にRaw Value を割り振る/Raw Value を取り出す/列挙型に関数を定義する/enumで型を列挙する/enumの中でenumを使う/
構造体の書式/構造体の作成/値の参照と変更/イニシャライザがある構造体/関数がある構造体/mutating 属性/サブスクリプトを定義した構造体
PART 6 iOS アプリを作る
Chapter 6-1 画面サイズとオートレイアウト
デバイスの違いと画面サイズの対応/Auto Layout を使ったいろいろな配置/プレビュー機能/Resolve Auto Layout Issues 機能/Size クラスの活用/Regular サイズとCompact サイズ/縦横向きで表示するオブジェクトを変える/縦横向きのレイアウトを変えるChapter 6-2 プロジェクトのスナップショット
プロジェクトの状態をスナップショットする/過去のスナップショットにリストアするChapter 6-3 アシスタントエディタを使う
Outlet の接続/関連付けされたオブジェクトを確認する/Action の接続/Connections パネルとConnections インスペクタ/接続を解除する/Chapter 6-4 標準のUI 部品を使う
Chapter 6-5 デリゲートを使うUI 部品
ラベル UILabel/ボタン UIButton/ステッパー UIStepper/スイッチ UISwitch/セグメンテッドコントロール UISegmentedControl/スライダ UISlider/sender の活用/色の設定/画像の表示・非表示/UI部品クラスの継承
テキストフィールド UITextField/テキストフィールドのデリゲート処理/デリゲートプロトコル/デリゲートメソッド/キーボードを引っ込める/ピッカービュー UIPickerView/デリゲートプロトコルとデータソースプロトコル/ピッカービューを作る/ピッカービューで選ばれた項目を調べる
PART 7 ビューと画面表示
Chapter 7-1 ビューの作成と表示
ビュー階層/インターフェースビルダでサブビューを追加する/プログラムでラベルを追加する/サブビューにラベルを追加する/Chapter 7-2 画像とボタンの作成とConstraints設定
画像を表示する/イメージビューを作る/画像のパターン表示/プログラムでConstraints を設定する/画像を領域のサイズで切り取る/Visual Format Language(VFL)を使う/プログラムでボタンを作るChapter 7-3 テーブルビュー UITableView
インターフェースビルダを使ってテーブルビューを作る/UITableViewDelegate とUITableViewDataSource プロトコル/セクション数とセクションごとの行数/セクションのタイト/セルに文字を表示する/プログラムでテーブルビューを作る/セルをxib ファイルで作るChapter 7-4 コレクションビュー UICollectionView
Chapter 7-5 ビューのアニメーションと映像効果
コレクションビューを作る/セルのカスタムクラスを作る/UICollectionViewDelegate とUICollectionViewDataSource プロトコル/セルデータを作る/セルに画像を表示する
タイマーを使ったアニメーション/タイマーを作る/右へ移動する/左から戻ってくる/イーズインアウトのアニメーション/ビューをタップする/タップした座標/Tap Gesture Recognizer/ビューを映像効果で切り替える/画像を映像効果で切り替える/コマ送りアニメーション/画像を表示する/ブラー効果をかける
PART 8 シーン移動とビューコントローラ
Chapter 8-1 セグエでシーンを移動する
シーンの追加と移動/セグエで接続する/トランジションを選ぶ/元のシーンに戻る/UIViewController クラスを継承したクラスを作る/ビューコントローラとして関連付ける/Unwind セグエを利用して戻るChapter 8-2 ナビゲーションコントローラで遷移する
ナビゲーションコントローラを組み込む/セグエで接続する/ナビゲーションバーにタイトルを追加する/詳細シーン/ナビゲーションコントローラとテーブルビュー/イニシャルビューコントローラを変更する/テーブルビューのセルを設定/Web ビューを配置する/Web ページを開くChapter 8-3 タブバーでシーンを切り替える
タブバーのアプリを作る/3つ目のタブを追加する/セグエで接続する/イメージセットを作る/タブバーアイテムのイメージ/タブバーコントローラのカスタムクラス/バッジを表示する/タブ切り替えのイベントChapter 8-4 アラートとアクションシート
Chapter 8-5 Touch ID で指紋認証を行う
アラートを作る/UIAlertController クラス/アラートにボタンを追加する/テキストフィールドのデリゲート処理/アラートを表示する/アクションシートを作る/アクションシートにボタンを追加する/アクションシートを表示する
LocalAuthentication フレームワークを読み込む/Touch ID 認証を使えるかどうかチェックする/Touch ID 認証を行う/認証結果を振り分ける
PART 9 SpriteKit でゲーム作り
Chapter 9-1 SpriteKit の基本
Game テンプレート/SpriteKit フレームワークの画面表示/GameScene シーンにノードを追加する/SKView ビューにGameScene シーンを表示する/Chapter 9-2 SpriteKit エディタ
SpriteKit エディタを使う/シーンの設定/ノードと座標軸/画像のノードを追加する/シーンのスケールモード/ノードの重なり/親ノードを指定する/ノードに名前を付ける/ノードを名前で参照するChapter 9-3 ノードを追加する
ラベルノードを追加する/45度回転したラベルを表示する/スプライトノードを追加する/スプライトノードに子ノードを追加する/フィルタをかけた画像ノード/シェイプノードで図形を描く(円形、楕円形、四角形、角丸四角形、円弧、折れ線)/ビデオノードを追加する/エミッターノードを追加する(パーティクル)Chapter 9-4 ノードのアクション
移動のアクション/アクションを実行する/タップした位置に移動するアニメーション/指定ベクトルだけ移動する/パスに沿って移動する/回転のアクション/拡大縮小するアクション/フェードイン・フェードアウトのアクションChapter 9-5 アクションを組み合わせる
複数のアクションを同時に実行する/アクションを連結する/アクションを繰り返す/イーズインアウト/待つアクション/サウンドを鳴らす/ノードがタップされたかどうか判定する/アクションを連結して組み合わせるChapter 9-6 物理ボディの作成と操作
SpriteKit エディタを使って物理ボディを作る/落下する物理ボディ/落下せずに回転もしない物理ボディ/落下せずに回転する物理ボディ/シミュレーション機能で確認する/スプライトノードと物理ボディをプログラムで追加する/テクスチャアトラス.atlas/物理ボディを画面タップで動かす/重力とは反対向きの力で押し上げる/重力加速度を設定する/物理ボディの有効範囲/摩擦/反発係数/質量/円形の物理ボディ/四角形の物理ボディ/楕円形の物理ボディ/物理ボディをパスで作るChapter 9-7 インバースキネマティック、ジョイント、フィールドノード
Chapter 9-8 衝突カテゴリと衝突判定
インバースキネマティックを行うアクション/ノードのアンカーポイントを指定/回転角度のリミットを指定/腕と手のノードを連結する/物理オブジェクトをスプリングで連結する/スプリングのジョイントを作る/スプリングが伸びる長さの限界/スライディング/抵抗/揺れの周波数/磁力で引き寄せるフィールドノード/他からの影響を受けなくする/四角いシェイプノードを大小200 個作る/フィールドノードをドラッグする
カテゴリを定義する/物理ボディをカテゴリ分けする/衝突する相手のカテゴリを指定する/衝突イベントを処理する/SKPhysicsContactDelegate デリゲート/衝突イベントを通知するカテゴリ/衝突のデリゲートメソッド/衝突した相手と同じ色にする/パドルゲームを作る/パドルの作成と操作