評判の良いObjective-C本の和書が出たので読み始めました。思ったよりもページ数が薄くて、読み進め易いと感じました。考えてみれば『Effective Java』も、そんなに厚くなかったね。
読む前は、書籍名から『Effective Java』のような実装パターン集を想像していましたが、どちらかと言えば2013-2014年におけるObjective-C 2.0の書き方「ベストプラクティス」が多岐に渡って収録されている印象です。
言語仕様でのハマりどころや、モダンな書き方、ヘルパーマクロの細かな挙動まで解説されており、要点が非常にコンパクトにまとまっています。一つ一つのTips項目がそれほど長くなく、かつ各項目は最後に要点として箇条書きで終わるスタイルになっているため、学んだ事を忘れ難い点も良いです。
個々のTipsは、それこそ次のようなサイトで拾うことは可能です。
しかしながら個別にブックマークしていても、いざという時に知識として引っ張り出すのは大変ですし、Webページはある日あっさり消えたりします。『Effective Objective-C 2.0』は、そういったTipsが、このサイズの書籍1冊に収まっている点が、大きな魅力と言えます。
ところどころで用語や表現が「ん?」という点もあります。突然「クラス延長カテゴリ」と書かれていて、かなり面食らい、項目27へ慌てて飛んで「あぁ、多分クラスエクステンションの事ね」と自分の中で咀嚼したり。他にも「インスタンス変数にクラス内でアクセスするときは直接アクセスする」という見出しを見て「は!?」と項目7へ飛んでみて、「あぁ、読み出しはivarでやって、書き込みはプロパティってことね」と納得出来たような出来ないような得心をしたり…。
が、細かいツッコミは置いといて、アプリを1本2本作ってみて、もう少しObjective-Cの知識を伸ばしたい、と云うような人(つまりは自分)には、打ってつけの内容ではありました。リファクタリングの取っ掛かりを探すのにも良いきっかけになってくれる1冊だと思います。
今後『Effective Objective-C 2.0』は、ステップアップを目指すプログラマ向けに、定番の地位を得て行くように感じています。
じゃあ定番中の定番として必ず挙がる『詳解 Objective-C 2.0』と、どっちが良いか? というのは結構迷うところです。
自分としては、以下の点から『Effective Objective-C 2.0』を先に読むのが良いのではないかと考えます。
一方で、『Effective Objective-C 2.0』は良い意味で割り切っている本なので、解説が不足している点は、後で『詳解 Objective-C 2.0』を読んで補完するのが効率の良い学習法だと思います。
詠み終わったんだけど、特に後半の章では知らなかった事が幾つかあって勉強になったので、Gistにメモを置いた。
@synchronized(self)やNSLockを使わなずGCDでアトミック性を確保するイディオムは初めて見た。
最近のツッコミ
参号館 日記(ariyasacca)