わかりやすいと評判の日本語Swift言語入門書
Swift1.1
|
プログラミング言語Swiftの解説書
2014年6月2日AppleのWWDC基調講演で電撃発表された新プログラム言語『Swift』は即座に開発コミュニティの話題の中心となりました。そして2015年も変化が続いています。
この本はこれまで Objective-C を使ってきた開発者にSwiftでのプログラミングを解説するために書きました。同時にすべてのSwift初学者に、まとまった日本語の解説としてお役にたつよう解説の追加を続けています。 正式版のXcode6.3(Swift 1.2)に対応済みです。 この「Swift離陸ガイド」は最初のBeta版から最新の変更点に対応し書き直しているので古いサンプルで発生するエラーなどSwiftに慣れないゆえのつまずきを効果的に防ぎます。最新のXcodeをダウンロードしてご使用ください。 第14版でXcode 6.3とSwift 1.2に対応しました。100箇所近い加筆修正を加えました。 第13版で「Swift1.2ハイライト」の「as!」の説明誤りを修正しました。第12版でSwift1.2の速報を追加しました。第11版でXcode 6.1.1に対応しました。第9版でXcode 6.1 の Swift 1.1 に対応しました。第8版で正式版Xcode6.0.1に対応しました。第7版でBeta7、第6版でBeta6、第4版でBeta5、第3版でBeta4、第2版でBeta3の変更内容に対応済みです。 電子書籍なので一度購入すると最新版を無料でダウンロードすることができ、常に最新の内容を読む事ができます。 サンプルは無料で読めますのでぜひお試しください。 Swift離陸ガイド 第14版 目次■ この本 について
❖ はじめに ★一部修正 ・おことわり ❖ この本の使い方 ❖ この本の構成 ■ Swift 概要 ❖ Swiftの第一印象 ・行の終わりにセミコロン不要 ・コメントはCと同じ ・簡潔な記述 ・ヘッダファイルも不要 ・NSObjectの継承が不要 ・演算子などはなじみあり ❖ Swift を使う ❖ Swift と Objective-C の違い ・nilが違う ・静的解析でエラーを指摘してくれる ・Swift は Objective-C よりもカンタン? ■ Xcode ❖ Xcodeのバージョン ・6.3 ★第14版で追加 ・6.2 ★第14版で追加 ・6.0.1 と 6.1 ❖ Playground ・Playgroundをはじめる ・println出力 ★一部修正 ・エラーとその修正 ・データの格納先【Xcode 6.3】 ★第14版で追加 ・ドキュメントとして利用する【Xcode 6.3】 ★第14版で追加 ❖ Swift 1.2 概要 ・Xcode 6.3 での変更点ハイライト ■ Swiftの基本要素 ❖ 文と変数・定数 ・文 ・変数 ・定数 ★一部修正 ❖ 基本演算子 ・演算子と空白 ・代入演算子『=』 Assignment Operator ・算術演算子 Arithmetic Operator ・剰余演算子 Remainder Operator ・インクリメント・デクリメント演算子 ・マイナスとプラス演算子 Unary Minus Operator Unary Plus Operator ・複合代入演算子 Compound Assignment Operator ・比較演算子 Comparison Operator ・三項演算子 Ternary Conditional Operator ・タイプキャスト演算子 ★第14版で追加 ・Nil Coalescing Operator ★一部修正 ・範囲演算子 Range Operators ・論理演算子 ❖ 高度な演算子 ・ビット演算子 Bitwise Operator ・オーバーフロー演算子 Overflow Operator ★一部修正 ・演算子の優先順位と結合 ★一部修正 ・演算子のオーバーロード ・カスタム演算子 Custom Operator ❖ 制御フロー ・if文 ・switch文 ・for文 ・for in 文 ・while文 ・do while文 ・Control Transfer Statement ・ラベル付きステートメント ■ 関数とクラス ❖ Swiftの関数 ・関数の定義と呼び出し ・引数なしの関数 ・値を返さない関数 ・複数の値を返す関数 ・Optional Tuple を返す関数 ・引数の名前 ・External Parameter Name ・External Parameter Namesの簡略記述 ・引数のデフォルト ・可変個引数の関数 ・他の関数を返す関数 ・他の関数を引数にした関数 ・引数は定数がデフォルト ・値を返す引数 ❖ クラス ・クラス ・イニシャライザ ★サンプルコード修正 ・デイニシャライザ ・インスタンスの生成 ❖ プロパティ ・プロパティ ・Stored Properties ★サンプルコード修正 ・Lazy Stored Properties ・Computed Properties ・リードオンリーのComputed Properties ・Type Properties ★説明追加 ・インスタンスメソッド ・クラスメソッド ★説明追加 ・メソッドのオーバーライド ・Objective-C の id ❖ nilとオプショナルな値 ・nil ・Optional オプショナルな値 ・Optional Binding ★説明追加 ・Nil Coalescing Operator ★説明追加 ・Optional Chaining ・ImplicitlyUnwrappedOptional ❖ プロトコル ・プロトコルとは ・Swiftのプロトコル ・プロパティ必要事項 ★説明追加 ・メソッド必要事項 ★説明追加、サンプルコード修正 ・Mutatingメソッド必要事項 ・イニシャライザ必要事項 ・型としてのプロトコル ・Delegation ・Extensionによるプロトコル適合 ・プロトコルの継承 ・クラス専用プロトコル ・Protocol Composition ・プロトコル適合チェック ★一部修正 ・プロトコルのオプション指定 ★サンプルコード修正 ■ 型 ❖ 論理型 ❖ 文字列 ・文字列のリテラル ・Characterとの関係 ・文字数 ★説明修正、サンプルコード修正 ・文字列のインデックス ★第14版で追加 ・文字列の挿入と削除 ★第14版で追加 ・文字列の結合 ・文字列の比較 ・文字列処理 ・文字列変換 ❖ 数値 ・最小値 ・最大値 ・数値のリテラル ❖ コレクション 配列 ・配列 ・配列を使う ・値の入れ替え ★一部修正 ・値と別配列の追加 ・逆順並べ替え ・条件を指定した並べ替え ・絞り込み ・map ・値の削除 ・空の配列 ★説明追加 ・初期化 ・どんな型にも対応する配列 ・配列の定数の注意点 ・多次元のArray ❖ コレクション Set【Swift 1.2】 ★第14版で追加 ・SetをArrayリテラルで初期化 ・Setの要素数と空の判断 ・Setへ要素の追加と削除 ・Setの要素を含むかの確認 ・全ての要素を取り出す ・集合操作 ・比較 ・Set型のハッシュ値について ❖ コレクション 辞書 ・辞書を使う ・辞書の全要素を扱う ・値の変更と追加 ・辞書から削除 ・比較 ・辞書はオプショナル ❖ enum 列挙型 ・列挙型内の関数 ・Raw Values ・Associated Values ・列挙型のmutating ・enumのObjective-Cとの互換性【Swift 1.2】 ★第14版で追加 ❖ Struct 構造体 ・構造体とクラスの共通点 ・構造体のプロパティ ・構造体のmutating ❖ Nested Types と tupleとキャスト ・Nested Types ・複数の値を扱う tuple ・型の確認とキャスト ❖ Subscript ・Subscript の書式 ・Subscript の使い方 ■ オブジェクトとAccess Control ❖ オブジェクト ・インスタンスの比較 ・値が存在するか ・循環参照対策 ・Extension ・Closure ★ソースコード修正、キャプチャリストの説明追加 ❖ Access Control ・アクセスレベル ・Access Control 書き方 ・Tuple型のアクセスレベル ・関数のアクセスレベル ・列挙型のアクセスレベル ・サブクラス化のアクセスレベル ・定数、変数、プロパティ、サブスクリプトのアクセスレベル ・イニシャライザのアクセスレベル ・プロトコルのアクセスレベル ・フレームワークのコード例 ■ Swiftならではの書き方 ❖ 便利な書き方 ・複数の値を返す関数 ・範囲指定(Range Operator) ・Generics (ジェネリック) ❖ その他 ・Attribute ★説明追加 ❖ Objective-C クラスを Swift から使う ・イニシャライザ ・クラスメソッドの場合 ・Objective-Cクラスのメソッドの利用 ・idの処理 ❖ SwiftのクラスをObjective-Cで利用する場合 ❖ Objective-Cとの互換性 ・型の対応とブリッジ ・プロパティ属性の指定 ・Nullability【Xcode 6.3】 ★第14版で追加 ■ 最後に ❖ 目が離せないSwiftの動向 ・ついに正式版 Xcode 6.1登場 ・そしてSwift 1.2発表 ★第14版で追加 ❖ Swift資料と関連項目 ・Appleの公式webサイト(英文) ★一部追加 ・Appleの公式ドキュメント(英文) ★URL更新 ・サンプルコード ■ Swift言語仕様と公式資料変更履歴 ❖ 最新情報 ・2015年4月9日 (Swift1.2 Xcode 6.3正式版) ★第14版で追加 ❖ Swift言語仕様 これまでの変更点 ・2015年2月9日(6.3ベータ版) ・2014年12月2日(6.1.1正式版) ・2014年10月20日(6.1正式版) ・2014年10月10日(6.1 GM seed2) ・2014年9月15日 ・2014年9月17日【正式版】 ・2014年9月09日(GM) ・2014年9月02日(Beta7) ・2014年8月18日(Beta6) ・2014年8月4日(Beta5) ・2014年7月21日(Beta4) ・2014年7月7日(Beta3) ・2014年6月2日 最初の公開資料 ■ Swift離陸ガイド 改訂履歴 著者略歴 |
2015年4月21日 第14版(発行日4月18日)Xcode 6.3とSwift 1.2に対応しました。
2015年2月27日 第13版(発行日2月24日)Swift 1.2ハイライトの「as!」の説明を修正 2015年2月14日 第12版(発行日2月12日)Swift1.2速報を追加しました。 2014年12月10日 第11版(発行日12月10日)Xcode 6.1.1に対応しました。 演算子と空白 多次元のArray を追加しました。 2014年10月29日 第10版(発行日10月28日)第9版のSwift1.1変更点にAnyObjectが漏れていたので修正しました。 2014年10月28日 第9版(発行日10月26日)Xcode 6.1 の Swift 1.1 に対応し変更点の解説を追加しました。 2014年9月23日 第8版(発行日9月22日)Xcode 6.0.1の正式版Swift(Swift1.0)に対応しました。Playgroundの解説を追加しました。(GMの言語仕様はBeta7と同じでした。2014-09-12追記) 2014年9月5日 第7版(発行日9月4日)公開 9月2日付けBeta7の内容を解説に反映させました。 ・Attribute を追加しました。・型の対応とブリッジ を加筆しました。 switch文の解説を追加しました。 ・ImplicitlyUnwrappedOptional を追加しました。 2014年8月22日 第6版(発行日8月21日)公開 8月18日付け言語仕様の変更(Beta6)に対応し加筆修正しました。プロトコルの解説を強化しました。全体を見直し細かな修正を加えています 2014年8月21日 第5版(発行日8月18日)公開 構成を変更し、演算子の解説を強化・制御フローに Control Transfer Statement とラベル付きステートメントを追加・Subscriptの解説を強化しました。 2014年8月12日 第4版(発行日8月8日)公開 8月4日に発表になった言語仕様変更に対応し(a??b)などの解説を追加しました。 構成を変更し、演算子の解説を強化・制御フローに Control Transfer Statement とラベル付きステートメントを追加・Subscriptの解説を強化しました。 2014年8月1日 第3版(発行日7月31日)公開 7月21日に発表になった仕様変更に対応しAccess Controlなどを加筆修正しました。 2014年7月10日 第2版(発行日7月8日)公開 7月7日に発表になったSwiftの言語仕様の変更に対応しました。Xcode Beta3で動作するサンプルに修正しました。 2014年7月8日(発行日7月3日)版が公開 この版は一部脱字があります。フォーマットを変更しています。 2014年7月4日初版リリース(発行日6月25日) ●最新版のダウンロード方法
既にご購入済みの場合はiBooks Storeの「購入済み」タブでiCloudからダウンロードすると最新版になります。StoreのランキングなどでSwift離陸ガイドの「アップデート」ボタンでも可能です。 Mac版iBooksは最新版入手法をご覧ください。 Kindle版は自動ダウンロードできません。最新版入手法をご覧ください。 著者高橋のひとりごとiBooks版の第11版について
この版もMacとiPad用です。申し訳ございませんがiPhoneでは読む事ができません。 新しい版をアップロードするツール「iTunes Producer」を古いバージョンに戻して試みましたが、iPhoneも読めるフォーマットではエラーを表示するためアップロードすることができず、やむなくこのフォーマットで更新しました。 2014-12-12 iBooks版の第9版について
第9版だけiBooksにデータをアップロード時に原因不明のエラーが発生しました。 このためiBooks Authorのフォーマットに変更しました。 第9版はこれまでと表示等が変わっています。文字サイズが調整できないなどご不便をおかけし申し訳ございません。 次の更新で元の表示に戻したいと思っておりますが、エラーが原因不明のため引き続き調査します。 2014-10-28 ドキュメント化した仕様を変更するとは、期待は少しありましたがやるとは思いませんでした。Arrayの挙動はきっとWWDCのラボでたくさんの疑問とリクエストがあったのでしょう。今回の仕様変更は良い方向だと思います。(Half-Closed Range Operator だけは少々疑問あり)
★これを書いたのは:2014-07-08 発行日7月3日の第1版について 最初に申請したePubデータがリジェクトされフォーマットを変更して再提出しました。再提出を急いだため一部脱字が発生していたのを見落としました。再提出の翌日ダウンロード可能になりましたが、リジェクトされたはずの最初のデータがダウンロードされる状態でした。 4日後に再提出したデータがダウンロード可能になりました。リジェクトに対する再提出であったので『第1版』の部分はそのままにしていました。 |