HOME » Natsu note » iOS » [iOS5] チュートリアルを試す

[iOS5] チュートリアルを試す 2011/11/10/|iOS

みなさん、どうやってiOS 5の新機能を勉強していますか?今回は変更が多すぎて、Appleのドキュメントだけだとかなり辛いですよね。

ということで、ここのところせっせとチュートリアルをこなしています。お気に入りは、Ray Wenderlichのチュートリアル集です。こちら、iOS 5に限らずこれまでもいくつかのチュートリアル(主にゲーム系)でお世話になってきました。非常に分かりやすい説明が特徴です。

今回、iOS 5のリリースに合わせて、有料版も含めいくつかのチュートリアルが用意されました。

全情報はこちら:Introducing the iOS 5 Feast!
フルコースになっています(笑)。

Introducing the iOS 5 Feast ! | Ray Wenderlich


チュートリアル月間(オンラインチュートリアル:無料)

フルコースの中では、すでにサードメニューになりますが、チュートリアル月間と題して毎週、月/水/金にiOS 5 By Tutorials ($44)の一部が無料で公開されています。

説明が非常に分かりやすく、基本的な部分を習得するためには十分です。これまで公開されているもののうち、試してみたものを以下に紹介します。

User Interface Customization in iOS 5

iOS5ではUIがかなり自由にカスタマイズできるようになりました。ここではその方法を習得します。UIAppearanceを使ったものから、そうでないものまで、様々なUI変更方法が紹介されています。

チュートリアルは、最初にサンプルプロジェクトをダウンロードするところから始まります。このサンプルプロジェクトは、何も変更を施していない素のUIを使っています。ここから、背景の色やボタンの画像を変更していきます。

resizableImageをうまく使って、効率よく角丸のテキストフィールドなどを作るなど、様々なテクニックが紹介されています。

全体を通して非常に分かりやすいですし、UI変更のテクニックとして知っておいて損はないでしょう。

Beginning Storyboards in iOS 5 Part 1
Beginning Storyboards in iOS 5 Part 2

iOS 5の目玉機能であるStoryboardのチュートリアルです。StoryboardはIBの拡張版のようなもので、複数の画面をまとめて管理します。画面間の遷移もCtrl-クリック&ドラッグで簡単に設定できるようになりました。

これまでだと、UINavigationControllerでPushする場合や、ModalViewとして表示する場合には、毎回数行のコード(しかもほとんど同じ!)を書く必要がありました。これが、Storyboard上ですべて設定可能になったのです。

もちろん、画面遷移する際にデータの受け渡しが必要になることもあるでしょう。そのようなときのためのメソッドも用意されているので心配いりません。

このチュートリアルでは、UITableViewを使ったサンプルアプリを作成することで、Storyboardの使い方を習得していきます。

Storyboardを使うことで、画面遷移が簡単に管理できるようになるだけではなく、UITableViewCellの扱いが何とも楽になります。これまでの場合、異なるタイプのcellを一つのテーブルに収めるためには、cellForRowAtIndexPathで非常に煩雑なコードを書かなくてはなりませんでした。

これが、StoryboardのStatic Cell機能を使うと、Storyboard上でレイアウト等が完了します。cell内に配置したラベルなどのUIパーツを直接Outletとして設定できるため、コードがとてもシンプルになります。

これはあくまでも一例であり、Storyboardを使うメリットは他にもたくさんあります。

チュートリアルを最後まで終えたところで、無性にUITableViewを使ったツール系のアプリが作りたくなったことは言うまでもありません。

Beginning OpenGL ES 2.0 with GLKit Part 1
Beginning OpenGL ES 2.0 with GLKit Part 2

iOS 5から導入されたGLKitを利用したOpenGLのチュートリアルです。

GLKitを使うと、とても簡単にOpenGL ES 2.0が利用できます。これまで、OpenGL ES 2.0を利用するためにはシェーダープログラムを自分で書かなくてはいけませんでした。これがOpenGL ES 1.0との大きな違いであり、大きなハードルでもありました(私にとって)。

しかしGLKitを利用すれば、少なくともOpenGL ES 1.0でAPI単位でできていたことは、OpenGL ES 2.0でもAPI単位でできるようになります。シェーダーは不要です(もちろん、シェーダーを使うことも可能)。

さらに、基本的な行列計算等もライブラリで提供されているので、開発が非常に楽になります。また、GLKitには、画面のスクリーンショットを簡単に撮ることができる機能など、よく使う機能が詰まっています。

チュートリアルは、画面上にゆらゆら揺れる四角が描けたら終了です。

こちらのチュートリアルに関しては、少しでもOpenGLの事前知識があった方がスムーズに進むような気がしました。完全にゼロからの状態でも、チュートリアルを進めていけば理解することはできると思いますが、少し難易度が高いかもしれません。

Beginning ARC in iOS 5 Part1
Beginning ARC in iOS 5 Part2

続いてiOS 5の醍醐味、ARC(Automatic Reference Counting)のチュートリアルです。

ARCはその名の通り、リファレンスカウンタ方式のメモリ管理を自動でやってくれるものです。

チュートリアルでは、まずはじめにARCを利用していない(マニュアルメモリ管理している)サンプルプロジェクトを利用します。このプロジェクトをARCに対応させていく過程で、移行方法やARCの基本事項を習得していきます。

また、ARC移行時に自動ツールが吐き出す主なエラーの意味と対処方法も載っているので、実際に既存のプロジェクトを移行する際にも参考になると思います。

難易度は、これまでの他のチュートリアルに比べて少し高めのような気がしました。利用するサンプルプログラムのコードが読めないと辛いかもしれません。

通常のメモリ管理で特に困っていないし無理に使わなくてもいいかな、、なんて思っていましたが、チュートリアルをやって考えが変わりました。これは本当に便利。ケアレスミスによるバグもなくせるし、何よりもコード量を減らせます。

このチュートリアルをやったあとでアップルのドキュメントを読んだら、かなり理解が進みました。お勧めです。

この他に、まだトライはしていませんが、すでに以下のチュートリアルが公開されています。興味のあるものがあれば是非試してみてください。お勧めです。

Beginning Turn-Based Gaming with iOS 5 Part 1
Beginning Turn-Based Gaming with iOS 5 Part 2
Working with JSON in iOS 5
Beginning iCloud in iOS 5 Tutorial Part 1
Beginning iCloud in iOS 5 Tutorial Part 2
Beginning Twitter in iOS 5

今後は、毎週、月/水/金が更新日です。楽しみですね。

iOS 5 By Tutorials

上記で紹介したオンライン版のチュートリアルは、iOS 5 By Tutorialsという有料版のものの一部分です。それぞれの項目の基本部分が無料で公開されているように見受けられます(まだ公開されていない項目については定かではないですが)。有料版は、さらに突っ込んだ詳細な内容のチュートリアルとなっています。

有料版は現在ベータバージョンでPDFによる提供です。$44ですが、内容からすると決して高い買い物ではないでしょう。

オンラインで公開されているチュートリアルをいくつか試してみて、気に入ったら購入してみるのもいいかもしれません。

私は先ほど購入しました。続きをやるのが楽しみです。

ビギナー向けチュートリアル

iOS 5 By Tutorialsは、ある程度iOS開発の知識と経験があることを前提としています。初めてアプリ開発をしようという方には難易度が高すぎるでしょう。

そんな方のために、ビギナー向けのチュートリアルが別途用意されています。こちらは前提知識ゼロからスタートすることが可能です。

The iOS Apprentice: Learn iPhone and iPad Programming via Tutorials!

内容としては、ゲームやチェックリスト、位置情報アプリを作成しながらiOS開発の基本事項やiOS 5の機能について習得していきます。一番最初は、開発に必要な環境の説明から入っています。

さらに、アプリ設計の考え方や、Xcodeの詳しい使い方、また、重要なパターン(Model-View-Controllerパターンなど)の説明も丁寧にされているようです。

第一章のゲームだけは、ニュースレターを購読すると無料でダウンロード可能。それ以外(チェックリストと位置情報アプリ)は一つあたり$24で、まとめて購入する場合は$39となっています。

以上、最近ひたすら取り組んでいるiOS 5のチュートリアルに関する紹介でした。非常に素晴らしい内容です。英語ですが、トライしてみる価値はあると思います。ぜひどうぞ。