Dynamic Objective-C

Dynamic Objective-CCocoa&iPhoneハックを掌中に! 3年半にわたるマイコミジャーナルの人気連載「ダイナミックObjective-C」を加筆修正して再構成。新規書き下ろし「Hack the iPhone」を収録。Mac&iPhone開発に欠かせないObjective-CとCocoaの動的(ダイナミック)な特性を、ひとつずつ、徹底的に、明らかに。

※本書は、マイコミジャーナルにて3年半にわたって連載された「ダイナミックObjective-C」を、加筆修正して再構成し、書籍化したものです。

ISBN:978-4-86100-641-8
定価:3,360円(本体3,200円+税)
仕様:448ページ/B5変型
発売日:2009年3月26日
著者:木下 誠
HMDT株式会社代表取締役。
1993年、学生時代にMacintoshに出会う。
2000年にWebサイト「HMDT」(http://hmdt.jp/)を開設。Mac上でのプログラミングの話題、Cocoaの使い方の紹介などを行う。
2008年からはiPhoneアプリケーションの開発を行う。積極的に他社と協業し、「駅探エクスプレス」「Catch The Egg」「デジタル大辞泉2009i」「Orb Clock」などを開発。
著書に、「iPhone SDKプログラミング大全」「たのしいCocoaプログラミング[Leopard対応版]」「Happy Macintosh Developing Time Third Edition」など。
その他、Webブラウザ「シイラ」の開発(http://shiira.jp/)、マイコミジャーナルでの「実践! iPhoneアプリ開発」の連載(http://journal.mycom.co.jp/column/iphone/)、アップル社での定期的な「Cocoaセミナー」の開催など、幅広く活躍中。

amazon.co.jpで購入する

目次:
Part I Objective-C

001 CocoaとObjective-Cと動的なオブジェクト指向 —Cocoaハックの第1歩
002 Objective-Cの動的型付け
003 Cocoa実現の肝 —クラスとそのメソッドの調査方法をチェック
004 ターゲット/アクションパラダイム(1) —動的特性を利用したデザインパターン
005 ターゲット/アクションパラダイム(2) —その利点を徹底検証
006 Cocoa-Javaの挑戦とは? —似て非なるセレクタとリフレクション
007 Objective-Cと様々な言語のブリッジ —PyObjC、RubyCocoa……
008 カテゴリ —動的なメソッドの追加によるクラスの拡張
009 プロトコルが必要とされた背景とは? —なぜあえて静的な型を?
010 非形式プロトコル —もう1つのプロトコル
011 2つのプロトコルの使い分け
012 ポージングで乗っ取り
013 Objective-Cのエンジン部 —ランタイムに踏み込む
014 クラスとは何か(1) —Mac OS X/Objective-Cにおけるクラスの実装を読む
015 クラスとは何か(2) —クラス情報に直接アクセスする
016 クラスとは何か(3) —メタクラスと親クラス
017 クラスとは何か(4) —Objective-Cにおけるオブジェクトとは何か?
018 メソッドとは何か(1) —メソッド、セレクタ、メソッドの実装
019 メソッドとは何か(2) —メソッドを取得する
020 メソッドとは何か(3) —メソッドの型を読み解く
021 メソッドとは何か(4) —セレクタの実体
022 メソッドとは何か(5) —メソッドの実装
023 メッセージ送信(1) —objc_msgSendの実装
024 メッセージ送信(2) —メソッドリストからメソッドを検索する
025 メッセージ送信(3) —メソッドのキャッシング
026 メッセージ送信(4) —メッセージ送信の流れと関数呼び出しとの違い
027 ランタイムAPIでさらに動的に(1) —動的なクラスの作成
028 ランタイムAPIでさらに動的に(2) —メソッドの追加
029 ランタイムAPIでさらに動的に(3) —メソッドの実装の置換
030 ランタイムAPIでさらに動的に(4) —インスタンス変数の定義を調査
031 ランタイムAPIでさらに動的に(5) —インスタンス変数に動的にアクセス
032 抽象クラスとクラスクラスタ
033 Core Foundation(1) —Core Foundation誕生前夜
034 Core Foundation(2) —C言語によるオブジェクト
035 Core Foundation(3) —クラスの定義
036 Core Foudation(4) —多態性の実現
037 Core Foudation(5) —インスタンスの実装
038 Toll-free bridge(1) —変換コスト0のブリッジ
039 Toll-free bridge(2) —Core Foundationのisaフィールド
040 Toll-free bridge(3) —Objective-Cメソッドの処理
041 インプットマネージャから侵入
042 SIMBLでハックを管理
043 AspectCocoa(1) —Objective-CとCocoaによるアスペクト指向
044 AspectCocoa(2) —IMPによるアスペクト指向の実現
045 AspectCocoa(3) —フォワーディングとポージングの利用
046 AspectCocoa(4) —AspectCocoaの実例
047 AspectCocoa(5) —インプットマネージャとの連携
048 F-Script —CocoaとObjective-Cのスクリプティング環境
049 ガベージコレクション(1) —GCのためのAPI
050 ガベージコレクション(2) —実体であるlibauto
051 ガベージコレクション(3) —保守的でありながらオブジェクト的
052 ガベージコレクション(4) —マーク・アンド・スイープ
053 ガベージコレクション(5) —コピーGCとコンパクション
054 プロパティ(1) —インスタンス変数のアクセス制御
055 プロパティ(2) —プロパティの宣言
056 プロパティ(3) —ドット演算子
057 プロパティ(4) —プロパティの属性
058 Fast Enumeration(1) —速い列挙子
059 Fast Enumeration(2) —NSFastEnumerationプロトコル
060 Fast Enumeration(3) —Fast Enumerationのソースコード
061 Fast Enumeration(4) —Fast Enumerationに対応するクラスの実装


Part II デザインパターン

062 デザインパターンで読み解くCocoa
063 Singleton(1)
064 Singleton(2)
065 Singleton(3)
066 Abstract Factory(1)
067 Abstract Factory(2)
068 Builder(1)
069 Builder(2)
070 Prototype(1)
071 Prototype(2)
072 Prototype(3)
073 Prototype(4)
074 Factory Method(1)
075 Factory Method(2)
076 Factory Method(3)
077 Factory Method(4)
078 Adapter(1)
079 Adapater(2)
080 Adapater(3)
081 Adapter(4)
082 Bridge(1)
083 Bridge(2)
084 Bridge(3)
085 Composite(1)
086 Composite(2)
087 Decorator(1)
088 Decorator(2)
089 Facade
090 Flyweight(1)
091 Flyweight(2)
092 Proxy(1)
093 Proxy(2)
094 Proxy(3)
095 Iterator(1)
096 Iterator(2)
097 Command(1)
098 Command(2)
099 Command(3)
100 Command(4)
101 Command(5)
102 Chain of Responsibility(1)
103 Chain of Responsibility(2)
104 Chain of Responsibility(3)
105 Chain of Responsibility(4)
106 Chain of Responsibility(5)
107 Memento(1)
108 Memento(2)
109 Observer(1)
110 Observer(2)
111 Observer(3)
112 Mediator(1)
113 Mediator(2)
114 Mediator(3)
115 Interpreter(1)
116 Interpreter(2)
117 State
118 Strategy
119 Template Method
120 Visitor(1)
121 Visitor(2)


Appendix Hack the iPhone

Objective-C実行環境としてのiPhone
iPhoneハックの是非
iPhoneでランタイムAPIを使ってみる(1)
iPhoneでランタイムAPIを使ってみる(2)

ページサンプル:
Dynamic Objective-Cのページサンプル

Dynamic Objective-Cのページサンプル

Dynamic Objective-Cのページサンプル


  • 新刊・近刊
  • 3DCG
  • 2DCG
  • DTP
  • DTV、映像
  • DTM
  • データベース(サーバ)
  • 建築・CAD
  • Mac
  • Web
  • デザイン
  • 素材集
  • GAS
  • キャラクター・アニメ
  • トムソン
  • 実用・一般