このページは「はじめてのSwiftプログラミング」(清水美樹著、工学社刊、2014年8月23日発売、ISBN978-4-7775-1851-7)の著者によるサポートページです。
本書の正誤表については、工学社ホームページを御覧ください。
仕様変更情報
Swiftの仕様変更により本書のサンプルコードがうまく動かない場合、どのように修正するか解説します。
(Swift 1.0 までの変更事項を記載しました)
SwiftをiOSシミュレータで実行する方法
本書の内容は全て「Xcode6」から使える「Playground」でも実行できます。
しかし、このサポートページでもう一歩Swiftの機能に踏み込んだ場合、実行できない場合があります。
MacやiOSのプロジェクトに書き込んで実行すれば、それらの機能もちゃんと実行されます。
そこで、iOSプロジェクトにプログラムを書いてiOSシミュレータで実行する方法をもう少し詳しく解説します。
参照とは
第7章において、「値のコピー」及び「参照のコピー」を解説しました。
「参照のコピー」について、サンプルプログラムを見ながらもう少し詳しく解説します。
nilかも知れないプロパティ
第4章において解説した「オプショナル値」をもう少し詳しく使ってみます。
クラスのプロパティにオプショナル値を指定すると、初期化をしなくてもインスタンスが作れる、
あとからnilにできるなどの面白い使い方ができます。
ただし、nilにするときには「そのデータが参照されているか」が複雑にからんできます。
下の「相互参照とweak修飾子」が続編になります。
相互参照とweak修飾子
フレームワークなどで、プロパティの定義に「weak」という修飾子をつけることがあります。
これも参照にからんだ修飾子です。上の「nilかも知れないプロパティ」の続編としてお読みください。
フレームワークなどで、クラスのプロパティが「!」のついた「強制アンラップ」の形で定義されていることがあります。
なぜ、通常のデータ型でも「?」のオプショナル型でもなく、「!」の形なのでしょうか?より簡単な例で説明します。
なお、サンプルコードは上の「nilかも知れないプロパティ」及びその続編と同じ趣旨のものです。