検索

カレンダー

2012年5月
« 4月    
 123456
78910111213
14151617181920
21222324252627
28293031  

広告

ブログランキング・にほんブログ村へ
にほんブログ村

東電電力供給情報

カテゴリー

最近のコメント

リンク

iPhoneアプリを作ってみるぞ その1

投稿者:yasu 更新日時:2010年4月2日 0時06分52秒
カテゴリiPhone/iPod touch/iPad, Objective-C

やるぞやるぞと言い始めてもう1年以上が経過してしまったのだけれど、とにかく人のまね・簡単なものからiPhoneアプリを作ってみたいと思います。

アプリのネタもないので、まずは足し算アプリを作ってみたいと思います。

カテゴリ:アプリ開発入門 - もとまかのiPhone・iPod touch戯れ日記

何はともあれ、まずiPhoneアプリのプロジェクトを作ってみます。
Finderから/Developer/Xcode.appを起動します。

Xcodeが起動したら[新規Xcodeプロジェクトを作成]を選択します。

続いて新規プロジェクトのテンプレートを選択します。
ここでは[View-bsed Application]を選択して[選択]ボタンをクリックします。

プロジェクトの名前を入力します。
ここでは Calc として[保存]ボタンをクリックします。

これで Calc というプロジェクトが作成されます。

えーっと、第一回目はこれで終了です。
はえーよって怒らないでください。

次回はInterface Builderを使って、画面にテキストエリアやボタンを設置してみたいと思います。

Ubuntu9.04にObjective-Cコンパイラをインストールしてみた の続き

投稿者:yasu 更新日時:2009年9月15日 10時27分17秒
カテゴリObjective-C, Ubuntu

前回UbuntuにObjective-Cのコンパイラをインストール、さらには簡単なプログラムをコンパイルして実行までやりました。

が、作ったプログラムが全然Objective-Cっぽくないので、今回はObjective-Cっぽい簡単なプログラムを試してみたいと思います。

まずhello.hファイルを作って以下のように記載します。

C:
  1. #import <objc/Object.h>
  2.  
  3. @interface Personal : Object
  4. {
  5.     int height, weight, age;
  6. }
  7. - (void)setInfo: (int)height: (int)weight: (int)age;
  8. - (void)printInfo;
  9. @end

続いてhello.mファイルを以下のように記載します。

C:
  1. #import <objc/Object.h>
  2. #import "hello.h"
  3.  
  4. @implementation Personal
  5. - (void)setInfo: (int)height: (int)weight: (int)age {
  6.     self->height = height;
  7.     self->weight = weight;
  8.     self->age = age;
  9. }
  10.  
  11. - (void)printInfo {
  12.     printf("あなたは身長%dcm、体重%dkg、年齢%d歳です\n", self->height, self->weight, self->age);
  13. }
  14. @end
  15.  
  16. int main() {
  17.  
  18.     id personal = [Personal alloc];
  19.     [personal setInfo: 175: 75: 33];
  20.  
  21.     [personal printInfo];
  22.  
  23.     return 0;
  24. }

続いてコンパイルをします。

ubuntu@ubuntu-desktop:~/c$ gcc hello.m -lobjc
hello.m: In function ‘-[Personal setInfo:::]’:
hello.m:6: 警告: local declaration of ‘height’ hides instance variable
hello.m:7: 警告: local declaration of ‘weight’ hides instance variable
hello.m:8: 警告: local declaration of ‘age’ hides instance variable
クラス変数とメソッドの引数の名前が重複しているので警告が表示されますが、プログラム上はselfをつけて明示的に使いわけているのでこの警告は無視しても大丈夫です
ubuntu@ubuntu-desktop:~/c$ ./a.out
あなたは身長175cm、体重75kg、年齢33歳です

という感じでObjectiveな感じのプログラムが完成しました。
Objective-Cのソースコードを最初見たときはとっつきにくそうな言語だなぁと思ったのですが、実際にコードを記述してみると意外といけそうな気がしてきました(←単純)

Ubuntu9.04にObjective-Cコンパイラをインストールしてみた

投稿者:yasu 更新日時:2009年9月14日 23時45分28秒
カテゴリObjective-C, Ubuntu

UbuntuでObjective-Cのコンパイルができるようにしたいと思います。
メニューバーにある[アプリケーション]-[アクセサリ]-[端末]より端末を起動して、apt-getでgobjcをインストールします。

ubuntu@ubuntu-desktop:~$ sudo apt-get install gobjc
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
以下のパッケージが自動でインストールされましたが、もう必要とされていません:
linux-headers-2.6.28-11 linux-headers-2.6.28-11-generic
これらを削除するには 'apt-get autoremove' を利用してください。
以下の特別パッケージがインストールされます:
gobjc-4.3 libobjc2
提案パッケージ:
gobjc-multilib gobjc-4.3-multilib gcc-4.3-doc libobjc2-dbg
以下のパッケージが新たにインストールされます:
gobjc gobjc-4.3 libobjc2
アップグレード: 0 個、新規インストール: 3 個、削除: 0 個、保留: 16 個。
3390kB のアーカイブを取得する必要があります。
この操作後に追加で 8581kB のディスク容量が消費されます。
続行しますか [Y/n]? y
取得:1 http://jp.archive.ubuntu.com jaunty/main libobjc2 4.3.3-5ubuntu4 [150kB]
取得:2 http://jp.archive.ubuntu.com jaunty/main gobjc-4.3 4.3.3-5ubuntu4 [3240kB]
取得:3 http://jp.archive.ubuntu.com jaunty/main gobjc 4:4.3.3-1ubuntu1 [896B]
3390kB を 1s で取得しました (2177kB/s)
未選択パッケージ libobjc2 を選択しています。
(データベースを読み込んでいます ... 現在 121790 個のファイルとディレクトリがインストールされています。)
(.../libobjc2_4.3.3-5ubuntu4_i386.deb から) libobjc2 を展開しています...
未選択パッケージ gobjc-4.3 を選択しています。
(.../gobjc-4.3_4.3.3-5ubuntu4_i386.deb から) gobjc-4.3 を展開しています...
未選択パッケージ gobjc を選択しています。
(.../gobjc_4%3a4.3.3-1ubuntu1_i386.deb から) gobjc を展開しています...
libobjc2 (4.3.3-5ubuntu4) を設定しています ...

gobjc-4.3 (4.3.3-5ubuntu4) を設定しています ...
gobjc (4:4.3.3-1ubuntu1) を設定しています ...
libc6 のトリガを処理しています ...
ldconfig deferred processing now taking place

これだけでインストールは終わりです。

早速Hello Worldアプリを作ってみます。
hello.mというテキストファイルを作り、以下のように入力して保存します。

C:
  1. #import <objc/Object.h>
  2. int main() {
  3.     printf("Hello World\n&");
  4.     return 0;
  5. }

次にコンパイルをします。

ubuntu@ubuntu-desktop:~/c$ gcc hello.m -lobjc
ubuntu@ubuntu-desktop:~/c$ ./a.out
Hello World

無事「Hello World」が表示されました。
でもプログラムがObjective-CっていうよりC言語っぽいです。
次回はHello WorldのObjective-C版も作ってみますかね。