【Swift】書籍「小学生でもわかるiPhoneアプリのつくり方」Xcode8 / Swift3での注意点

小学生でもわかるiPhoneアプリのつくり方

「小学生でもわかるiPhoneアプリのつくり方」という本を読んでみました。タイトル通り、iPhoneアプリ開発の手順を説明した小学生向けの書籍です

アプリ作成を開始する前に、まずプログラムの基本から説明されているので、プログラムが全くの初めてという小学生でも大丈夫です。英語にふりがなが付いているので子どもだけで読み進められます

子どもが楽しめるようなiPhoneアプリが簡単に作れるように工夫されていますが、アプリ開発のほんの入り口までしか触れられていないので、この書籍だけで本格的なアプリを作るのは難しいです。また、実機への転送や実際にストアで販売する方法の説明もありません。本書で触れられているのはシミュレータでの実行まで

と書くと内容が薄いように思えますが、小学生のiPhone開発の入門書としては難しすぎず、易しすぎず、ちょうどいい内容になっていると思います

表紙に「Xcode7 / Swift2 対応」と書かれていますが、最新の「Xcode8 / Swift3」の環境でもほぼ問題ありません。for文も新しい形式で掲載されています

以下、読み進めるに当たって「Xcode8 / Swift3」環境で注意が必要になる点です

プロジェクトの新規作成画面が変わった

Xcode8ではプロジェクトの新規作成の画面のレイアウトが少し変わりました。「Single View Application」は一番左端です

小学生でもわかるiPhoneアプリのつくり方

Storyboardの端末画面のサイズ変更方法が変わった

Storyboardでレイアウト時に使う端末サイズを変更する方法が変わっています

小学生でもわかるiPhoneアプリのつくり方

小学生でもわかるiPhoneアプリのつくり方

ボタンと繋げることで自動で生成されるメソッドが少し変更

Storyboradと連結すると自動で作成されるメソッドですが、senderの前に「_」が入るようになりました
勝手に作られるメソッドなので、特に意識しなくてもプログラムは動作します

Swift2までは1つ目の引数のラベルは無視されてましたが、Swift3からは意味を持つようになりました。「_」をつければ、Swift2の時と同じように1つめの引数のラベル名は無視していいよ!という意味になります

//Swfit2
@IBAction func tapButton(sender: AnyObject) {
//Swift3
@IBAction func tapButton(_ sender: AnyObject) {

スピーチのメソッドが変更

これまた、Swift3のメソッドラベルの変更の影響です
func speakUtterance(utterance: AVSpeechUtterance)

func speak(_ utterance: AVSpeechUtterance)
に変わりました

//Swift2
speak.speakUtterance(speech)
//Swift3
speak.speak(speech)

この部分を変更すれば、サンプルは問題なく動作すると思います

同じ著者の本です。この本の次のステップによさそうです

ゲームをつくりたいならこちら

タイトルとURLをコピーしました