カクカクしないアプリを作りたいiOSプログラマにオススメ!エキスパートObjective-Cプログラミング

@splhack 氏のエキスパート Objective-C プログラミング本の紙版の書籍が、ついに予約開始になりました!

わたしは、達人出版会の、PDF版ーエキスパートObjective-Cプログラミング ― iOS/OS Xのメモリ管理とマルチスレッド – 達人出版会 で読んでいますが、紙で持っておかないと気が済まない方々、また、付録もA/Bあるらしく、完全版が欲しい方は両方手にするのも良いかもしれませんね!
“カクカクしないアプリを作りたいiOSプログラマにオススメ!エキスパートObjective-Cプログラミング” の続きを読む

Xcodeが起動中にクラッシュする問題をこうやって解決しました…

Jetbrains AppCode が便利で、使っているのですが、今日、Xcode と AppCode で同時にプロジェクトを開いて、いろいろやっていると、Xcode が落ちて、何回再起動してもクラッシュするようになりました。なんとか解決したので、解決方法を共有します。
“Xcodeが起動中にクラッシュする問題をこうやって解決しました…” の続きを読む

UIImagePicker 風に複数画像選択も出来る ELCImagePicker が便利そう

UIImagePicker は、便利ですが、一度に一つづつしか写真を選択出来ないので、分かりにくいときもあります。これを解決するELCImageView Picker が便利なので使ってみました。MITライセンスのようです。

写真の複数選択
写真の複数選択

こんな感じで、複数写真取得出来るのは嬉しいですね。フォトストリームもちゃんと取得出来ています。
“UIImagePicker 風に複数画像選択も出来る ELCImagePicker が便利そう” の続きを読む

Objective-C で ARC を有効にしたプロジェクトで、一部ファイルのみ ARC を無効にする方法(その逆も)

ARC便利ですね。Release, Retain を書かずに、オーナーシップ(所有権)だけを考慮して出来るのは素晴らしいです。一つ問題は、外部ライブラリを取り込む場合。自分のプログラムだったら分かる事も、人のプログラムを変えるのは面倒ですし、間違えたくないですよね。ARCは、各ファイルをコンパイルする際に有効にするものなので、部分的に無効に出来ます。その方法を簡単ですが、説明します。
“Objective-C で ARC を有効にしたプロジェクトで、一部ファイルのみ ARC を無効にする方法(その逆も)” の続きを読む

Xcode 4.2 で、デバッグ中に急遽 NSDictionary のデータを確認する方法

Xcode 4.2 からなのか、Xcode 4 からなのか、Xcode 3のときからなのか、分かりませんが、触ってたら、コンソールに、NSDictionary の内容を確認したいことがあります。
[cc lang=”ObjC”]
[dic description];
[/cc]
で確認も出来るのですが、実行中に急遽確認したいときは面倒ですよね。
“Xcode 4.2 で、デバッグ中に急遽 NSDictionary のデータを確認する方法” の続きを読む

iOS 5 公開記念! Objective-Cのメモリ管理の革命、 ARC 超入門(サンプルはgitHubに公開)

iOS 5が公開されて、Dev CenterもWe’ll be back soon になっています。

iOS5 NDA will be gone soon!
iOS5 NDA will be gone soon!

記念に、iOS 5 のプログラム面での変化、ARCを使った簡単なサンプルをGitHubに登録しましたのでご覧下さい。
“iOS 5 公開記念! Objective-Cのメモリ管理の革命、 ARC 超入門(サンプルはgitHubに公開)” の続きを読む

OSX Lion における InDesign CS4 Plugin のビルドに関して

はじめに

本日、2011年7月20日に、OSX 10.7 Lion がリリースされました。200以上の新機能が追加され、iOS、特にiPadの使い勝手からの多くのフィードバックが含まれています。

Mac OS X Lion 10.7

iPadがMacより大きな事業に【湯川】 : TechWave こちらの記事にあるように、iPadの方が、もはやMacよりも大きな事業になっているので、そちらの使い勝手に、Macを会わせるのも当然の事かもしれません。
Appleは、古い機能の切り捨てをばっさりと行う事でも知られています。今回のLionでは、Rosettaという、旧CPUの、PowerPCのコードを変換して実行するアプリが削除されました。それによる影響の一つが、InDesignプラグインのビルドに影響していましたので、備忘として記録しています。
“OSX Lion における InDesign CS4 Plugin のビルドに関して” の続きを読む

iOS 開発で、EXC_BAD_ACCESS とさよならするための6つのルール

2012/3/22 いくつか修正、加筆しました。
追記もご覧下さい:iOS 開発で、EXC_BAD_ACCESS とさよならするための6つのルール [追記] カプセル化について « Zero4Racer PRO Developer’s Blog
対象がiOS4以上の場合は、ARCを使用するのもオススメです。iOS 5 公開記念! Objective-Cのメモリ管理の革命、 ARC 超入門(サンプルはgitHubに公開) « Zero4Racer PRO Developer’s Blog をご覧下さい。

@Awaresoft さんのこの記事が、ほとんどすべての疑問に答えています。とてもよい記事なので合わせてご覧下さい。プロパティに対応するインスタンス変数の命名規則について – Awaresoft

iOS プログラミングでのメモリ管理の基本

iPhone開発で主に使用される言語は、Objective-C 2.0 です。とくにiPhoneで使用されるObjective-Cには、ガベージコレクションが搭載されていないため、Javaや、C#などの言語のように自動でメモリの確保、解放を行ってくれないため、プログラマがメモリの確保、解放を管理してあげる必要がある必要があります。
その反面、使用するメモリをコントロール出来るのでiPhone上の限られた(少ない)メモリを効率的に使用することが出来ます。しかし、これは、メモリ管理に慣れていないプログラマにとっては至難の作業です。
EXC_BAD_ACCESSというエラーは、あるメモリにアクセスしようとしたが、そのメモリ領域にあったデータは既に解放されていて、何も見つかりませんでしたという、致命的なエラーです。このエラーは、シンプルなプログラムだと簡単に原因を見つけられるのですが、複雑に入り組んだプログラムになると、探すのが非常に難しく、小一時間、私の場合最長半日、原因解明に費やしたことがあります。EXC_BAD_ACCESSが解決出来ずに、もう、iPhoneアプリ作成やめてやれ!と思った事も多少なりとも有りました。この記事で、EXC_BAD_ACCESSエラーを出しにくくする、また対処しやすくするために私が行っている対策方法を記します。

“iOS 開発で、EXC_BAD_ACCESS とさよならするための6つのルール” の続きを読む