スキップしてメイン コンテンツに移動

Objective-C関連書籍

Objective-C、それにAppleのApplication FrameworkであるCocoaはマイナーな開発ツールだ。AppleのDevelopers Connectionでは詳細なドキュメントが出ているが、やはりリファレンス的なものが多く、これから学ぼうという人にはなかなか最初はハードルを感じてしまうだろう。

やはりまとまった書籍の解説書や入門書があればと思い探したので入手した範囲で紹介を。
わたしが入手した、またはおすすめなのは以下の4書。

  1. たのしいCocoaプログラミング
  2. 詳解Objective-C 2.0
  3. Programing in Objective-C
  4. Cocoa Programing for Mac OS X (5月28日発売予定)

まず、現在日本語で入手できる書籍では、わたしが探した範囲では『たのしいCocoaプログラミング』くらいしか見つけることができなかった。

たのしいCocoaプログラミング
木下誠
ビー・エヌ・エヌ新社
売り上げランキング: 8579

この本はとてもわかりやすくCocoaでのプログラミングが解説されていて、最初の取っ掛かりとしては最適だ。しかし入門編ということでかなり内容も絞られており、体系的に学ぼうとするとかなり物足りない。また、10.5でXCODEやObjective-Cにも手が入ったが、それの情報が反映できていなかったりする。

Programming in Objective-C
Programming in Objective-C
posted with amazlet at 08.05.27
Stephen G. Kochan
Sams
売り上げランキング: 19756

結局洋書に頼ることになり、最初に入手したのが『[Programing for Objective-C][]』。
この本はCocoaよりも言語としてのObjective-Cに力点がおかれている。これは本書のよい点だ。Objective-Cの解説本だと勢いMacでのアプリケーション開発という観点で書かれていることが多く、説明がCocoaと渾然一体となっている。Objective-C自体については何となくイディオムで覚えながら「そんなものか」となし崩し的に覚えてしまうパターンの人が多いと思うが、これを最初に読んでおくと安心できる。

Objective-C自体はオブジェクト指向的な部分の抜いてしまうとC++と違ってほとんどそのままC言語なので、説明の半分はC言語の説明になっている。あとはObjective-Cのオブジェクト指向的な拡張部分と、それらと切り離せないFoundationフレームワーク、ランタイムも含めた解説が続く。従って、Xcodeなどの説明もなく、サンプルコードもコマンドラインベースのものが中心。おそらく、GCC + GNUstepなどでも動作すると思うのでMacじゃない方でも試してみることができる。

難点はC言語の部分。かなりページを割いているのでマスターした人には怠いかもしれない。わたし自身はかなりの年月純粋なC言語に触っていないので復習には丁度よかったが……

Cocoa Programming for Mac OS X
Aaron Hillegass
Addison-Wesley Professional
売り上げランキング: 64

次にCocoaやXCodeなどについての資料が欲しくなる。購入したのは『Cocoa Programing for Mac OS X』。
まだ今月発行されたばかりの本で、当時は日本のAmazonで扱っていなかったので、USのAmazonで購入(予約となったのでDiscountが結構付いたので安かった)。

この本は一転してObjective-C自体はほとんど前提になっていて、Cocoaをほぼ漏れなくカバーした内容となっている。しかも第3版で出版されたばかりなので、内容も最新のバージョンに対応して刷新されており非常に頼もしい。

しかも、テーマを絞った多くの章で構成されており各章は非常にコンパクトなので、1時間程度で内容を確認しサンプルコードを入力して動作確認し、一通り例題っぽい内容も自身で試してみることができる。サンプルコードもダラダラとコードが掲載されているのでなく、キーとなる部分に絞って掲載されており読みやすい。要点を絞った解説と適切なダイアグラムでほとんどの場合自分でコードを再現できるし、難しい場合は完全なコードをダウンロードできるWebサイトも用意されている。
もっとも、今のところおすすめの解説本だ。

詳解 Objective-C 2.0
詳解 Objective-C 2.0
posted with amazlet at 08.05.27
荻原 剛志
ソフトバンククリエイティブ
売り上げランキング: 200

さて、最後に、今月末にリリース予定の『[詳解Objective-C 2.0]』
以前の版が入手できなかったので内容を確認できていないが、おそらく日本語ではもっと充実した解説書と思われる。先の2冊に加えて買う価値があるかどうか微妙なところだが、どうしても日本語でという方は待ちましょう。

コメント

このブログの人気の投稿

Google Calaboration

GoogleがCalDAVプロトコルを完全サポートさいた Calaboration を発表した。 まだ、Google Codeの扱いだが一部では大変な騒ぎになっている。 Calaboration を使用すると、設定をするだけでGoogle Calendarのスケジュー ルをiCalにエクスポートでき、そして双方向に同期させることができるという Macユーザーにとっては大変便利な機能を提供してくれるユーティリティ。 騒ぎになっているのは、 Spanning Sync のユーザーフォーラム。 なにせこのソフトはGoogle CalendarとiCalを同期させるというもの。全くバッ ティングしている。多くのユーザーが「Spanning Syncと何が違うんだ? どっ ちがいいんだ? Spanning Synはどうなるだ?」という質問の書き込みを始め た。 Spanning Sync Blogでは、「 How Does Google CalDAV Compare to Spanning Sync? 」という記事が掲載されたが、そこで主張されている違いは以下のような点。 大きな違いはコスト。 Googleは無料だが、Spannning Syncは年間利用料が必要であること。でも、わ たしは永久ライセンスを購入してしまったので関係ない。 iPhoneサポート。 GoogleのCalDAVを使った同期では、iPhone上で予定がread onlyとなって編集 できないとのこと(わたしは設定していないので未確認)。Spanning Syncで はGoogle Calender、iCal、iPhone上すべてで予定を編集できる。 カスタマーサポート。 たしかにGoogleが何かやってくれそうな気はしない。Spanning Syncはお金払っ ているしね。 コンタクトリストの同期。 Googleが提供していない機能として、Spanning SyncはMacのアドレス帳と Gmailのコンタクトを同期してくれる。アドレス帳の画像まで含めて同期して くれるのは驚きだ。もっとも日本語の場合は姓と名が逆転してしまうが、これ は姓名を分けて持っているアドレス帳と姓名を1フィールドで持っている Googleの違いから仕方がないだろう。Googleではないが

Scrivener 日本語チュートリアル

(2022-01-11) 以前からコメントをいただいていましたが、反応できていなく申し訳ありません。 問い合わせが多いので、以下のブログに転載してチュートリアルもダウンロードできるようにしました。 転載先 先日から[試していたScrivenerだが、すっかり気に入り勢い余ってチュートリアルの日本語訳版を作ってしまった。 作者にコンタクトしたところ、「どうぞ、公開しておくれ!」と快く承諾をもらえたので公開しておく。 チュートリアル自体はわたしが慣れないBritish Englishで書かれているため、微妙なニュアンスは違っている箇所があるかもしれあない。また、チュートリアル自体に関係ない言い回しなどは、端折ったり日本語に合うようにゆがめたりしている。誤りがあれば指摘ください。 Scrivener-Tutorial-Japanese.dmg(リンクを切りました。転載先をごらんください。) ちなみに作者のKeithは豪気にもライセンス進呈を申し出てくれたが、入れ違いで購入してしまっていたわたし…… (2010-09-20) 「 design non design 」で紹介いただきました。

EagleFiler is the best organizer software on MacOS X

しばらく放置気味だった Journler をまじめに使おうかと検討していましたが、どうも昨年の7月くらいから開発が止まっている節が感じられます。たくさん文書はリソースを保管した挙げ句に、製品として終わってしまうとかなり悲惨な痛手を被りそうな予感がします。 そこで、以前のバージョンを購入した MacJournal がアップグレード可能なので検討しました。が、 Journler のようにDocumentフォルダでなくデータを~/Library/Application Support/MacJournalに置くのが問題です。これではSpotlightに引っかからないし、バックアップも面倒です。このため、 MacJournal は選択肢から落としました。 いろいろと考えて行くと、 Journler には大きく2つの役割を期待していたようです。 日誌 日々ネットで入手した情報のアーカイブ 前者については別にブログもあるので、問題を棚上げにしました。その上で、後者をサポートできるアプリケーションを探すことにしました。 以前からこの分野では Yojimbo が有名です。 少し触ってみましたが、どうもインターフェイスがしっくり来ません。ソフトのネーミング("Yojimbo"="用心棒")もどうもフィーリングが…… 次に検討したのは、 Together 。 以前はKIT("Keep It Together"の意)と称していたようです。アップデートも頻 繁で勢いを感じます。インターフェイスも一般受けしそうで優れたものだと思 いますが、どうもこちらもネーミングでルー大柴を思い浮かべてしまって…… 結局、C-Commandの EagleFiler というソフトに落ち着きました。 EagleFiler は、F1キーでとにかくブラウザに表示されているものを取り込んでしまえます。標準ではWebArchive形式ですが、スタイルシートなどが外部に依存したままとなるのでわたしはPDF形式で取り込むようにしています。標準でRTF、Plain Text, HTML,PDFなどがサポートされています。また、他の同様のソフトにない機能としてメールがeml形式でそのまま取り込めのは非常に便利な点です。