5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

Objective-C

1 :デフォルトの名無しさん:2001/05/23(水) 08:31
マイナーみたいだけど、結構いいと思います。

2 :デフォルトの名無しさん:2001/05/23(水) 08:47
スレの主旨を明確にしてくれ

3 :デフォルトの名無しさん:2001/05/23(水) 09:22
カテゴリって意味がよくわかんないんですけど、どういったもの
なんですか?
プロトコルはjavaのinterfaceってことで納得したんですけど、
カテゴリはjavaのinner classに相当するって言われてもイマイチ
ピンとこないんです。

4 :デフォルトの名無しさん:2001/05/23(水) 11:24
ProjectBuilderって
Windowsでいう所のどういうものなのですか?

O-C
って、言語的にどのような物と近いのですか?

おしえてクレクレ君です。ヨロツク

5 :Cocoaマンセー:2001/05/23(水) 12:27
Objective-C = C + Smalltalk

6 :デフォルトの名無しさん:2001/05/23(水) 14:16
今月号のCマガジンで紹介されてたのを読んだけど、
良さそうですね。
MAC OS-Xがちょっと欲しくなりました。

7 :デフォルトの名無しさん:2001/05/23(水) 14:46
gccのObjective-C対応機能って、まだ残っているんでしょうか?
随分昔に見たときには「ほぉこんなものも対応してるのか」って思ったけど、今は?

8 :デフォルトの名無しさん:2001/05/23(水) 16:45
Windowsのまともな開発環境ってある?

9 :デフォルトの名無しさん:2001/05/23(水) 17:04
なにいってんだ?>>8
煽り?

10 :デフォルトの名無しさん:2001/05/23(水) 18:53
>>9
Windows用のObjective-Cの開発環境を訊いてるんだろ?

11 :デフォルトの名無しさん:2001/05/23(水) 22:13
たんなるDelドキュとして。知識はCマガだけ(w

>>4
>ProjectBuilderって
>Windowsでいう所のどういうものなのですか?

少なくともDelよりは少し(以上)は賢いような気がする。
DelってMVCとか(のサポートが)が弱いから…。

あとMだのVだのの部品の間を線でピっと「繋ぐ」ことが
できるそうなので、それも(そういうのが無いDelより)
美味しいと思われ。

>O-C
>って、言語的にどのような物と近いのですか?

OOPの動的度で言えば
C++ << Java < Del << O-C << Ruby
ってとこか。

Class(というかInterfaceってのか?)の定義は
コンパイル時にがっちりやるみたいだけど、
それを変数の型に反映させないみたいだね。
変数について言えば型なし言語…かな。

12 :デフォルトの名無しさん:2001/05/23(水) 23:13
参考書少ないよね。
親言語のsmalltalkより少ない。

13 :デフォルトの名無しさん:2001/05/24(木) 00:30
確かに参考書すくないですね。。。
でもできればC++を殲滅させるほどの地位を占めてもらいたい(ワラ

14 :デフォルトの名無しさん:2001/05/24(木) 00:42
フリーで入手可能なのって、
gnu-objective-cやトランスレーターぐらい?

15 :デフォルトの名無しさん:2001/05/24(木) 02:18
C++ << Java < Del << O-C << Ruby
JavaとDelあたりの順位がDelドキュとしての所以か、、、

16 :デフォルトの名無しさん:2001/05/24(木) 03:25
<< Ruby
遺憾の意を表明

17 :デフォルトの名無しさん:2001/05/24(木) 15:55
>>11
ほんとか?
おれもDelドキュだけど。

CoCoaヤハ-゚リのページみてるんだよね。

見た目にだまされちゃいかんぞ。
JAVAStudioっていう線でピピッな
ヨゴレSun純正ツールもあるでよ。(滅びたけど。)

ProjectBuilderは
GUIでインスタンスを作れるとかきいたけど
TCompornentレベルの事ではないかな?

ちなみにOOP度で
MVCなどにこだわらなくてよしだと思われ。

言語としてどれに近いというのは余り興味なし。
開発ツールとしてどれに近いのかな?

18 :デフォルトの名無しさん:2001/05/24(木) 16:01
>ちなみにOOP度で
>MVCなどにこだわらなくてよしだと思われ。

下手な文になっちまった。
OOP度を測る時にMVC度などにこだわらなくてヨシ
って事を書きたかったのです。
あんなもん、自然に身につく

知識がCマガだから、よっているのか。
エピステーメ氏辺りの影響かな。

OOP度は、Del<<JAVAだとは思う
でも、
実際実用にならないからJAVA要んない。
破棄を全部GCに任せる仕様は絶対おかしいって。

19 :11:2001/05/24(木) 22:25
>>18 とか。なんか勘違いされちゃったけど、

>OOP度は、Del<<JAVAだとは思う

違う違う。おらが言ったのはOOPの動的度だ。
メタクラスあるか?とか、クラスを実行時に作れるか?とか、
作れないにしても…云々…って奴。

メタクラスもどき(超サブセット)があるDelと
ぎりぎりで無いJavaとでは、ちょびっとだけDelが動的。

20 :デフォルトの名無しさん:2001/05/24(木) 22:31
>>17
>JAVAStudioっていう線でピピッな
>ヨゴレSun純正ツールもあるでよ。(滅びたけど。)

DelのIDEとPBを比べたら、という話っすぅ。

>ProjectBuilderは
>GUIでインスタンスを作れるとかきいたけど
>TCompornentレベルの事ではないかな?

俺もその線だと思う。
ほかにやりようが無いような気がする。原理的に。

>>18
>OOP度を測る時にMVC度などにこだわらなくてヨシ

違う違う。MVCをサポートしたPBつー話。
言語(のOOP度やOOP動的度)の話じゃなくて。
まーDelでもコンポやなんか自作してそれっぽいものを作ることは
可能だろうけど、デフォ状態についてとりあえずの話。

前半と後半は結構別のことを言ってるんよ>>11は。
まぎらーしくてすまん。

21 :デフォルトの名無しさん:2001/05/24(木) 23:16
Objective-Cの話をしない奴は帰れ!>>16-20
次レスから950までの発言には、
「Objective-C」という単語を必ず入れること!

22 :デフォルトの名無しさん:2001/05/24(木) 23:31
Objective-Cはス八゙ラシ丁!

23 :デフォルトの名無しさん:2001/05/24(木) 23:32
Objective-Cは数値計算につかってます。
C++では本質的なところ以外に気を取られるのがうっとうしい。

24 :デフォルトの名無しさん:2001/05/24(木) 23:42
Objective-C
名前ナガイ。ゴロ悪い。知名度ナシ。
何か反論は?

25 :デフォルトの名無しさん:2001/05/24(木) 23:45
Objective-C
やっぱクラスライブラリは巨大なの?

26 :デフォルトの名無しさん:2001/05/24(木) 23:52
>>24
Objective-C
略すとO-C?
カコ悪い

27 :デフォルトの名無しさん:2001/05/25(金) 00:10
C++でい〜じゃん。
あ、Objective-C

28 :デフォルトの名無しさん:2001/05/25(金) 00:11
(・∀・)Objective-C

29 :デフォルトの名無しさん:2001/05/25(金) 00:17
>>24
NeXT は大半が Objective-C でかかれていたが、
大半が C++ でかかれた OS は未だ存在しない。

Objective-C は「オブジェクト指向言語」だが、C++ はそうではない。

ビル・ゲイツは当初、NT のグラフィック部分を C++ で書かせたかったが、
グラフィック部分担当チームは開発できなかった。

何か反論は?

30 :デフォルトの名無しさん:2001/05/25(金) 00:19
>>26
カッコつけはLISPに逝ってね<w

Objective-C

31 :デフォルトの名無しさん:2001/05/25(金) 00:20
Objective-Cのおかげで身長が10cmちぢみました

32 :デフォルトの名無しさん:2001/05/25(金) 00:24
そうきたか(w>31
Objective-C

33 :デフォルトの名無しさん:2001/05/25(金) 00:28
>>29
ああNeXTはObjective-Cだったのか。さすがだ。

34 :デフォルトの名無しさん:2001/05/25(金) 00:57
Objective-Cのライブラリには
頭にNSがつくよね、NextStepザンス

35 :デフォルトの名無しさん:2001/05/25(金) 01:02
>>29
BeOSはC++じゃないの?

36 :デフォルトの名無しさん:2001/05/25(金) 01:03
言語名といい、NSといい、
なんかネーミングセンスが・・・>Objective-C
c-plusplusもゴロ悪いけど>24

37 :デフォルトの名無しさん:2001/05/25(金) 02:46
C+って読んであげるのはどう?

38 :デフォルトの名無しさん:2001/05/25(金) 03:34
>>29 Aperiosや EPOCなど、C++でかかれた OSはいっぱいあるよ..
そういう「こんなに使われてるよ」って土俵に持ち込むと、
負けるのは ObjectiveCだよ..

39 :デフォルトの名無しさん:2001/05/25(金) 03:59
C++b(しーぷらすぷらすふらっと)でどうよ?

40 :デフォルトの名無しさん:2001/05/25(金) 04:51
Objective-Cってよさげだけど、参考書もないし、
まわりで使ってる人いないから、よーわからん。
マジで使い物になる?

41 :デフォルトの名無しさん:2001/05/25(金) 19:47
++C

42 :デフォルトの名無しさん:2001/05/25(金) 19:53
>>38
ふ〜ん。聞いたことないけど、そなの。
これでまた一歩、ひとに近づいた...。 :-)
確かに Objective-C はユーザ人口(?)では C++ とおそらく比較にならんからね。

43 :デフォルトの名無しさん:2001/05/26(土) 02:53
Objective-C、図書館で1冊だけみつけた
(SmallTackは3冊ぐらい)

44 :デフォルトの名無しさん:2001/05/26(土) 03:47
>>42
>ユーザ人口
MS Objective-C が出なかったのが悪いと思われ。
標準規格がなくてベンダーごとに仕様が違ったとかは枝葉末節だ。

45 :デフォルトの名無しさん:2001/05/26(土) 04:58
>>44
OOPascalみたいね。あっちはDelphiのおかげで普及したけど。
名前カッコ悪いのは同意>Objective-C

46 :デフォルトの名無しさん:2001/05/26(土) 10:26
>>45
delphiはそれ以外のOOPascalとは別物なんで、
「おかげで普及」ってのとはちと違うと。

ObjectiveC
素直に名付けたらゴロが悪かったんね。

47 :デフォルトの名無しさん:2001/05/26(土) 11:29
OCBuilderとかあったらうれしかったかもしれん。

48 :デフォルトの名無しさん:2001/05/26(土) 12:18
いっそのことJAVAみたいなネーミングにしちまえばよかったのに。
やっぱ、Cを意識するのにひつようだったてことか。

なら、名前的にはC#でもよかったんだな。

49 :ヴァカマカー:2001/05/26(土) 12:21
オライリーからCocoa本出たage

50 :デフォルトの名無しさん:2001/05/26(土) 13:41
マぁック開発者のMLとかBBSとかある?

51 :デフォルトの名無しさん:2001/05/27(日) 00:14
>>50
あるけどここでURL出していいんかな?
とりあえずCocoaはやっぱり!のリンクから辿って行けるはず。

英語が読めるならAppleやOmniのがおすすめっぽい。

52 :Objective-Cは:2001/05/27(日) 01:41
大括弧がうざい。

53 :デフォルトの名無しさん:2001/05/27(日) 02:08
>>52
C#もね。

54 :デフォルトの名無しさん:2001/05/27(日) 02:12
>53
大括弧おおかったっけ?

55 :デフォルトの名無しさん:2001/05/27(日) 02:24
大カッコってコレ?>[]
((((((lispはカッコウザイけど、メリハリが無いのが一因かと。)))))))

56 :デフォルトの名無しさん:2001/05/27(日) 02:28
>55
>大カッコってコレ?>[]
そう。

57 :デフォルトの名無しさん:2001/05/27(日) 02:36
ウザイってほど使ってるの?>[]
真にウザイのは何も考えずに書いたlispのカッコだらけのコードだと思うけど。
(コレはCのネスト構造同じ様に、減らす努力はできる。)

58 :デフォルトの名無しさん:2001/05/27(日) 05:29
何だかCやC++では使わないからウザイと言っているように感じる。

59 :デフォルトの名無しさん:2001/05/27(日) 09:53
Objective-C : [クラス変数名 メンバ関数];
だったかな?

60 :デフォルトの名無しさん:2001/05/27(日) 12:19
ところでO-CでもC++みたいな「クラス変数」なんていう
危険な用語を使うんでしたっけ?
クラス変数なんて呼び方じゃ、まるでインスタンス変数とは別物みたい
なんだけど、なんかC++方面ってインスタンス(ないしはオブジェクト)
とクラスとの用語をごっちゃにするのが一般化してるよね。困る。

[インスタンス メッセージ名]
でしたっけ?>O-C

だから、C++なら
hoge.do1().do2().do3() と書くところを、O-Cは
[[[hoge do1] do2] do3] と書く…んだったよな…

まぁやや多いとは思うけど、泣くほど多くはないし、
カッコで囲うってことはエディタのカッコ対応チェック機能
(viの%コマンドとか)で範囲を調べるのが楽ってことだし。

61 :デフォルトの名無しさん:2001/05/27(日) 12:22
Cの文法の中にSmalltalk風の文法(つまりメッセージ送信)を
紛れこませたかったので、メッセージ送信構文を[]で囲って
"環境"を切り離したかったものと思われ。

Smalltalkの構文だと空白だの":"だのを使ってて
Cとはあまりに親和性無さ過ぎなので、
切り離したかった気持ちはわかる気がする。

62 :デフォルトの名無しさん:2001/05/29(火) 00:18
oc

63 :デフォルトの名無しさん:2001/05/29(火) 21:37
age

64 :デフォルトの名無しさん:2001/05/29(火) 22:31
だれかO-Cならではってコード書いてくれ。

65 :デフォルトの名無しさん:2001/05/31(木) 11:01
age

66 :デフォルトの名無しさん:2001/06/02(土) 13:48
>hoge.do1().do2().do3()
>[[[hoge do1] do2] do3]
引数がいるときは
hoge.do1(arg1).do2(arg2).do3(arg3)
[[[hoge do:arg1] do2:arg2] do3:arg3]
()と[]の数は同じ。

67 :デフォルトの名無しさん:2001/06/02(土) 18:42
問題なのは括弧の数じゃなくてネストの深さなんじゃ?>66

68 :デフォルトの名無しさん:2001/06/02(土) 23:28
うーん。どうなんでしょう?
ネストが深くなるのって即ち「問題」なんでしょうか?

悪い面はなんとなく直感的にわかる
(というか直感的に感じるソレそのものが欠点なわけだ)けど、
良い面もなにかあるような気がする。

69 :デフォルトの名無しさん:2001/06/02(土) 23:45
>>68
ネスト前提な言語(lispとか)はなにも考えないとどんどん深くなるよ。
一因は内部定義が書けるからだけど。
例えばこれ、見やすいと思う?
(当然これよりも長くて深くなるコードは沢山ある)
(define fib
  (lambda (n)
    ((lambda (fib-iter)
       (set! fib-iter
         (lambda (a b c)
           (if (= c 0)
             b
             (fib-iter
               (+ a b)
               a
               (- c 1)))))
       (fib-iter 1 0 n))
      ())))

70 :66です:2001/06/03(日) 06:36
[[[hoge do:arg1] do2:arg2] do3:arg3]
hoge do:arg1 do2:arg2 do3:arg3
Objective-Cの[]ってただ付いてるだけだと思います。
[]をとるとSmalltalkと同じ。

71 :デフォルトの名無しさん:2001/06/03(日) 10:38

BeOSって、c++でかかれているがために、コアの拡張において致命的な問題があって………
っていうのをどこかで読んだことがある。
詳しい情報しってる人URLきぼーん

Objecive-Cマンセー(´∀`)

72 :デフォルトの名無しさん:2001/06/04(月) 01:30
>>71
BeOSは知らないけど、C++でOSを書いたってことは、
どっかAPIが変化したらOS全体をフルビルト
し直さないとならないってことだよね(藁
しかもLinuxみたいなオプソなら
我慢してでも一応ビルドできるけど
そうじゃないOSだとメーカーがビルドしてくれるのを
ひたすら待つことになる。

MFCのCRuntimeClassとかいう奴(MFCスレで見た)みたいに
動的Classを扱えるように拡張しているならば
回避できる可能性があるけど。

Objective-Cはメタクラスが有るんでしたよね。
こういう場合に強み発揮するだろうな。

73 :デフォルトの名無しさん:2001/06/04(月) 18:27
>>72は、COMやCORBA等について勉強すること。

74 :デフォルトの名無しさん:2001/06/04(月) 19:19
>>72は、仮想メンバ関数について勉強すること。
>>73は、コンポーネント間通信のオーバヘッドについて勉強すること。

75 :72:2001/06/05(火) 14:25
Objective-C広まれage

>>73
CORBAとかは後付けっしょ。C++に「出来ない」ことを
ラップしている。C++自体の能力が拡張されるわけじゃない。

>>74
仮想関数の仕掛けでは、既に存在していて、かつ存在が
(RTTIとか使って検索しなくても)判っている、
というメンバしか呼べないが?
未知のクラスをOSに「登録(というのかなあ)」できるようにして
それのメソッド一覧とかを動的に取得したい(OSに取得させたい)
と思わないかぃ?

76 :デフォルトの名無しさん:2001/06/05(火) 21:22
メタクラスがあると再ビルドの必要無いんですか?>>72

77 :デフォルトの名無しさん:2001/06/05(火) 21:25


78 :デフォルトの名無しさん:2001/06/05(火) 21:37
>>76
メタクラスというよりRTTIだろうな。
それさえあれば極端な話、関数名の文字列を与えれば関数を起動できるんだぜ。
だから、ビルドなんか要らぬ。

79 :デフォルトの名無しさん:2001/06/05(火) 22:04
引数の型は?>78
Cのargc/argvみたいにするんですか?

80 :デフォルトの名無しさん:2001/06/05(火) 23:46
>>75
おれ、もしそういうことがしたいなら、文字列か数値リテラル
IDをもつ関数ポインタ(か、Commandパターンインターフェイス
実装クラス)でハッシュテーブルのSingletonクラス作っちまうが。

ローカル版簡易ネーミングサービスもどき。

81 :デフォルトの名無しさん:2001/06/05(火) 23:49
知ったかぶりの臭いが。

82 :デフォルトの名無しさん:2001/06/05(火) 23:51
文字列伝播ということは、型情報とかは失われるわけですか?>80

83 :78:2001/06/06(水) 00:14
>>82
いわゆるシリアライズでやっちゃえ。
そうすりゃ送り先でObjectに戻せるぞ。

で、シリアライズで寄越された奴が
未知のClassだったりしても大騒ぎせんで済むように
なってると吉だぞ。
未知の(OSがビルドされた時点では未知の)クラスでnewできるからね。

84 :デフォルトの名無しさん:2001/06/06(水) 00:35
うーむ未知のクラスをnewできるというのが判らない・・
型情報も文字列で持って置くってことでしょうか。
"class point {
offset type size name
0   int  4  x
4   int  4  y
}"
とか。
別に可視でなくてもいいか・・

85 :デフォルトの名無しさん:2001/06/06(水) 00:54
例えば、クラスオブジェクトを文字列から探し出して、そいつに、
clone()とか発行すれば、「知らないクラスをnew」できる。
あとは、言語仕様とかいって、この動作を隠蔽すればいい、
と思うがどうか。

86 :デフォルトの名無しさん:2001/06/06(水) 01:10
ええと一応補足。おれは
未知のクラス「で」newって書いたんだ。
未知のクラス「を」newじゃない。

いや、MetaClassにClass(というInstance(藁))を
newさせて新規Classを作ろう、という話なら
それでもいいんだけど。(なぜならその新規Classに
更にnewさせれば所謂普通のInstanceが得られるから)

>>85
まぁ乱暴にいえばそれ。
クラス「を」という言いまわしがが心配だが。

ちなみにdelは卑怯だから、そういう意味での「ClassObject」を
持っていない。Class参照変数型は有るが、参照の先に
なにがあるのかは(ユーザーからは)知ることあたわず。
つまりClassObject「を」newする場面は無い。

function GetClass(const ClassName: string): TPersistentClass;
なんてのはあるようだ>del
ClassObjectはシングルトンになってるんだろうな。
newも起動時かどっかで勝手に行われているのだろう。

87 :デフォルトの名無しさん:2001/06/10(日) 02:12
age

88 :デフォルトの名無しさん:2001/06/27(水) 00:15
本が出てるぞage

MacOS X プログラミング入門
Objective-C
萩原剛志

89 :デフォルトの名無しさん:2001/06/29(金) 17:31
>>88
買う気は無かったのに、本屋逝って立ち読みしたら意外に良かったので
買ってしまったぞ。

zoneアゲ

90 :デフォルトの名無しさん:2001/06/30(土) 05:47
漏れも、地味によい本だと思ったage。
Macは興味ねーけどObjective-Cの本欲しいんで買った。

91 :名称未設定:2001/07/01(日) 22:34
>>88
新・Mac板の新・ProjectBuilderスレで紹介されていたので買ってしまいました。
現在、ババ抜きの部分を読んでる途中....

92 :デフォルトの名無しさん:2001/07/01(日) 23:51
>>90
>Macは興味ねーけど
泣けるね。

MAC使って開発してる人って、この板の何パーセントぐらいだろう。

93 :デフォルトの名無しさん:2001/07/02(月) 08:39
>泣けるね。

Macって、「見習いたい」面は多いとは思うんだが、
だからって自分でも買いたいか?というとそんなこたぁなくて、
なんというか読みたいけど立ち読みでいいやっていう感じ。

わざわざ単一実装であるハードとOSを
買いたいとは思わないな。
似たようなものを(別のもっとOPENなハードやOSの上に)
作ったり誰かに作ってもらったり(=立ち読み)はしたいと思うけど。
しかも、似たようなといっても「全体が」似てなきゃならんなんてことは
全然ないわけで、欲しい部分だけ似てりゃいい。
うざいと思う部分も多い(というか比べればそのほうが多い)し。

で、大昔、それを裁判のネタにしたわけよなAppleは。
そういやハードもちょっとOpenにしたあと急にCloseしたよな。
そういう姿勢、嫌い。

あの本にも書いてあるが、つまりはフツー(わら)の
Unixやwinの上で、gccをObjective-Cアリでmake
しなおしゃいいわけで。
変にMacまんせーな本じゃないんで安心して読めるよ。

94 :デフォルトの名無しさん:2001/07/08(日) 04:14
>>93
でもそれなりに面白いよ>macでのプログラム

仮想メモリが無い(あってもインチキっぽい)換わりにResourceMgrがあったり
ToolBoxの設計の基本部分は本物の天才連中がしたわけだし
MacAppのフレームワークは凄いと思うし
PowerPlantは面白いし
今度はNeXTだって言うんだから、なかなか興味深いモンがあるよ

95 :デフォルトの名無しさん:2001/07/08(日) 04:26
>>94
天才なのはQuickDrawの所だよね。昔のASCIIに詳しく乗ってた。
でもMacには標準出力も入力も無いんではっきり言って不満だった。
OSXはその点いいよね。まだOSとしてクソだけど。

96 :デフォルトの名無しさん:2001/07/08(日) 08:43
>>95
unix流の標準入出力は糞だろう。
ただし、それ(の代替手段)すらないなら、もっと糞だが。

Javaみたいな世界(言語そのものはどうでもよく、環境の話)が
今後は流行って欲しいなあ。

97 :デフォルトの名無しさん:2001/07/08(日) 23:18
で、話を戻そう(わら

CocoaってのはObjective-Cベースの「環境」だと思っていいわけ?
(単にUnixの上にObjecitveCアプリがぶらさがるだけじゃなくて、という意味)

いいのだとすると、そこにはJavaに匹敵するパワーが
少なくとも技術的には存在するはずだよね。

98 :名称未設定:2001/07/09(月) 00:09
>>97
通りすがりのものですが、
多分それでいいと思います。
Cocoaの部分はほとんどがOPENSTEPの資産を使って作っていますし、
OSXの開発環境としてのJavaはおまけとして後から付け加えたものですから。

99 : :2001/07/10(火) 19:25


100 :デフォルトの名無しさん:2001/07/16(月) 20:06
>93

あの本の後半はMacOS X の為だけのものじゃないの?
gccについて書いてあるところでも「この本のソースはほかの環境では
動かない」ってかいてあるし。
Win32+cygwinとかだと参考にならんでしょ。
Objective-Cは言語としては魅力的だけれど開発環境がとぼしくて
つかいものにならない。
あの本買うよりFreeの"Object-Oriented Programing and the Objective-C Language"
を読んで,gccで適当に趣味で使うのがいいんじゃない?

101 :デフォルトの名無しさん:2001/07/17(火) 00:31
>Win32+cygwinとかだと参考にならんでしょ

「そうか!こういうクラスの作り方もあったんだな」
という意味では、あれ参考になったよ。
AutoReleasePoolとかZoneとかも参考になった。
なんで今までこれが(自分の周囲に)無かったんだろう?って。

移植なんて大それたことをする気はないが、
幾つかのクラスは喜んでパクらせてもらおうかと。

あと、Mac世界について「安心」というと
もう1つ意味があるわけで…おっと(わら

102 :デフォルトの名無しさん:2001/07/27(金) 18:08
age

103 :デフォルトの名無しさん:2001/07/28(土) 13:42
>>88の本、買っちゃった...

104 :デフォルトの名無しさん:2001/07/29(日) 13:58
Objective-Cの離婚パイラってないのん?

105 :デフォルトの名無しさん:2001/07/29(日) 16:47
ハァ?

106 :デフォルトの名無しさん:2001/08/04(土) 09:45
age

107 :デフォルトの名無しさん:2001/08/26(日) 00:00
gccのObjective-CでC++用のライブラリはリンクできるんでしょうか?

やっぱ一つ一つソースレベルで手で変換してやらなくちゃだめなのかな〜

108 :デフォルトの名無しさん:2001/08/26 07:42
>>107
http://www.tech-arts.co.jp/macosx/macosx-dev-jp/htdocs/900/997.html
Objective-C++の実装が進んでるらしい。

109 :107:01/08/26 15:41
>>108
見てみました、がリンク先が消えてました
一応使いたいライブラリのObjective-C版のラッパをどっかの誰かが
開発中らしいんでそっちに期待

110 :デフォルトの名無しさん:01/08/28 17:29 ID:iOvUzZpU
MacOS XってObjective-Cなんだ。ちょっと欲しくなった。
昔、趣味でNeXTでプログラム組んでたけど、未だにApplicationBuilderより使いやすい
RAD環境を知らない・・・
200万以上したNeXTも今では押入にしまいっぱなし(笑)

111 :デフォルトの名無しさん:01/09/06 23:51
>>88の本を買ってしまった…Cなんて全く知らないと言うのに…

112 :111:01/09/07 02:51
あ〜もう概念だけでお腹いっぱいって感じ…
だが、4500円は無駄にはせんぞ、絶対。

113 :103:01/09/07 18:29
本買ったのはいいが、そのままほったらかしだ...
>111
お互い、がんばろうな。

114 :111:01/09/08 01:49
>>113
おお、同志! つ〜か専門用語ばっかで訳わかんねえですわ。
「引数って何よ」って感じで。辞書に載ってねえよ!

115 :デフォルトの名無しさん:01/09/08 01:55
>>114
>「引数って何よ」って感じで。辞書に載ってねえよ!
 ノー!そこからかよ
まずCやるよろし

116 :111:01/09/08 02:29
>>114
すんません、今、初心者向けのページで勉強中です。
え〜と、引数ってのを調べてみたんですけど、printf()とかの
カッコの中に書く情報が「引数」でいいんですよね?

スレと関係無いんでsageときます。

117 :111:01/09/08 05:25
どあっ! >>>114じゃなくて>>115でした。
更に恥を…逝ってきます。

118 :デフォルトの名無しさん:01/09/10 08:20
>>114があまりにもレベルの低すぎる発言をしたんで、
スレの流れが止まったぞ。おい。
age

119 :デフォルトの名無しさん:01/09/10 08:39
そういえば gcc て Objective-C++ にビルドできなかったっけ。
なんかものすごく強力そうな気がするが。(藁

120 :デフォルトの名無しさん:01/09/11 00:19
MacOSXでもgccが標準でしょ。
Object-CとObject-C++は具体的にどう違うの?

個人的に表記法はC++というかJavaというかそういう
文法が好きなのだが。

ちなみに>>119は何を言ってるのか不明。逝っていいかも。

121 :デフォルトの名無しさん:01/09/11 00:48
OCはカス

122 :デフォルトの名無しさん:01/09/11 03:51
Objective-Cは、charがCのcharそのままでOO風に扱えないのが、
日本語化やi18nが面倒でいやん、とNeXTSTEP時代に思っていたが、
MacOS Xは、Unicodeが基本でぎゃふん。

123 :デフォルトの名無しさん:01/09/11 05:36
それって、sizeof(char) == sizeof(wchar_t)って事なのか、
char *str = "string"; がダウトなのか、どっち?

124 :119:01/09/11 13:19
>>120
Objective-C = C + smalltalk
Objective-C++ = C++ + smalltalk
なんじゃないかな?
使ったことないからよくわかんないけどさ。
本当にそういう風にビルドできるのかも知らんよ。(藁

>>123
コンパイラの話じゃなくて、
API が Unicode ベースつーことでわ?

125 :114:01/09/11 15:44
すんません、レベルの低い114です。
C勉強ページによくある"Hello!"とかいうのをObjective-Cで挑戦。
#import <Foundation/NSObject.h>
#import <stdio.h>

@interface Greeting:NSObject
-(void)greeting;
@end

@implementation Greeting
-(void)greeting{printf("Hello!\n");}
@end

int main(void)
{
[[[Greeting alloc]init]greeting];
return 0;
}

Terminalに「Hellow!」と出た時にはもう嬉しくって(w
「ここはこうした方がいい」とかあったら指摘してやって下さいな。

126 :デフォルトの名無しさん:01/09/11 15:46
>>125
Hello World!
じゃなきゃダメ。

127 :デフォルトの名無しさん:01/09/11 17:19
>-(void)greeting{printf("Hello!\n");}
>Terminalに「Hellow!」と出た時にはもう嬉しくって(w

Hello! とコーディングしたのに
Hellow! と表示されるってのは、重大な問題でわ?(ぷ

128 :デフォルトの名無しさん:01/09/11 17:26
>>Objective-C++
STLのLISTにNSObjectを詰めてイテレータで回せるとか?

129 :デフォルトの名無しさん:01/09/11 17:29
>>127
ワラタ

130 :デフォルトの名無しさん:01/09/12 02:17
>>Objective-C++
なんか頭悪そうな言語だな

131 :デフォルトの名無しさん:01/09/12 02:26
>>128
それ嬉しいんでしょうか?#C++に慣れてるからという理由ならば置いといて。
ObjectiveCに有る(既に有るかどうかは知らぬが自作だって可能だろうし)コンテナクラスで
それをやれば済むことなのでは?

132 :128:01/09/12 17:52
>>131
やっぱりそのくらいじゃ嬉しくないか。

C++のstringとNSStringを多重継承して、
両方のメソッドを呼び出せるってのはどう?

NSCPPString *str = [NSCPPString stringWithCString: "Hello"];
printf("%s", str->substr(0,[str length]) + " world!!");

133 :レベルの低い114:01/09/12 23:51
自分で書いておいて何なんですが、>>125のクラス"Greeting"が具体化した
オブジェクトって、どこに格納されてるんでしょうかね?
どこにも宣言してないし…宣言を省いたら自動的にid型でどこかに格納されてるのか、はて?

>>127
ぐっは…また恥を晒してしまった…逝ってきます。

134 :デフォルトの名無しさん:01/09/13 09:49
>>133
(mallocと同じように)ヒープに確保されて、使われて、そして放置されているのかも。

135 :デフォルトの名無しさん:01/09/13 17:42
>>123
unicharって型が出来ていて、(たぶんUCS-2); しかし凄い命名センス…流石apple.com)
NSStringってclassも増えてるな〜。(NeXTSTEPにはなかったと思う)

136 :デフォルトの名無しさん:01/09/14 03:14
>>134
そのクラスが、ガベコレもどき、つまり
「後で自分を消してもらうためのObject」に自分を自動的に(つまりinitで)登録
するようなクラスならば、あとでそいつに開放してもらえるだろう。

そうでなければ、仕事が終われば永遠に迷走。所謂メモリリーク。
どうせプロセス終了で片付くからイイという意見も有るが。

137 :レベルの低い114:01/09/15 23:17
>>134 >>136
なるほど、「どっか」に格納されて、そのまま放置されてるんですね。
こりゃ危険だ…。じゃあ、>>125のオブジェクトを生成する部分を、

id obj=0;
obj=[[Greeting alloc] init];
[obj greeting];

みたいにきちんと指定してやれば、大丈夫ですね。
…メモリ管理に関しては、今、その部分を読んで勉強してます。

138 :デフォルトの名無しさん:01/09/15 23:32
>>137 obj = [ [ [ Greeging alloc ] init ] autorelease ];

139 :レベルの低い114:01/09/16 05:28
うああ、なんかコンパイルしてたらエラー吐いたんですけど、
/usr/bin/ld: Undefined symbols:
.objc_class_name_NSObject
_objc_msgSend
これって「NSObject」が不確定だってことですよね?!
OSXごと全部再インストールしたんですけど、なんかダメみたいです。
これってどうすればいいですか?

140 :レベルの低い114:01/09/16 06:10
自己レス。
何のことはなく、コンパイルの時に
-framework Foundation
のオプションつけ忘れてただけでした…
Cの教本買ってきて読んでたもんですからすっかり忘れてました…

一晩悩んだ結果がコレか…

141 :デフォルトの名無しさん:01/09/16 06:28
-I のかわりの -F なんてのもあったはずず

142 :レベルの低い114:01/09/16 07:54
>>138のをやってみたんですが、実行すると、
Hello!
Bus error
とか出やがります。
(インターファース部で何も上書きせずに"NSAutoreleasePool"を宣言しないと
コンパイルエラー吐くし…)
試しにprintf("%d",[obj retainCount]);
とかやってみたんですけど、結果は同じでした("1"と表示されると思ったのですが…)。

もしかして「Bus error」って出るのは、リファレンスカウンタが0だからでしょうか?

143 :デフォルトの名無しさん:01/09/16 09:46
>Hello!
>Bus error
ワラタ

144 :デフォルトの名無しさん:01/09/16 23:11
int main(){
id pool, obj;
pool = [NSAutoReleasePool alloc]init];
obj = [[[Greeging alloc]init]autorelease];
[obj greeting];
[pool release];
return 0;
}

145 :デフォルトの名無しさん:01/09/17 09:35
コンパイラがちょっと頑張れば
obj = [Greeging alloc init autorelease];
と書けるはずなのに。

プリプロセッサだったころの手抜き仕様をそのままひきずってるところがイヤ。
いちいちカーソルを M-b で戻して [ を打ってまた M-f で進めて…。

146 :デフォルトの名無しさん:01/09/18 00:35
>>145
頑張らないところがイイんじゃないの?
Lispと同じでさ。
素朴なことしかしてない簡素なコンパイラであるってのが。

C調ソースになれちまうと、どうもSmalltalkみたいな書き方は
感覚的に受けつけなくて、ねえ…

147 :レベルの低い114:01/09/24 02:04
>>144
遅レスすんません、Cの勉強してたもんで…
何から何まですんませんね。でも、それだとなんかコンパイル通らないんですよ。
いろいろいじってやってみたところ、新規プロジェクトで「Foundation Tool」を
作った時にデフォルトで”NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];”
という文字列が出てきたんで、これを使ってみる事にしました。
int main (int argc, const char * argv[])
{
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];

id obj;
obj = [[[Greeting alloc] init ] autorelease];
[obj greeting];
[pool release];
return 0;
}
mainの宣言の所で何やってるかまだわかんないし、NSAoutoreleacePool * poolってのが
何やってるかわかんないんですが、これでなんとかオブジェクトの解放に成功したみたいです。
いろいろ教えていただいて、ありがとうございました。
もっと勉強せねば…

148 :デフォルトの名無しさん:01/09/25 02:38
結局の所、この言語ってどこで使うのですか?
例えばC++はいろんなところ、
Javaはいろんなところ、
じゃあ、O-Cは?
てな感じでイマイチそのところが分からなくて
手を付けようか迷ってる次第です。

149 :デフォルトの名無しさん:01/09/25 02:43
>>147
144どす。出来の悪いソースを載っけてすまんです。お詫びにどうぞ。
ttp://www.fsinet.or.jp/~nito/CocoaClub/
ttp://www05.u-page.so-net.ne.jp/xd5/mkino/HMDT/
ttp://www.fsinet.or.jp/~nito/OSPT/index.html
ttp://www.midi.co.jp/objc0.html
ttp://www.stepwise.com/
ttp://www.oreillynet.com/mac/
ttp://www.omnigroup.com/community/mailinglists/

150 :レベルの低い114:01/09/25 23:33
>>149
わ〜い! 知らない勉強ページがいっぱいだ〜!
ちょうどメモリ管理について言及してるページもありますね。
何から何まですんませんねぇホント…

>>148
荻原式(>>88の本)に書いてあったんですけど、どうやら
gccでも普通にコンパイルできるとか。でも、それだとCocoaの
Foundation kitとか使えないですよね。
あとは…OPENSTEP入れるとか?

151 :デフォルトの名無しさん:01/09/26 03:36
>>150
いえ、そういう意味でなくて
実際に活用する場面はどこかなという意味だったのです。

Javaはどのマシンでも動くプログラムが書きたい時に使うとか
アプレットを作りたい時に使うとか...

O-CはマックX関連機能の開発にとどまるのならどうなのかと。

152 :レベルの低い114:01/09/26 04:04
先日買ってきたCの解説書をやっと読破できました…あ〜眠。
概念だけで文法とか全然覚えてないですけど。

>>151
あ〜なるほど、すんませんです。
そういう事でしたら、現状ではMacOS X関係オンリーになってしまうのでは
ないでしょうか(もちろんUNIXやLinuxのソフトの開発もアリでしょう)。
ただ、OPENSTEPの元であるOpenStepは(紛らわしい)、オープンソースらしいので、
もしかしたらWin環境に移植なんて事もあるかもしれません。

あと、>>149のリンク先のttp://www.midi.co.jp/objc0.htmlでは、なんか
cgiがどうのこうのってやってます。詳しい事は良くわかんないんですが。

…これは噂の域を出ないんですが、新Mac板で「AppleがAMDのCPUを採用する」なんて
話がありまして。もしこれが実現して「MacOS X for AMD」が出た暁には、もっと
広い範囲でのソフト開発ができるのではないでしょうか。
(結局MacOS X絡みなんですが…)

なんかえらそうな事ばっかり言ってすんませんです。

153 :デフォルトの名無しさん:01/09/26 06:16
>>152
いえいえ、御丁寧にありがとうございますm(_ _)m
そうですか、やはりOSX関連ですか。
そうなるとやはりマイナーな モゴモゴ…・・・
使い道が限定 フガフガ…・・

でも逆に考えれば財宝が眠っているわけですね。
totoを買うよりも回収率がいいかもしれない....

154 :デフォルトの名無しさん:01/09/26 10:16
Objective-C といえば、gyveってどうなったのかナー
ttp://www.aist-nara.ac.jp/~masata-y/gyve/gyum/

155 :デフォルトの名無しさん:01/10/01 11:49
Mac OS X10.1&PB1.1登場age

Objective-C++が使えるらしい。

156 :デフォルトの名無しさん:01/10/02 00:57
ぬは…10.1にアップデートしたらProjectBuilderがぁ…

PB1.1、早く落とさせてくれないかなあ…

157 :デフォルトの名無しさん:01/10/02 02:40
>>155
なんか名前からしてすごそうだけど、0-Cと何が違うの?

158 :デフォルトの名無しさん:01/10/02 07:08
OS10.1 + DevTools for 10.1 + WO5の順番で使える > 156

159 :デフォルトの名無しさん:01/10/02 12:15
>>157
http://developer.apple.com/techpubs/macosx/ReleaseNotes/Objective-C++.html

160 :157:01/10/02 15:35
>>159
Thanx. I'll read it.

161 :レベルの低い114:01/10/05 03:20
あ〜、やっと荻原式を読破。
また最初っから読み返してます。

しかし、>>144>>147の違いって何なんでしょうね?
前者はid型で変数宣言してるのに対し、後者はNSAotureleasePoolの
インスタンスが入る事を明示しているだけなんですよね。

>>144のを見てから後でいろいろ変更を加えたりしてましたから、
もしかしたら原因は別の所にあるのかもしれません。
(Interfaceで-(id)greetingとしているメソッドを-(void)greetingと
していたり)

何にせよ、まだまだ勉強不足が否めませんね。
あ〜、2chブラウザとか作りて〜!

162 :デフォルトの名無しさん:01/10/11 07:54
>>144>>147では、実行時の挙動には全く相違はない。
ただ、id型ではなくどの型のオブジェクトが入るのか明示しておくことで、
そのオブジェクトが宣言していないメソッドを使っていたら、
コンパイルの段階で警告を出してくれるようになる。

>>161
実はCocoa製2chブラウザはもうあるのですよ(w
http://teri.2ch.net/test/read.cgi/mac/988273635/
オープンソースだし参考にしとけ。

163 :デフォルトの名無しさん:01/10/21 05:51
age

164 :デフォルトの名無しさん:01/10/21 14:23
Ojjective-C++って例外処理はどうやってんの?

たしか、Objective-Cではsetjump,longjumpのマクロだった気がするんだが、
Objective-C++だとthrow,catchのマクロになってるの?

165 :デフォルトの名無しさん:01/10/21 15:17
>>164
http://homepage.mac.com/mkino2/spec/objectiveC++/objectiveC++.html
↑ここ読みなはれ。
ちょっとややこしいことになっている。

166 :デフォルトの名無しさん:01/10/22 15:37
POCというコンパイラを使っています。
GNU一般公有で、ソースも公開されています。
URL: http://users.pandora.be/stes/compiler.html


このコンパイラだと、C++ のコードを、
Objective-Cのコードと混在させることができます。

つまり、C++ のSTLをObjective-Cで使うこともできます。
しかし、自分は C++ が分からないので使っていません。

自分が使っているのは、UNIX用ですが、Windows用もあるようです。


このPOCのcakitのAPIで、お聞きしたいことがあるのですが、
このスレッドに、cakit に詳しい人はおられますか?

"Vectorのインスタンス同士の sameClass が false になる"

という現象が起き、途方にくれています。

よろしくお願いします。

167 :デフォルトの名無しさん:01/10/26 19:18
>>166
#include <stdio.h>
#include <objpak.h>
#include <cakit.h>
#include <stdlib.h>

int main(int argc,char **argv)
{
id vec2;

id cltn = [OrdCltn new];
[cltn add:[BigInt int:3]];
[cltn add:[BigInt int:4]];

vec2 = [Vector collection: cltn];

printf("%d %d %d %d\n",
1==1,
vec2->isa == [vec2 class],
[[vec2 scalarZero] isEqual: [vec2 scalarZero]],
[vec2 size]
);

[vec2 printOn:stdout];

[vec2 free];
return 0;
}

これの出力が

% a.out
1 1 0 0
{3,4,0,0}

になります。

168 :デフォルトの名無しさん:01/10/26 19:28
>>166-167

すいません。

よく見たら、

- scalarZero:aScalarZero numScalars:(int)numScalars
{
return [self notImplemented:_cmd];
}

でした。

なんか、実装されてないみたいです。

POC を使っている人は、どうしているんですか?

169 :デフォルトの名無しさん:01/10/26 19:30
こういうのを、無駄な努力っていうんでようね…。
久しぶりに悲しくなった。

170 :デフォルトの名無しさん:01/10/26 22:20
勝手にとばないでくれぇぇ.

171 :デフォルトの名無しさん:01/10/29 12:41
Morphic インストール失敗中。
だれか、成功した人、いますか?

172 :デフォルトの名無しさん:01/11/10 10:26
はい

173 :かじり中:01/11/11 00:28
[thred age]

174 :デフォルトの名無しさん:01/11/11 17:23
ObjectiveCから入門しても、他の言語に移る時大丈夫ですか?

175 :デフォルトの名無しさん:01/11/12 11:29
>>174
ObjectiveC から始めた人が他の言語に移るときの僕の予想

ObjectiveC -> Squeak(SmallTalk)
: 文法が分かるだけに、GUI にイライラする。

ObjectiveC -> Java
: [] から () に変わるので違和感を感じる。
: 配列操作と簡単なファイル操作が楽だなぁと思う。
: APIマニュアルが嬉しいと思う。

ObjectiveC -> C
: malloc が面倒臭いと思う。

ObjectiveC -> C++
: 気が狂う。

176 :デフォルトの名無しさん:01/11/13 15:52
Javaっすか。ありがとです。

177 :デフォルトの名無しさん:01/11/13 16:09
>>176
オブジェクト指向のメッセージ通信というのが、
Java では分かりにくいかもしれない。

ObjectiveC の文法を見て始めて
メッセージ通信というのが実感できた。

178 :デフォルトの名無しさん:01/11/13 21:14
>>175,177
ふむ。情報サンクスです。
まずはObjectiveCを修得するのが先ですが。ゎー

179 :デフォルトの名無しさん:01/11/14 00:43
Objective-C 使って GUI 作るとしたら GNUstep 使うしかないのでしょうか?

NSButton *gikoButton;

gikoButton = AUTORELEASE ([NSButton new]);
[gikoButton setTitle: @"Print Itteyoshi!"];
[gikoButton sizeToFit];

こんな感じでやってみたいんだけど。

180 :デフォルトの名無しさん:01/11/14 13:31
>>179
GUI だけは、 GTK/GDK を使って誤魔化している。

全部 ObjectiveCでやりたいので、
Morphic導入を検討したが、インストールすらできなかった。

あと、噂で、gnome-objc らしきものがあるらしいのですが、
これで GUI を構築している人いますか?

検索しても、サイトへのリンクが切れているので、詳しい人お願いします。

181 :Self:01/11/15 00:43
Smalltalk の Morphic や MVC、Objective-C の GUI ライブラリみたいな、
オブジェクト指向の GUI ライブラリで、多言語から使える物ってないのかな。
オブジェクト指向 GUI ライブラリ決定版! みたいな物が欲しい。

まだ出てないと思いますが、Objective-C 関連 FAQ.
http://www.ics.es.osaka-u.ac.jp/public/netnews-archive/FJ.ARCHIVES/fj.archives.answers/Objective-C/answers.j
http://www.ics.es.osaka-u.ac.jp/public/netnews-archive/FJ.ARCHIVES/fj.archives.answers/Objective-C/classes.j
http://www.ics.es.osaka-u.ac.jp/public/netnews-archive/FJ.ARCHIVES/fj.archives.answers/Objective-C/sample.j

182 :Self:01/11/15 01:01
>>180
Gyve?
http://www.aist-nara.ac.jp/~masata-y/gyve/gyum/

obgtk?
http://www.interq.or.jp/earth/inachi/gtk/obgtk/intro.html

http://www.airlab.cs.ritsumei.ac.jp/~taka/GYVE/ML/archive.old/msg00081.html

どちらかというと Tk の見た目が好きです。
メニューがティアオフ出来るところとかも。

183 :デフォルトの名無しさん:01/11/15 14:27
>>182
どうやら、探していたのはこの obgtk のようです。
サイトの ftp のリンクが切れて、ダウンロードできません。

名前が変わったのでしょうか?
公式サイトを見つけたいので、適切な検索語などありましたら、お教え下さい。

184 :Self:01/11/16 00:22
>>183
obgtk は gnome-objc の中に入ってます。
gnome-objc を ftp してみて下さい。
gnome 無しで使えるのかどうかは分かりませんが。

gnome-objc
ftp://ftp.gnome.org/pub/GNOME/stable/sources/gnome-objc/

GToolKit はドキュメントやサンプルがそれなりに充実しています。
興味がありましたら試してみてください。

GToolKit
http://www.informatik.uni-osnabrueck.de/elmar/projects/gtoolkit/

ここもお勧めです。

Objective-C Links
http://www.foldr.org/~michaelw/objc.html

185 :デフォルトの名無しさん:01/11/16 14:13
>>184
胸のつかえがとれたようなきがします。

さっそく試していますが、コンパイルをミスりまくりです。
(Solaris x86)
家に帰ってから Linux で試してみます。

186 :YO:01/11/16 20:18
YO

187 :デフォルトの名無しさん:01/11/19 21:16
Morphic 使っている人、外観はどんなですか?
画像とかどこかにあれば、お教え下さい。

188 :デフォルトの名無しさん:01/11/20 21:14
Squeak(Smalltalk) で C のコードを書いているが、楽だ。
やめられん。
僕のコードを解析する人は、自動生成されたコードの方を解析している。
みんな、ごめんね。

189 :デフォルトの名無しさん:01/11/24 07:57
動的結合age

190 :名無しさん@XEmacs:01/11/24 17:50
>>188
もしかして CCodeGenerator 使ってる?
ぜひTipsをば教えて下さい!!
Squeakスレで。

191 :デフォルトの名無しさん:01/11/26 14:05
>>190
Squeak ObjectiveC translator
ttp://swiki.gsug.org:8080/sqfixes/1251.html(なぜか今はつながらない)

配列が array[i] といった感じに展開されるので、
at: put: や value: といったように置き換える。
(この辺は Emacs や awk の機能でなんとか自動的に行う)

実装されていないメソッド(printf: や printf:f: など)
を実装する。
(これは、手作業。慣れてくるとテンプレートが使える)

これを繰り返すとなんとかコンパイルできる。
(時間がかかっても 5分くらいでコンパイルできるようになる。
それ以上、時間がかかるものは大概、自動変換は無理。)

ファイルの先頭に使うインクルードファイルを書き込む。
(使用するObjectiveC コンパイラ(gccやPOC)によって適当に。)

おそらく、UNIX だと、文字コード問題でコンパイルができないと思います。
それを解消するために、
「w3m や NC などでファイルを閲覧 -> バッファを保存」
という手順で文字コードを変換しています。

これを ObjectiveC でデバックする人は、たいへんだと思います。

192 :デフォルトの名無しさん:01/12/03 15:24
Morphicインストールした人、参考Webページおしえて下さい。

193 :デフォルトの名無しさん:01/12/12 09:09
泣きたい。

194 :デフォルトの名無しさん:01/12/19 16:41
部所の説得に失敗した。
ObjectiveC か VB かだったのだか、
VBに乗り換えざるをえなくなった。

195 :デフォルトの名無しさん:01/12/19 17:07
>>194
>ObjectiveC か VB かだったのだか、

へんな選択肢だな。

196 :自削自炎:01/12/19 17:33
ObjectiveCでDLL書いてVBで使用。これ最強。
しかしチームで開発する時に、保守しにくくなる可能性があるという
諸刃の剣。プロジェクトにはお勧めできない。
まぁ、>>194はこの意見も参考にしてくださいってこった。

197 :_:01/12/19 19:47
機能はカッコ良いけど
見た目がカッコ良くない・・・

198 :デフォルトの名無しさん:01/12/19 19:59
>>195
まず、部所でこれまで使っていたのがVB。
大学がつくってくれたプロトタイプがObjectiveC。

これを機に、MS依存から脱却できればと思ったのだが、派手に沈没した。

199 :デフォルトの名無しさん:01/12/19 22:52
>>198

理解できる人がほとんどいなかった、に1,000,000ポイント

200 :デフォルトの名無しさん:01/12/20 00:51
GNUSTEP 使ってる人いない?
最近復活気味で活動が活発化しとるね。
良き事良き事。

201 :デフォルトの名無しさん:01/12/26 18:37
使ってるよ。

202 :名無し:02/01/03 11:57
なんも勉強しないで聞くのは恐縮なのですが
Objective-C は使ったことないのですが, iterator 関係はどうなっているんでしょうか。
Ruby だと簡単だけど遅いので同じことを C++ で書こうとして発狂しそうになりました。

203 :デフォルトの名無しさん:02/01/03 12:51
>>202
C++だと

1:rubyのような内部イテレータを実現しようと思っても、C++では
無名手続きブロックを記述できないので、書きやすさが全然改善されまい。

2:引数とかの書きかたが柔軟ではないので、これまた綺麗にならない。

ここらへんは、ObjectiveCだとC++よりは随分柔軟であるので、
だいぶ楽にやれるんじゃないかな。

以上、こっちも知らない人でした(わら

204 :デフォルトの名無しさん:02/01/03 14:54
Objective-C と言ったら Stepstone社だろ?
Stepstone社はいずこへ?

205 :デフォルトの名無しさん:02/01/03 15:20
>>204
心の中に。

206 :デフォルトの名無しさん:02/01/03 15:23
>>205
父さんしたのか。

207 :206:02/01/03 15:26
WebObjects 5 は、完全に java 化されたし。ハァ・・・

208 :デフォルトの名無しさん:02/01/03 18:56
MacOSXが市場を増やしていけばなぁ。
ProjectBuilderもあるし、どんどん移行して
いきたい気分だが…

209 :デフォルトの名無しさん:02/01/04 15:12
数値計算の cakit ってどうなってるんですか?

210 :デフォルトの名無しさん:02/01/08 00:02
>>202
Cocoaなら

NSEnumerator* enumerator = [array objectEnumerator]; //array is instance of NSArray
id obj;

while(obj = [enumerator nextObject] ) {
if( [obj respondsToSelector:@selector(hoge)] ) {
[obj hoge];
}
}

とか。
ifの中を
[obj conformsToProtocol:@protocol(theProtocol)]
とか
[obj isKindOfClass:[theClas class]]
とかにしてもいいし。

211 :デフォルトの名無しさん:02/01/15 05:30
http://www.ibiblio.org/pub/Linux/devel/lang/objc/morphic-0.0.3.tar.gz
動くかな?
だれか教えて.

212 :デフォルトの名無しさん:02/02/03 04:13
saga りすぎ。

GNUSTEP って COCOA 互換環境を目指すとか逝ってたような
気がするけど、どうなってるんでしょうかね。

213 : :02/02/24 18:19
いまいちわからん。

214 :デフォルトの名無しさん:02/02/25 08:10
GToolKit のサイトが繋がらなくなってる。

Objective-C で GUI を作る時はどんなライブラリを使っていますか?
勿論、Cocoa 以外でね。

これって GNUstep 専用だよね?
http://www.gnustep.org/resources/documentation/gnustep-gui_toc.html

215 :デフォルトの名無しさん:02/02/25 23:09
>>211
コンパイル出来なかったよ。Makefile 変じゃない?
どなたか Morphic インストール出来た人いらっしゃいませんか?

GToolKit は freshmeat の方は生きてるみたい。
でも、メインサイトの方がサンプルコードが充実していて良かったのに。

216 :デフォルトの名無しさん:02/02/26 00:04
(plz ref-book)

217 :216:02/02/26 00:10
@implementation sorryForAll
-(id)wrongThreadAgeSorry{printf("sumaso\n")};
@end

こんな感じで良い?

218 :デフォルトの名無しさん:02/02/26 00:13
MSはVisual Object-Cださないかな

219 :デフォルトの名無しさん:02/02/26 02:18
>>218
gcc Developer Station 2000
http://popup.tok2.com/home/choro/gds2k/gds2k.htm
をがんばってObjective-C対応にするとか。

220 :219:02/02/26 02:19
でも、簡単に導入できる、
Objective-C環境は
おいらも欲しいです。

221 :デフォルトの名無しさん:02/02/27 20:58
US のサイトでも良いから、Morphic のインストール方法を載せている所
無いでしょうか。


222 :デフォルトの名無しさん:02/03/11 00:24
興味あるので age ます。

223 :デフォルトの名無しさん:02/03/18 22:35
WindowsでObjective-Cを利用するための解説文書ってありますか?
GUIアプリをこの言語で作ってみたいのですが。

224 :223:02/03/18 22:36
Googleとかで検索してみたのですが、
いまいち見つからないのです。

225 :デフォルトの名無しさん:02/03/19 02:24
gcc + gtk で可能なんじゃない?

226 :デフォルトの名無しさん:02/03/19 02:37
次の選択肢があるかと。

・GTKKit, GToolKit, GNOMEObj-C などの GUI ライブラリを使う
  GToolKit は Win も OK だったと思う。日本語が通るかは微妙。
・GUI 部分は C で書く

あと、一応 GNUSTEP は Windows で動かない事もないみたい。
http://www.peanuts.org/GNUstep/information/faq_1.html#SEC5

バイナリの配布には向いてないと思うけど、GNUSTEP が一番面白そう。

227 :デフォルトの名無しさん:02/03/19 12:22
>>225-226
ありがとうございます。
http://www.sixnine.net/cygwin/cygwin-doc/mingw-doc/w32api.README.html
のMinGW関連の文書読んでたら、
COMとかいうものが使えないみたいです。

GUI 部分は C で書くっていう方法を取ろうかと
思います。Win32 APIとかも学ばねばいけないですね。
がんばります。

C-->Objective-Cへの移行はすんなり行ける
みたいなので、もうちょっとWindowsでも
流行ると良いのですが。

228 :デフォルトの名無しさん:02/04/15 04:38
プログラムはじめたばかり
経験延べ3日ぐらい、Cの本を半分ぐらい読みました
入出力・数値の計算・制御文とか書いて実際動かしてみて
コードってこういう風に書くのか、とゆーのがおぼろげに分かった段階。
ポインタとか構造体は詳しくやってないです

で、Cをある程度覚えたらObjective-Cに移行しようと思ってたけど
どの程度までCをやればいいかわからんです・・
あるいはCを飛ばしていきなりO-Cはじめた方がいいのかと思いはじめている
目的はOSXでシーケンサーとかサンプラー(音楽アプリ)を自作することなんで
あの原始的な感じがどこまで今のGUIに直結してるのか不安になってきた。

べつに仕事で必要に迫られてやるわけじゃないんで
じっくりCから覚えていけばいいのかもしれないけど、
あんまり後で使わなそうな知識を詰め込みたくもない
(使えそうかどうかの判断すらできない)
この状態でO-C始めるのは無謀なのかなぁ

まぁ俺は挫折するかもわからんけど
直感的にObjecCいいと思うのでみなさまがんばってください

229 :デフォルトの名無しさん:02/04/15 06:52
Objective-C で行き詰まったら C に戻ればいいんじゃない?
C の標準ライブラリ関数くらいは憶えておいた方が良いと思うけど。

230 :デフォルトの名無しさん:02/04/15 07:56
Objective-Cで行き詰まるようなら、Cに戻っても一緒と思ってみるテスト

231 :デフォルトの名無しさん:02/04/15 08:41
挫折しない方法として、目標を定めるのでなく、まずプログラミングを楽しむべき。
そしたらCをやろうがObjective-Cをやろうが、何とかなるだろ。

自分の欲しいアプリを作れるって事は、プログラミング中毒者の特権だと
思ってもらいたい。

232 :229:02/04/15 23:18
>>230
分かり難かったらスマソ。
行き詰まるって書いたのは、Objective-C でサポートしていない低レベルの
実装をいじりたかったり、パフォーマンス上のボトルネックが発生した時等、
技術的な面ね。そうなったら C を勉強すれば良い。
その辺りが C でも書ける Objective-C の柔軟な所だと思うよ。

まずプログラミングを楽しむべきというのには同意。
折角プログラミングを始めたんだから、その醍醐味を十分味わって欲しい。
その内自分にしっくりくる言語も分かってくるし、それが Objective-C だったら
良いね。

233 :デフォルトの名無しさん:02/04/16 04:47
自分にしっくりくる言語がRubyだったら・・・
イークナイね。

234 :デフォルトの名無しさん:02/04/16 19:29
>>232
オサン臭い話になるかも知れんが・・・
その昔、パソコンはあるけどソフトがない時代は、パソコンで遊ぶ方法って
言えばプログラミングだったなぁ。でも今はソフトが溢れてる。
だから、プログラミングの目的はプログラミングでなく、必然的にソフトを
作る事になるんだよなぁ。
目標を持つのは良い事のように見えるが、プログラミングは目標に向かって
一直線に進めないのが難しい所なんだよなぁ。
だからゲ製板は、いつまでもあの調子なんだよなぁ。
とか呟いてみる実験

235 :デフォルトの名無しさん:02/04/17 23:45
>>232
>Objective-C でサポートしていない低レベルの
揚げ足とりでスマンが、これはフレームワークの話だな。

>>234
hello, world!


236 :234:02/04/18 09:09
意味わかんねーッス。

237 :228:02/04/21 07:06
Cの入門書ざっとやり終えてみました。
まだ知らない関数とかたくさんあるので
もうちょっと詳しい本やってみます。
そのあとOSX買いに逝てきます

反応して下さった方々ありがとうです。
とても参考になりました。
書いてみるもんだなぁ


238 :デフォルトの名無しさん:02/04/26 16:43
Objective-C の文法に惚れていろいろなプログラムを作った。

そこらにあるようなデータ可視化ツールの類だ。
OpenGL でぐりぐり動いてくれた。使っていたのは POC だ。
実によくやってくれた。自分の知的好奇心は存分に満たされた。

あるとき、研究用の数値計算ツールのプロトタイプを作ることになった。
「たしか、POC には cakit という数値計算ライブラリがあったはず…。」
そう思い、
「簡単! 来週中に、コンソール版だけ動くよ。」
と、同僚や上司に公言していた。

しかし、動かない。何回自分のプログラムを見ても間違いに気づかない。
約束の期日から2日ほど過ぎてしまった。

しょうがないから、昔使っていた VB のツールを流用することになった。

泣いた。
VB が固まる度に自分が責められるようになった。
自分の地位は、地に落ちた。


あるとき、 cakit のソースを見ると下の文字が…。

[self notImplemented:_cmd];




ブチ切れた。


239 :デフォルトの名無しさん:02/05/11 16:18
age

240 :デフォルトの名無しさん:02/05/16 13:58
age

241 :デフォルトの名無しさん:02/05/16 13:59
GNOMEは何故Objective-Cを採用するのをやめたのだろう。
Linuxで安心して使いたいなぁ。

242 :デフォルトの名無しさん:02/05/16 14:00
あ、標準開発言語としてね。

243 :デフォルトの名無しさん:02/05/17 11:51
Objective-C.NET
ってあるん?

244 :デフォルトの名無しさん:02/05/17 16:12
>>243
それホスィーな。

>>241
GNOMEってそういう路線だったの?
そのまま行ってくれれば使ったのに。
でも、KDEと違いどの言語でも開発できる
様にするためとかなんとか書いてあったのを
読んだ様な気がする。

245 :デフォルトの名無しさん:02/05/17 21:11
どこかのサイトにGNOMEプロジェクトの創始者(か誰か)が言ってたと書いてた.
UNIXは資源の再利用がされていないから駄目だ.
GNOMEはこれを解決する(そして,その方法はObjective-Cだ).
とかなんとか.
で,何かがあって,結局Cになったらしい.

NSObject使うには,Gnustep入れないといけないのかな?
Vinelinux2.5には入ってないのかな?


246 :244:02/05/18 00:51
>>245
解説Thanks。
そっちの路線でいけば、
GNOMEでObjective-Cなドキュメントが増えて
ありがたかったのだが。
今は使えるけど、ドキュメントがほとんど無いみたいだしね。

247 :デフォルトの名無しさん:02/05/19 01:11
結局のところ,MacOS X以外ではいろんなドライバとかがC++で書かれていたりするから,Objective-Cを使うのは難しいよね.
gcc-2.9x当りからObjective-C++が使えるようになったってのは,どうなんだろう.

248 :デフォルトの名無しさん:02/05/19 02:55
Objective-Cは、文字扱いがCでcharなのが痛い。
MultiByteString/WideCharacterにwrapping可能なstring classを
使ってくれるとは限らないからね。

MacOS XはUnicodeだからまだいいんだけど。



249 :デフォルトの名無しさん:02/05/26 01:18
ひまなんで。
>>247
Objective-C++は制限いろいろ、とのこと。
以前、説明をするページがあったが、作者が間違えて消してまったらしい。
キャッシュ。
http://www.google.co.jp/search?q=cache:Cso_2H6Nd2QC:homepage.mac.com/mkino2/spec/objectiveC%2B%2B/objectiveC%2B%2B.html


250 :デフォルトの名無しさん:02/05/26 15:30
ありがとう.
とりあえず自分でC++を書く気は全然ないので,
ライブラリさえ使えれば問題ないです.
ただ,Linux上のgccでObjective-C++が使えるのかな…と.
gcc2.9xのパッチで出たとかなんとかで,
gcc3.1では使えるとのウワサだけ効いたんだけど…どうなんだ〜?!
という状態です.
いや,Vinelinuxのgcc2.95で使えないとちょっと困るんですが.
はい,自分で確かめてみます.

251 :デフォルトの名無しさん:02/05/26 15:47
駄目でした…
ヘッダファイルの読み込の時点で怒られる.
aaa.m----

#include <string>
using namespace std;


…objective-c + C++なプログラム…
---------
gcc -c aaa.m
でも
g++ -c aaa.m
でも駄目.
もしかして,拡張子が.ccとかだったらいけるとか?!

252 :デフォルトの名無しさん:02/05/26 17:10
.mmじゃないナリか?もしくは.M

253 :デフォルトの名無しさん:02/05/26 20:09
>>247
> MacOS X以外ではいろんなドライバとかがC++で書かれていたりするから,

"Hello IOKit: Creating a Device Driver With Project Builder"より、

> ・Device drivers are (frequently) written in C++.

実際、例はC++で書かれていて、Objective-Cの'O'も出てきません。

正直、Objective-Cのmethod dispatcherをdriverで使うのは嫌ですよね。



254 :251:02/05/28 00:55
>> 252
試してみました.
が,普通のObjective-Cのソースでもコンパイルが引っ掛かる…
駄目っすね.

>> 253
そうなのか…
確かにドライバーで[ ]は使いたくないといえば,そうかも.
でも,C++はアリなのか〜?!

255 :デフォルトの名無しさん:02/05/28 02:07
>>254
> でも,C++はアリなのか〜?!

C++は効率いいからね。
/System/Library/Frameworks/IOKit.framework/Versions/Current/Headers/scsi-commands/IOSCSIMultimediaCommandsDevice.h なんかもろC++。

256 :IOKit:02/05/29 23:05
C++じゃないよお。Embedded C++だよお。

257 :251:02/06/01 23:26
でも,Objective-CってほとんどCなんだから,
C++と変わらないくらい効率よくないのかな?


258 :デフォルトの名無しさん:02/06/02 00:40
>>257
殆どSmalltalkなOO拡張は、静的な最適化がほぼ不可能。
かといって、Smalltalkのような動的最適化をかませる
方法が無いから、ものすごく遅い。C部分での最適化で
稼ぐしか無いけれど、それでは、C++に対する利点には
なり得ないよね。
C++は、最適化に命をかけたような仕様で、そのせいで
効率の悪くなっている部分があるのが皮肉だけれど、
それでもだいたい成功してる。比較にならんよ。

259 :251:02/06/02 11:40
なるほど.
うーん,でもC++はいやだなぁ…(書き方が美しくないという理由だけ)
かといって,Javaで書けるほど上の部分でもないしなぁ…
でも,いずれ社会に出るとC++になるのかなぁ.

260 :デフォルトの名無しさん:02/06/02 12:11
言語に得手不得手があるのは当たり前。


261 :デフォルトの名無しさん:02/06/05 21:53
[thisThread retain];

262 :デフォルトの名無しさん:02/06/05 23:46
2CHThread *objCThread = [[[2CHThread alloc] init] createWithTitle:@"Objective-C"];

263 :デフォルトの名無しさん:02/06/06 17:19
NSLog(@"ほとんど人いないね...");

264 :デフォルトの名無しさん:02/06/06 18:27
だれかgcc3.0でObjective-C++が使えるかどうかを知ってる人は
いませんでしょうか?
遅くてもいいんです,いずれマシンが早くなるから.


265 :デフォルトの名無しさん:02/06/07 11:23
Apple has offered to contribute Objective-C++ to a future version of
FSF GCC, but the GCC Steering Committee, whose charter includes
decisions about whether to include new languages in FSF GCC, has yet
to say whether or not they would accept it. The Steering Committee
and its members are described at gcc.gnu.org; if you want ObjC++ in
FSF GCC, please lobby them, either as a group or individually.

オーマイガッ!!
頼むよ,FSF.

266 :デフォルトの名無しさん:02/06/14 13:52
さがりすぎだなあ…
勉強でもしょう。

267 :デフォルトの名無しさん:02/06/21 18:40
そして一週間経過...

268 :デフォルトの名無しさん:02/06/28 07:12
さらに一週間経過...

269 :名無しさん@ネタかよ:02/06/28 09:13
>>264
Objective-C++って何だ。


270 :デフォルトの名無しさん:02/06/28 12:31
>>269
http://www.google.com/search?q=Objective-C%2B%2B&ie=Shift_JIS&hl=ja

271 :デフォルトの名無しさん:02/07/02 18:35
>>263
NSLog(@"みんな新・Mac板じゃない?");

[NSNotificationCenter age];

272 :デフォルトの名無しさん:02/07/02 18:48
ちゃんと開放しとくよ

[thread release];

273 :デフォルトの名無しさん:02/07/02 19:18
[thread retain];


274 :このスレ見てるひと、どれくらい?:02/07/02 20:52
[thread retainCount];

275 :デフォルトの名無しさん:02/07/06 22:04
[thread dealloc]

276 :login:Penguin:02/07/08 19:43
後で読み返してみる。文献無いから。

277 :デフォルトの名無しさん:02/07/15 17:12
週に一度の保全タイム。

72 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.02 2018/11/22 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)