Download - Xcode4 project template (slide)
![Page 1: Xcode4 project template (slide)](https://reader034.vdocuments.net/reader034/viewer/2022042715/55835250d8b42a68138b4910/html5/thumbnails/1.jpg)
Xcode�4のテンプレート
Cocoa勉強会�#54�/�2012-09-01�/�⽊村渡
Powered�by�Rabbit�1.0.8�and�COZMIXNG
![Page 2: Xcode4 project template (slide)](https://reader034.vdocuments.net/reader034/viewer/2022042715/55835250d8b42a68138b4910/html5/thumbnails/2.jpg)
おことわり
"AS�IS"でお送りします。
Xcode�4.2-4.4でなんとなく確認しています。
![Page 3: Xcode4 project template (slide)](https://reader034.vdocuments.net/reader034/viewer/2022042715/55835250d8b42a68138b4910/html5/thumbnails/3.jpg)
テンプレートとは
![Page 4: Xcode4 project template (slide)](https://reader034.vdocuments.net/reader034/viewer/2022042715/55835250d8b42a68138b4910/html5/thumbnails/4.jpg)
プロジェクトテンプレート
新規アプリ作るとき使いますよね?
![Page 5: Xcode4 project template (slide)](https://reader034.vdocuments.net/reader034/viewer/2022042715/55835250d8b42a68138b4910/html5/thumbnails/5.jpg)
プロジェクトテンプレート
![Page 6: Xcode4 project template (slide)](https://reader034.vdocuments.net/reader034/viewer/2022042715/55835250d8b42a68138b4910/html5/thumbnails/6.jpg)
独自フレームワークの配布に必須
テンプレートがないと、、、
RubyCocoa.frameworkにリンク1.�
main.mでRubyCocoaの初期化処理
2.�
rb̲main.rbを追加3.�
クラスの実装を.h,�.mから.rbに4.�
が毎回必要(RubyCocoaの場合)
![Page 7: Xcode4 project template (slide)](https://reader034.vdocuments.net/reader034/viewer/2022042715/55835250d8b42a68138b4910/html5/thumbnails/7.jpg)
背景
昨年9⽉ごろ、RubyCocoaのXcode�4のプロジェクトテンプレートを作成
最近になって、Xcode�4.4対応をしようと考えた
↓
思い出せない…
![Page 8: Xcode4 project template (slide)](https://reader034.vdocuments.net/reader034/viewer/2022042715/55835250d8b42a68138b4910/html5/thumbnails/8.jpg)
調べなおすついでに発表しよう!
![Page 9: Xcode4 project template (slide)](https://reader034.vdocuments.net/reader034/viewer/2022042715/55835250d8b42a68138b4910/html5/thumbnails/9.jpg)
話すこと
テンプレートとは�(済み)
Xcode�4のテンプレートの特徴
テンプレートの構成継承・インジェクション
plistからのファイル⽣成
![Page 10: Xcode4 project template (slide)](https://reader034.vdocuments.net/reader034/viewer/2022042715/55835250d8b42a68138b4910/html5/thumbnails/10.jpg)
Xcode�3との⽐較
![Page 11: Xcode4 project template (slide)](https://reader034.vdocuments.net/reader034/viewer/2022042715/55835250d8b42a68138b4910/html5/thumbnails/11.jpg)
Xcode�4のテンプレートの特徴
継承っぽい定義
plistでたくさん定義
Xcode�3と⽐べて進化したかも?
そのぶん複雑にもなっています。
![Page 12: Xcode4 project template (slide)](https://reader034.vdocuments.net/reader034/viewer/2022042715/55835250d8b42a68138b4910/html5/thumbnails/12.jpg)
テンプレートの構成
![Page 13: Xcode4 project template (slide)](https://reader034.vdocuments.net/reader034/viewer/2022042715/55835250d8b42a68138b4910/html5/thumbnails/13.jpg)
テンプレート
大きく分けて2種類
プロジェクトテンプレート
ファイルテンプレート
ファイルテンプレートは今回は説明しません
![Page 14: Xcode4 project template (slide)](https://reader034.vdocuments.net/reader034/viewer/2022042715/55835250d8b42a68138b4910/html5/thumbnails/14.jpg)
ファイル構成�-�Mac
/Applications/Xcode.app/Contents/ Developer/Library/Xcode/Templates + File Templates + Project Templates + Base + Mac
(Xcode�4.4の場合)
![Page 15: Xcode4 project template (slide)](https://reader034.vdocuments.net/reader034/viewer/2022042715/55835250d8b42a68138b4910/html5/thumbnails/15.jpg)
ファイル構成�-�iOS
/Applications/Xcode.app/Contents/ Developer/Platforms/ iPhoneOS.platform/Developer/ Library/Xcode/Templates/ + File Templates + Project Templates
(Xcode�4.4の場合)
![Page 16: Xcode4 project template (slide)](https://reader034.vdocuments.net/reader034/viewer/2022042715/55835250d8b42a68138b4910/html5/thumbnails/16.jpg)
ファイル構成�-�Mac/App
+ Cocoa Application Base.xctemplate/ + Credits.rtf + TemplateInfo.plist+ Cocoa Application.xctemplate/ + MainMenuApp.xib + TemplateIcon.icns + TemplateInfo.plist
.hや.mは?
![Page 17: Xcode4 project template (slide)](https://reader034.vdocuments.net/reader034/viewer/2022042715/55835250d8b42a68138b4910/html5/thumbnails/17.jpg)
TemplateInfo.plist
<dict> <key>Kind</key> <string>Xcode.Xcode3.ProjectTemplateUnitKind</string> <key>Identifier</key> <string>com.apple.dt.unit.objectiveCApplication</strin <key>Ancestors</key> <array> <string>com.apple.dt.unit.bundleBase</string> </array> <key>Targets</key> <array> <dict>
![Page 18: Xcode4 project template (slide)](https://reader034.vdocuments.net/reader034/viewer/2022042715/55835250d8b42a68138b4910/html5/thumbnails/18.jpg)
継承・インジェクション
Ancestors
InjectionTargets
Concrete
![Page 19: Xcode4 project template (slide)](https://reader034.vdocuments.net/reader034/viewer/2022042715/55835250d8b42a68138b4910/html5/thumbnails/19.jpg)
Cocoa�Applicationの構成
Cocoa Application - Concrete: true - Ancestors: + Cocoa Application Base - Ancestors: < Objective-C Application < Bundle Base < Base < Mac Base < Prefixable
![Page 20: Xcode4 project template (slide)](https://reader034.vdocuments.net/reader034/viewer/2022042715/55835250d8b42a68138b4910/html5/thumbnails/20.jpg)
Cocoa�Applicationの構成
Core Data Spotlight Application - Concrete: false (default) - InjectionTargets: Cocoa Application - Ancestors: < Core Data Application < Cocoa Document-based Application
![Page 21: Xcode4 project template (slide)](https://reader034.vdocuments.net/reader034/viewer/2022042715/55835250d8b42a68138b4910/html5/thumbnails/21.jpg)
Cocoa�Applicationの構成
![Page 22: Xcode4 project template (slide)](https://reader034.vdocuments.net/reader034/viewer/2022042715/55835250d8b42a68138b4910/html5/thumbnails/22.jpg)
試してみよう
![Page 23: Xcode4 project template (slide)](https://reader034.vdocuments.net/reader034/viewer/2022042715/55835250d8b42a68138b4910/html5/thumbnails/23.jpg)
試してみよう
![Page 24: Xcode4 project template (slide)](https://reader034.vdocuments.net/reader034/viewer/2022042715/55835250d8b42a68138b4910/html5/thumbnails/24.jpg)
plistからのファイル⽣成
Definitions
Nodes
配布資料読んどいてください
![Page 25: Xcode4 project template (slide)](https://reader034.vdocuments.net/reader034/viewer/2022042715/55835250d8b42a68138b4910/html5/thumbnails/25.jpg)
まとめ
継承、plistからのファイル⽣成機能が使えるように
差分でのカスタマイズが簡単に(?)
![Page 26: Xcode4 project template (slide)](https://reader034.vdocuments.net/reader034/viewer/2022042715/55835250d8b42a68138b4910/html5/thumbnails/26.jpg)
感想
ドキュメント……
アプリ内か~/Library/Xcodeのみでなく/Library/Xcodeも使えてほしい
まだまだ調査中。おもしろいことあったら教えてください!
![Page 27: Xcode4 project template (slide)](https://reader034.vdocuments.net/reader034/viewer/2022042715/55835250d8b42a68138b4910/html5/thumbnails/27.jpg)
SortOrderの謎
値が大きいほど優先される?
![Page 28: Xcode4 project template (slide)](https://reader034.vdocuments.net/reader034/viewer/2022042715/55835250d8b42a68138b4910/html5/thumbnails/28.jpg)
終
Powered�by�Rabbit�1.0.8�and�COZMIXNG