ページ

2010年1月31日日曜日

今週のCocoa情報(1/31) - 今週気になった Cocoaプログラミング情報の紹介

このエントリーをブックマークに追加 このエントリーを含むはてなブックマーク

Formats for communicating between backend and Objective-C/Cocoa - Stack Overflow
サーバから受け取るデータの形式について。plist と JSON など。
iPhone向けに TouchJSON というJSONを扱うライブラリが公開されている。
TouchJSON


MOONGIFT: » Adobe AIR製のSQLite管理「The SQLite Sorcerer」:オープンソースを毎日紹介
CoreDataで SQLite を使うとこういったツールが役立つ。今度試してみる。


iPhone / Objective C: How to log a methods execution time exactly in milliseconds? - Stack Overflow
メソッドの実行時間の取り方。
-[NSDate timeIntervalSinceDate:] の他、mach_absolute_time() を使う方法などが紹介されている。
以下、引用:

NSDate *methodStart = [NSDate date];
/* ... Do whatever you need to do ... */
NSDate *methodFinish = [NSDate date];
NSTimeInterval executionTime = [methodFinish timeIntervalSinceDate:methodStart];
#include 
#include 
// Do some stuff to setup for timing
const uint64_t startTime = mach_absolute_time();
// Do some stuff that you want to time
const uint64_t endTime = mach_absolute_time();
// Time elapsed in Mach time units.
const uint64_t elapsedMTU = endTime - startTime;
// Get information for converting from MTU to nanoseconds
mach_timebase_info_data_t info;
if (mach_timebase_info(&info))
   handleErrorConditionIfYoureBeingCareful();
// Get elapsed time in nanoseconds:
const double elapsedNS = (double)elapsedMTU * (double)info.numer / (double)info.denom;

CoreData (for iphone) storing images - Stack Overflow
CoreData に画像を保存するアイディアについて。やめた方がいいとの意見。
NSManagedObjectContextDidSaveNotification などを使って画像操作を行う方法が紹介されていた。
以下、引用:
 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(contextDidSave:) name:NSManagedObjectContextDidSaveNotification object:managedObjectContext];
- (void) contextDidSave:(NSNotification *)notification{
    NSDictionary *userInfo = [notification userInfo];
    for (NSManagedObject *currObject in [userInfo objectForKey:NSDeletedObjectsKey])
    {
         // Code for deleting file associated with the NSManagedObject, you can still
         // access the managed object's properties.
    }
}