シンプルなサンプルコード作成を目的とした、Cocoa学習のためのリファレンスを目指しています。 Xcodeのデベロッパドキュメントをベースにしています。

開発環境

OSMac OS X 10.6.2 (Snow Leopard)
Xcodeバージョンバージョン 3.2.1
gccversion 4.2.1 (Apple Inc. build 5646) (dot 1)

Hello World!

  1. /**
  2.   * hello_world.m
  3.   * $gcc -framework Foundation hello_world.m -o hello_world
  4.   */
  5. #import <Foundation/NSObject.h>
  6. #import <Foundation/NSString.h>
  7.  
  8. @interface HelloWorld : NSObject
  9. {
  10. NSString* message;
  11. }
  12. - (NSString *) message;
  13. - (void) say:(NSString *)msg;
  14. @end
  15.  
  16. @implementation HelloWorld
  17. - (NSString *) message {
  18. return message;
  19. }
  20. - (void) say:(NSString *)msg {
  21. NSLog(@"%@", msg);
  22. }
  23. @end
  24.  
  25. int main(){
  26. HelloWorld *helloWorld = [[HelloWorld alloc] init];
  27. [helloWorld say:@"Hello World!"];
  28. [helloWorld release];
  29.  
  30. return 0;
  31. }
  32.  

コマンドラインツールのスケルトン

  1. #import <Foundation/Foundation.h>
  2. int main (int argc, const char * argv[]) {
  3.    NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
  4.  
  5.    // insert code here...
  6.    NSLog(@"Hello, World!");
  7.    [pool drain];
  8.    return 0;
  9. }

GCCでのビルド

  1.  $gcc -o 出力ファイル -framework フレームワーク(Foundationなど) ソースファイル(source.mなど)

デバッグライト

  1. NSLog( @"%@", someObject );

class-dumpコマンド

  1.  class-dump 3.1.2
  2.  Usage: class-dump [options] <mach-o-file>
  3.  
  4.  オプションは以下の通り:
  5.         -a             インスタンス変数のオフセット値を表示
  6.         -A             実装メソッドのアドレスを表示
  7.         --arch <arch>  ユニバーサルバイナリーからアーキテクチャ(ppc, ppc7400, ppc64, i386, x86_64, etc.)を指定して選択
  8.         -C <regex>     正規表現にマッチしたクラスだけを表示
  9.         -f <str>       メソッド名を検索
  10.         -H             カレントディレクトリまたは、-oオプションで指定したディレクトリにヘッダーファイルを作成する
  11.         -I             クラス、カテゴリ、プロトコルを継承クラス名で並べ替え(上書きは-sコマンド)
  12.         -o <dir>       -Hオプションで使うための出力ディレクトリを指定
  13.         -r             recursively expand frameworks and fixed VM shared libraries
  14.         -s             クラスとカテゴリを名前で並べ替え
  15.         -S             メソッドを名前で並べ替え
  16.         -t             テストのためにヘッダー出力をしない
  17.         --list-arches  アーキテクチャ一覧を出力する

Darwinソースコード

Xcode Workflow Tutorial

Xcodeを使ったHello Worldアプリケーションの作成チュートリアル。 Xcodeのアプリ作成フローを学べる。

ブックマーク


トップ   編集 凍結解除 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2010-01-31 (日) 01:26:18 (10d)