15 10 / 2011
『エキスパートObjective-Cプログラミング ― iOS/OS Xのメモリ管理とマルチスレッド』
iOS/OS Xアプリケーション開発者向けに、かなりマニアックな本を書きました。
『エキスパートObjective-Cプログラミング ― iOS/OS Xのメモリ管理とマルチスレッド』
というタイトルで、ARC、Blocks、Grand Central Dispatchを事細かに説明している本です。
達人出版会さんにて絶賛販売中です! (http://tatsu-zine.com/books/objc)
自分で絶賛とか言ってますが、どのくらい絶賛かと言いますと、
■ARCに関する記述を読んだ。めっちゃ詳しい。詳しすぎるくらいだ。Objective-CというかCocoaのメモリ管理について知りたければこれ!!
■『エキスパートObjective-Cプログラミング ― iOS/OS Xのメモリ管理とマルチスレッド』私も読んでます。 ADCのドキュメントより役に立つ読み物は貴重
このように、大変ありがたい言葉を頂いております! ありがとうございます!
また、現在の販売形態は電子書籍ですが、紙でも出版されます! (『エキスパートObjective-Cプログラミング ― iOS/OS Xのメモリ管理とマルチスレッド』β版を公開しました) いつ出版されるのか、残念ながらまだ言えません!
Amazonで予約開始されました! http://amzn.to/ngnnU1
そのかわり、詳細な目次を公開させていただきます。購入の参考にしてみてくださいませ!
■Automatic Reference Counting
■Automatic Reference Countingとは何か?
■メモリ管理 / 参照カウント
■概要
■メモリ管理の考え方
■自分が生成したオブジェクトの所有者は、自分である
■自分が生成していないオブジェクトも、所有することができる
■自分が所有しているオブジェクトが必要なくなったら、解放する
■自分が所有してないオブジェクトを解放してはならない
■alloc/retain/release/deallocの実装
■Appleによる実装
■autorelease
■autoreleaseの実装
■Appleによる実装
■ARCのルール
■概要
■メモリ管理の考え方
■所有修飾子
■__strong修飾子
■__weak修飾子
■__unsafe_unretained修飾子
■__autoreleasing修飾子
■ルール
■retain/release/retainCount/autoreleaseは使用できない
■NSAllocateObject/NSDeallocateObjectは使用できない
■メモリ管理に関するメソッド命名規則を守る
■明示的にdeallocを呼び出せない
■NSAutoreleasePoolのかわりに@autoreleasepoolブロックを使用する
■ゾーン(NSZone)は使用できない
■オブジェクト型変数は、C言語の構造体(struct/union)のメンバになれない
■「id」と「void *」は明示的にキャストする
■プロパティ
■配列
■ARCの実装
■__strong修飾子
■__weak修飾子
■__autoreleasing修飾子
■参照カウント
■Blocks
■Blocks概要
■Blocksとは何か?
■Blocksの仕様
■Block構文
■Block型変数
■自動変数値のキャプチャ
■__block指定子
■キャプチャした自動変数
■Blocksの実装
■Blockの実態
■自動変数値のキャプチャ
■__block指定子
■Blockの記憶域
■__block変数の記憶域
■オブジェクトのキャプチャ
■__block変数とオブジェクト
■Blockによる循環参照
■copy/release
■Grand Central Dispatch
■Grand Central Dispatch概要
■Grand Central Dispatchとは何か?
■マルチスレッドプログラミング
■Grand Central DispatchのAPI
■Dispatch Queue
■dispatch_queue_create
■Main Dispatch Queue / Global Dispatch Queue
■dispatch_set_target_queue
■dispatch_after
■Dispatch Group
■dispatch_barrier_async
■dispatch_sync
■dispatch_apply
■dispatch_suspend / dispatch_resume
■Dispatch Semaphore
■dispatch_once
■Dispatch I/O
■Grand Central Dispatchの実装
■Dispatch Queue
■Dispatch Source
■コラム: ゾーン
■コラム: Objective-C メソッド呼び出しの高速化
■コラム: NSAutoreleasePoolオブジェクトをautorelease
■コラム: __strong修飾子/__weak修飾子
■コラム: Objective-Cのオブジェクトと、Core Foundationオブジェクト
■コラム: オブジェクトの即時解放
■コラム: allowsWeakReference/retainWeakReferenceメソッド
■コラム: C++のthis、Objective-Cのself
Permalink 10 notes