概要
<アプリ名>-Prefix.pchに色々と定義しておくとアプリを作る上でデバックがしやすくなったりコードが書きやすくなったりします。
今回は自分が便利だなーと思う内容を書きます。
実際のPrefix.pchの中身
# ifndef hogehoge_pch
# define hogehoge_pch
# ifdef __OBJC__
// importしておきたいものは入れる
# import <Foundation/Foundation.h>
# import <UIKit/UIkit.h>
# import <ObjectiveSugar>
# endif
# ifdef DEBUG
#define LogFunction NSLog(@"%s", __func__); // 実行された関数が表示されるので便利!
# else // リリースでは出さないように
#define LogFunction
# endif
// 色指定系もよく使うので書いてあります。
# define RGB(r,g,b) [UIColor colorWithRed:(r)/255.0 green:(g)/255.0 blue:(b)/255.0 alpha:1.0]
# define RGBA(r,g,b,a) [UIColor colorWithRed:(r)/255.0 green:(g)/255.0 blue:(b)/255.0 alpha:(a)]
# endif
importを毎回するものは書く
新しくプロジェクトを始める時や新規クラスを作る時にCGFloatのような当たり前に使うものを
定義しようとするだけで怒られるのはあれなので、
大体使うようなものはpchファイルにあらかじめ書いた方が楽です。
UIKitなんてまさにそうですねー。個人的にはObjectiveSugarが好きなので毎回入れてます。
あとよくimportするのは以下のようなクラスです。
- アプリ全体で使う定数をまとめたクラス
- NSUserDefalutをラップしたクラス
- ログ系をまとめたクラス
- UIViewのプロパティを簡単に参照できるようなクラス
などなど。いちいちimport忘れで起こられて悩む時間が少なくなるので便利です。
ログはリリース時に出さないように
NSLogをそのまま使ってリリースするとログがconsoleから見れてしまうので
ifdefを使いリリース時には吐き出さないようにしましょう。
ログのだしっぱは怖いので必ず書くようにしています、、
最後に
Xcode6からは自動でpchファイルが生成されないので注意です。
以下を参考にすれば出来るので1からプロジェクトを始めるぞーという方は是非ご参考にしていただければと思います!
http://qiita.com/Yuta/items/acddd70f9ac3b3912d2a