[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 2chのread.cgiへ]
Update time : 08/18 21:51 / Filesize : 212 KB / Number-of Response : 871
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Objective-C [ObjC part:3];



1 名前:デフォルトの名無しさん mailto:sage [2007/08/08(水) 12:18:31 ]
Objective-C(オブジェクティブ シー)はプログラミング言語の一種。C言語をベースにSmalltalk型のオブジェクト指向機能を持たせた上位互換言語。
 (Wikipedia:ja.wikipedia.org/wiki/Objective-C より)

前スレ
pc11.2ch.net/test/read.cgi/tech/1106983092/
前々スレ
pc5.2ch.net/tech/kako/990/990574267.html

321 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 03:24:09 ]
S60でもPythonが動いてるってのにこいつはUnixマシンだよ?
JB環境になるけどPython(PyObjC)やJavaScript(Jiggy)ならGUIアプリも書けるぜ。

322 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 07:32:28 ]
実際スクリプト言語で十分だけど、
そこであえてObjcでガリガリ書くのがスーパーハカー。


323 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 08:47:52 ]
インラインでCを書ける"軽量"言語だから

324 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 09:54:51 ]
>>323
ちょっと目から鱗


325 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 10:33:56 ]
>>301
もともとObjective-CはSmalltalkの式をCコンパイラに通すための
プリプロセッサとして生まれて、そこから始まったからだよ。
[ ] の中はSmalltalk。

326 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 10:38:29 ]
あまりに違いすぎるから違和感というか抵抗が強い。
HTMLの中にJavaが入ってるのと似てる。(javascriptが入っててもソース見るとカオスだけど)。
Cのソースが6割がasm{}だったらやっぱりカオスでしょ?

Cを拡張なんかしないでjavaみたく新言語の方が受け入れられてんじゃないかと思う。

327 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 10:57:50 ]
Smalltalk 由来だって分かってるから、俺には違和感は全くないけど。
俺等は受け入れた。それで十分じゃないか。

328 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 11:13:12 ]
本当はCを埋め込んでんだろうけど、なんかobjcの方がCに埋め込まれてるみたいなんだよね。そんだけ

329 名前:デフォルトの名無しさん [2008/06/18(水) 12:17:43 ]
>326
組込やってるからカオスとは思わないが



330 名前:デフォルトの名無しさん [2008/06/18(水) 12:22:00 ]
組み込みのように中の人が使う言語を、ウェブ・クリエータみたいなカジュアル層の人にまで使っていただこうとするのは、どこか間違ってると思いませんか?

331 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 13:42:42 ]
敬語??

ウェブ・クリエータみたいなカジュアル層の人が
HTML中のjava入りでやってるんじゃないの?

obj-cだけじゃないんだし
rubyやらjavaとか好きなの使えばいいんじゃないかと思うが。

「こうあるべき」で固まりたくはないもんだ


332 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 13:56:50 ]
もんだ?

333 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 14:01:10 ]
いまどき web サイトで java applet をつかってるところなんてあるのか?
javascript ならわかるが ...

334 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 14:15:50 ]
オンライントレード系は?

335 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 14:52:32 ]
applet ではHTMLの中に Java 書いたりしない。 JSP の話だろう。

336 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 15:32:00 ]
ああなるほど、失礼しました。

337 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 15:41:03 ]
Iフォーンみたいなカジュアルは来なくていい。objcがギンギラのコテコテのキモ言語になるからね
流行ちゃんは、VBよろしく、flash使っていてくれ。

338 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 17:36:51 ]
             /ヽ       /ヽ
            /  ヽ      /  ヽ
  ______ /     ヽ__/     ヽ
  | ____ /           :::::::::::::::\
  | |       //       \  :::::::::::::::|
  | |       |  ●      ●    ::::::::::::::| ・・・
  | |      .|             :::::::::::::|
  | |       |   (__人__丿  .....:::::::::::::::::::/
  | |____ ヽ      .....:::::::::::::::::::::::<
  └___/ ̄ ̄       :::::::::::::::::::::::::|
  |\    |            :::::::::::::::::::::::|
  \ \  \___       ::::::::::::::::::::::::|


339 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 23:26:01 ]
もんだw



340 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 21:33:43 ]
interface builder3.0が糞な件について

研究室でObjective-Cを使ってプログラミングを書けって言われたんだけど、
何この糞みたいにめんどくさい開発ツールは。

なんでわざわざオブジェクトとコードのコネクションを手動で接続しなくちゃいけないわけ?
Visul Studioをちょっとは学べよ。
あんなのダブルクリックで済むんだぞ。

あーむかつく。
なんでこんなん使ってやらなあかんねん。
ふざけんな。研究費削っとんちゃうぞ!!!!!!!!!


341 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 21:59:49 ]
使わなきゃいいじゃん

342 名前:デフォルトの名無しさん [2008/06/22(日) 22:00:25 ]
そういう言語だからです。
あきらめましょう。
Windowsプラットフォーム向けが普及するとユーザーが増えるので風向きが変わるかもしれません。

343 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 22:26:39 ]
あまりに糞だからVS使わせろとか言えないのか?
わざわざマイナーなMacを使う意味がわからん

344 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 22:36:38 ]
Macを使う理由は
Linuxベースで金がかからないから。


345 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 23:27:08 ]
Linuxベース?

346 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 23:43:04 ]
linuxベースっていう言葉はおかしいね。

まぁ基本的にはlinuxと同様unixが大元になっているけど。
この人はmacのことを殆ど分かってないんだろうなー。


347 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 23:43:53 ]
最近、Cocoa始めたものとしては、最初の印象として>>340は思った。
糞だとは思わなかったけど、なんでだろ?って感じで。
で、NSTableViewにdataSourceセットするのをやって、ちょっと分かった。
少なくともVS的コーディングでは、これは実現できないと思ったなぁ。
それがいいか悪いかは知らんけど。

348 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 23:58:50 ]
>>340
まさにおなじはなしを
dotnetaddict.dotnetdevelopersjournal.com/dcacs.htm
のひとがしてるので、彼の分析を読んで見るとおもしろいかも。
このひとのブログは全般的におもろいです。
.Net addict だったはずなのに最近はすっかり Cocoa に毒されてる人です。

349 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 23:59:36 ]
>>340
俺はコネクションが好きだったから、初めから別に苦ではなかったけど、Interface Builder使いこなしてくるとコネクションの良さがわかってくるよ。バインディグとかformatterとかウインドウ出したり。この辺はVSだとコーディングが必要になるところだと思う。



350 名前:デフォルトの名無しさん mailto:sage [2008/06/23(月) 00:25:49 ]
>>348

VSから移行する人はみんな思うのかもね。
俺もそうだった。
まぁVSと違ってクールなところもあるから。


351 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 00:37:23 ]
>>340
俺も最近マック渡されてcocoa使ってる
しかもそれとおんなじことを先生に言ったww。

確かにVS.netはお金がかかるからね。
でも今必死にcocoaをやってるけど、案外楽しい。

352 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 02:43:26 ]
>>351
まぁ学生は今のうちに好きな環境を使え。
仕事にしたらそうはいかないけど。

353 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 07:24:22 ]
逆じゃね?
学生だからこそ、頭をやわらかくして、どんどんいろんな環境にチャレンジすべし。
一つの環境に馴れ親しむのも大事だけど、それだけじゃ二流だよ。

354 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 21:07:42 ]
バインディング使えば?

355 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 22:07:31 ]
>>351
>先生に言った

いくつかの環境に慣れとけば生存能力も高くなる鴨

356 名前:デフォルトの名無しさん mailto:sage [2008/07/06(日) 22:35:21 ]
@interface ClassA : SuperClass
{
  id hoge;
}
@property hoge;
@end

こんなClassAがあったとして、インスタンスメソッド内で
self->hoge はインスタンス変数に直接アクセスし、
self.hoge はプロパティのアクセサを通してアクセスすると思うのですが、
単にhogeと書けばどっちになるのでしょうか?

357 名前:デフォルトの名無しさん mailto:sage [2008/07/07(月) 00:08:08 ]
>>356
単に hoge は self->hoge と同等。

358 名前:デフォルトの名無しさん mailto:sage [2008/07/07(月) 08:07:57 ]
ありがとうございます。
自分のプロパティへのアクセスにはself.が必須なんですね。

359 名前:デフォルトの名無しさん mailto:sage [2008/07/07(月) 08:58:18 ]
単に hoge だけでプロパティにアクセスされては、
Obj-C 1.0 のコードを 2.0 でコンパイルするとひどいことになるよ。
Obj-C 1.0 では手で

-(id) hage
{
return hage;
}
とか書いていたのと、
Obj-C 2.0 で obj.hage というのは、@property 定義がなくとも
[obj hage] と等価 (ただしくは [obj objectForKey:@"hage"] だけど)
だということをかんがえると、
もしインスタンスメソッド内で hage と書くのが self.hage という意味にしてしまうと、上記アクセッサで無限ループになります。



360 名前:デフォルトの名無しさん [2008/07/07(月) 11:15:42 ]
ちなみに展開したのってどやってみるの?


361 名前:デフォルトの名無しさん mailto:sage [2008/07/07(月) 13:16:46 ]
何を展開する話をしてるの ?

362 名前:デフォルトの名無しさん mailto:sage [2008/07/07(月) 14:35:16 ]
>>361
ObjCのコードじゃない?
それなら objc の -C オプションを付ければ拡張子が .i のファイルに
C のコードに展開された ObjC のコードが見られるよ。

363 名前:デフォルトの名無しさん [2008/07/07(月) 19:13:49 ]
>>359
id a = obj.hage;
って、
id a = [obj hage];
じゃなくて、
id a = [obj objectForKey:@"hage"];
になるの?

364 名前:デフォルトの名無しさん mailto:sage [2008/07/07(月) 23:01:20 ]
ごめん、objectForKey: じゃなくて、valueForKey: だった。
developer.apple.com/jp/documentation/cocoa/Conceptual/ObjectiveC/Articles/chapter_5_section_4.html
とか
developer.apple.com/jp/Documentation/Cocoa/Conceptual/KeyValueCoding/Concepts/SearchImplementation.html
参照。単に setHage:, hage: じゃなくて、KVC されます。

一般に、[obj valueForKey:@"aho"] とすると、
Objc-C ランタイムは aho: , getAho: isAho: というメソッドを探した後、
_aho, _isAho, aho, isAho というインスタンス変数を探します。
だから、obj.aho でも、それだけの候補が探されます。
毎回こんなことやってると遅くてかないませんが、裏でキャッシュしているらしいです。

基本的に、self.aho だとバインディングが動く、self->aho だと動かないということです。

365 名前:デフォルトの名無しさん [2008/07/07(月) 23:10:17 ]
>>364
そういう話じゃなくて、、、
プロパティーって、Objective-C2.0が持ってる機能でしょ?
なぜ、そこでvalueForKey:などの、Cocoaフレームワークのメソッドが出てくるのでしょう?
gccなどのコンパイラが、Cocoaに依存したコードを出力するとは思えないのだが。
リンク先のページにも、そんな事書いてないし。

366 名前:デフォルトの名無しさん mailto:sage [2008/07/07(月) 23:17:43 ]
valueForKey:をCocoa特有のメソッドだという考えをまず捨てねば。
allocやinitだってCocoa特有でないのと一緒。
finalizeが良い例。

367 名前:デフォルトの名無しさん mailto:sage [2008/07/07(月) 23:27:25 ]
まあ実際はこうなんだけど

Key-value coding and declared properties are orthogonal technologies. You
can use KVC whether or not you use properties, and you can use properties
whether or not you use KVC. Both, though, make use of a "dot syntax". In
the case of KVC, the syntax is used to delimit elements in a key path. It
is important to remember that when you directly access a property using the
dot syntax, you invoke the receiver's standard accessor methods (as a
corollary, to emphasize, the dot syntax does not result in invocation of KVC
methods valueForKey: or setValue:forKey:).

368 名前:デフォルトの名無しさん [2008/07/07(月) 23:56:53 ]
>>366
言っていることが、変だよ。
alloc、init、finalizeは、普通にObjective-C言語の一部として定義されてるメソッドです。
逆に、valueForKeyはObjective-Cの一部として定義されていません。
一緒にしてはいけません。

>>367が書いてるとおり、id a = obj.hage; は、id a = [obj hage]; とコンパイルされるよ。

ちなみに英文の日本語訳は、これ↓
developer.apple.com/jp/documentation/Cocoa/Conceptual/ObjectiveC/Articles/chapter_5_section_5.html



369 名前:デフォルトの名無しさん mailto:sage [2008/07/08(火) 00:00:35 ]
>>368
> alloc、init、finalizeは、普通にObjective-C言語の一部として定義されてるメソッドです。
日本語でおk



370 名前:デフォルトの名無しさん [2008/07/08(火) 00:47:08 ]
↑おまえはまずは日本語を勉強した方がいいんじゃないか?

371 名前:デフォルトの名無しさん mailto:sage [2008/07/08(火) 08:13:14 ]
364 ですが、嘘を言ってすいませんでした。

どこまでが Obj-C 2.0の機能かというのは、
Apple 版 GCC 以外に Obj-C 2.0 をまともにコンパイルできるのがないので考えても仕方がないのでは?
NSFastEnumeration とかはどう思うの?


372 名前:デフォルトの名無しさん [2008/07/08(火) 08:45:22 ]
嘘つきはお断り

373 名前:デフォルトの名無しさん mailto:sage [2008/07/08(火) 18:03:58 ]
alloc init が Objective-C言語の一部として定義されてるメソッドと断定している理由は何?

374 名前:デフォルトの名無しさん [2008/07/08(火) 21:07:27 ]
NSFastEnumerationは、それに関連して文法が拡張されてるぐらいだから、ObjC2.0の一部なんじゃない?
あと、インスタンスを生成するときは、[[MyClass alloc] init]ってやるって、決まってるし。これは、Cocoaだからじゃなくて、ObjCだからそういう仕様になってるんです。これらのメソッドは、Objectクラスにも定義されてるし。

>Apple 版 GCC 以外に Obj-C 2.0 をまともにコンパイルできるのがないので考えても仕方がないのでは?
そういう部分もあるけど、Foudationフレームワーク全体がObjCだっていう訳でもないと思うけど。



375 名前:デフォルトの名無しさん mailto:sage [2008/07/08(火) 22:08:59 ]
>>373
それ外したら言語機能の範囲内でオブジェクトが作れなくなってしまわないか。
ANSI-Cみたいな規格がなくて(ないの?)断定は出来んのかもしれんが、alloc
init が言語の一部じゃないってのは考えにくいなぁ。それとも俺が無知なだけ
で言語が定める正統なオブジェクトの作り方が他にあるのかな。


376 名前:デフォルトの名無しさん mailto:sage [2008/07/08(火) 22:24:16 ]
Mac OSXのオブジェクトは、フツーにC言語なCore Foundationで表現されてたかと。
ANSIとかどうでもいいが、規格ある言語をラップして表現する方向で統一してるね
CF自体はwin/linux/fBSDにportingされてるし、Darwinコードにも各OSへのコントリビュータの名前が並んでたり

Cocoaもまた、結構CFをまんまラップして表現してるんだよね
Carbonとの基盤統一のためにやってる事なんだろうけど。

今のOSXではalloc/initは本質的にどっちで表現されてんだろな

377 名前:デフォルトの名無しさん mailto:sage [2008/07/08(火) 22:44:33 ]
OSObjectは?

378 名前:デフォルトの名無しさん mailto:sage [2008/07/08(火) 22:52:08 ]
>>374
そういう曖昧なものを定義としていいの?

>>376
それは実装の話で、規格の話じゃないでしょ?

>>375
だから、Obj-Cではそれすら実装依存なんでしょ?


379 名前:デフォルトの名無しさん mailto:sage [2008/07/08(火) 23:03:30 ]
>>378
>だから、Obj-Cではそれすら実装依存なんでしょ?
どのプラットホーム上でも、オブジェクトの生成にはalloc - initを使う。これが言語仕様だから。
逆に、alloc - init以外でオブジェクトを生成する実装ってあるの?





380 名前:デフォルトの名無しさん mailto:sage [2008/07/08(火) 23:13:12 ]
>>379
それが言語仕様だってどこに書いてるの?
ほかの実装がないから言語仕様なの?

381 名前:デフォルトの名無しさん mailto:sage [2008/07/08(火) 23:39:51 ]
なんだよ、おまえらココアで酔ったか?

382 名前:デフォルトの名無しさん mailto:sage [2008/07/08(火) 23:42:10 ]
そもそも言語仕様の規格とかないんだから現存する「特定の実装の言語仕様」しか
語ることができないような… 議論そのものがナンセンスじゃね?

383 名前:デフォルトの名無しさん mailto:sage [2008/07/08(火) 23:58:59 ]
しようがねえな

384 名前:デフォルトの名無しさん mailto:sage [2008/07/09(水) 00:01:56 ]
ところでこの議論の先には何があるんだ?

385 名前:デフォルトの名無しさん mailto:sage [2008/07/09(水) 00:20:13 ]
>>381
多分そうなんだと思う。
別に今更、Obj-CとApple独自の実装を分けて考えろとは思わないけどさ、

>alloc、init、finalizeは、普通にObjective-C言語の一部として定義されてるメソッドです。
>逆に、valueForKeyはObjective-Cの一部として定義されていません。
>一緒にしてはいけません。
とか言われるとちょっと意地悪してみたくなるじゃない?
君こそ一緒にしてるじゃん?て。

あまつさえ、
>NSFastEnumerationは、それに関連して文法が拡張されてるぐらいだから、ObjC2.0の一部なんじゃない?
>あと、インスタンスを生成するときは、[[MyClass alloc] init]ってやるって、決まってるし。これは、Cocoaだからじゃなくて、ObjCだからそういう仕様になってるんです。これらのメソッドは、Objectクラスにも定義されてるし。
なんて意味不明な事言い出す始末だし。
普通は規約が改定されたからそれにあわせてAppleはNSFastEnumerationを実装して対応した。
って考えるでしょ。
なんで、一部になっちゃうかな?

分けて考えるなら、徹底して分けて考えろって思う訳よ。


書いてるうちに、先書かれちゃった。
問題はそこなんだけどねw >382
ANSIかISOで管理してるって話も聞くんだけど、全く見当たらないんだな、これが。
developer.apple.com/jp/documentation/Cocoa/Conceptual/ObjectiveC/
これだって、Apple実装を例にしたObjective-Cのお勉強資料だしね。

>>384
[self release]; // 自身の解放?

386 名前:デフォルトの名無しさん mailto:sage [2008/07/09(水) 08:01:32 ]
alloc, initで生成と初期化を行うのはただの慣習であってObjCの仕様じゃない。
逆にfinalizeやFast Enumeration系はランタイム側で定義された仕様。

387 名前:デフォルトの名無しさん mailto:sage [2008/07/09(水) 08:21:00 ]
ほんとつまんない事にこだわる奴らだな。
タクシーのエンジンの構造や燃料の効率について、なんも知らなくったって、
運転手さんに行き先を言えば望んだ場所に連れて行ってくれるというのに。

388 名前:デフォルトの名無しさん mailto:sage [2008/07/09(水) 08:30:09 ]
いや、一応ここ専門板だし。俺はもう寝るけど。

389 名前:デフォルトの名無しさん mailto:sage [2008/07/09(水) 08:56:01 ]
>>388
というか、ISO / ECMA 規格がないのにどこまでが言語でどこからがライブラリかという話をしても仕方がないのでは。



390 名前:デフォルトの名無しさん mailto:sage [2008/07/09(水) 09:12:05 ]
多分それでFAだろね

それ以上はAppleがどう認識してるか調べるくらいが関の山かと

391 名前:デフォルトの名無しさん mailto:sage [2008/07/09(水) 13:01:36 ]
コンパイラが認知する部分は言語仕様
ランタイムが認知する部分はランタイム仕様
コンパイラやランタイムを変えなくても変えられる部分は慣習・規約

392 名前:デフォルトの名無しさん mailto:sage [2008/07/09(水) 13:31:57 ]
じゃあ、コンパイラが
@"hogehoge"
でNSStringオブジェクト定数を生成してるわけだから、
NSStringは言語仕様に含まれてるんだ。
NSCFStringだと主張するならNSCFStringもまた言語使用に組み込まれている。


で、まだ続けるの?
もう不可分で良いじゃん。

393 名前:デフォルトの名無しさん mailto:sage [2008/07/09(水) 14:09:41 ]
そうだよ。java.lang.StringがJava言語、System.StringがC#と結びついているのと同じ。特別扱い。

394 名前:デフォルトの名無しさん mailto:sage [2008/07/09(水) 14:22:09 ]
「@"hogehoge"がNSStringだ」というのは言語仕様
NSStringの具体的な中身はライブラリの仕様

395 名前:デフォルトの名無しさん mailto:sage [2008/07/09(水) 14:23:47 ]
じゃあ、コンパイラの不可思議な動作も言語仕様のうちだ。
@"hoge" "fuga" @"hogera";
が正しく連結されたりね。

396 名前:デフォルトの名無しさん mailto:sage [2008/07/09(水) 15:01:25 ]
>>391
Obj-C のどこからどこまでが言語仕様かという話をするために、
>コンパイラが認知する部分は言語仕様
というわけだけど、
「コンパイラが認知する部分」は「言語仕様」という定義をしてるのは誰?


397 名前:デフォルトの名無しさん mailto:sage [2008/07/09(水) 15:05:08 ]
>>394
>@"hogehoge"がNSStringだ」というのは言語仕様
そうだったのかー。じゃあ GNU実装の gcc -fconstant-string-class オプションでの
文字列リテラルクラスの変更は言語仕様違反ですね…
-fconstant-string-classのデフォルトは NXConstantString だから変更しなくてもやっぱり
言語仕様違反ですか…GNUの実装はひどいですねー
# その言語仕様とやらがどこに存在してるのか知らんけどw

398 名前:デフォルトの名無しさん mailto:sage [2008/07/09(水) 15:27:08 ]
>>397
それは間違いでしょ?
だって、「コンパイラが認知する部分は言語仕様」とされている訳だから、
Apple拡張されていないgccのコンパイラが認知するものだって言語仕様だよ。
つまりObj-Cの言語仕様はコンパイラの数だけあるってことでしょ。

399 名前:デフォルトの名無しさん mailto:sage [2008/07/09(水) 15:30:23 ]
ほんとは実装依存って言うんだろうけど

皮肉に皮肉で返しあってgdgd



400 名前:デフォルトの名無しさん mailto:sage [2008/07/09(水) 15:32:58 ]
             /ヽ       /ヽ
            /  ヽ      /  ヽ
  ______ /     ヽ__/     ヽ
  | ____ /           :::::::::::::::\
  | |       //       \  :::::::::::::::|
  | |       |  ●      ●    ::::::::::::::| ・・・
  | |      .|             :::::::::::::|
  | |       |   (__人__丿  .....:::::::::::::::::::/
  | |____ ヽ      .....:::::::::::::::::::::::<
  └___/ ̄ ̄       :::::::::::::::::::::::::|
  |\    |            :::::::::::::::::::::::|
  \ \  \___       ::::::::::::::::::::::::|


401 名前:デフォルトの名無しさん mailto:sage [2008/07/09(水) 15:44:38 ]
>>398
>コンパイラの数
Obj-CのコンパイラってAppleのgcc,GNUのgccとPOCぐらいだろ

402 名前:デフォルトの名無しさん mailto:sage [2008/07/09(水) 15:47:38 ]
>>401
それに何の問題が?

403 名前:デフォルトの名無しさん mailto:sage [2008/07/09(水) 16:44:53 ]
しょうもない話題をいつまでひっぱってんだ

404 名前:デフォルトの名無しさん mailto:sage [2008/07/09(水) 18:45:14 ]
alloc と init がObjective-C 言語仕様に規定されているという人がいるからしようがない。
もしくは、
Objective-Cの言語仕様はそのコンパイラが規定すると言い張る人がいるからどうしようもない。


Objective-Cには公開された言語仕様が存在しない。
ってことをどうして認めようとはしないの?

それとも僕はとんでもない勘違いをしていて、
これこれは言語仕様と断言している人たちは、
非公開な言語仕様を閲覧できる立場の人たちなの?

405 名前:デフォルトの名無しさん mailto:sage [2008/07/09(水) 19:08:29 ]
標準規格がない言語には言語仕様がないと?

406 名前:デフォルトの名無しさん mailto:sage [2008/07/09(水) 20:30:53 ]
さすがにもう飽きてきた。w
>405
じゃあそれ、これこれは言語仕様です。これこれは違います。
って自信満々に言ってる人に言っといて。
標準がないのにそんな自信たっぷりに言われてもねぇ、って。

407 名前:デフォルトの名無しさん mailto:sage [2008/07/09(水) 21:23:01 ]
皆さん熱弁を振るってますが、
「どこからが美人でどこまでがブスか。」
という議論に近い不毛なものを感じますた。
以上、通りすがりの私の感想でした。

408 名前:デフォルトの名無しさん mailto:sage [2008/07/09(水) 22:37:47 ]
だよな
どこからAPIの機能でどこから言語の規格が議論して何か意味あるのかね。
C++でもAPIがなけりゃ文字列処理もでない屑言語だが

409 名前:デフォルトの名無しさん mailto:sage [2008/07/09(水) 23:45:04 ]
>>405
> 標準規格がない言語には言語仕様がないと?
そりゃ標準規格がない言語には、どこまでが標準言語仕様でどこからが標準ライブラリでどこからが独自ライブラリかの違いなんてないだろうよ
アホ?



410 名前:デフォルトの名無しさん mailto:sage [2008/07/10(木) 00:14:55 ]
標準ライブラリも含めて言語仕様でしょ
NSObjectがなければ何もできないんだから

411 名前:デフォルトの名無しさん mailto:sage [2008/07/10(木) 00:23:09 ]
「仕様」を「規約」と解釈する人と「実装の裏にある本質」と解釈する人が争ってる感じ

412 名前:デフォルトの名無しさん mailto:sage [2008/07/10(木) 08:59:06 ]
この流れは…iPhoneのお陰かな。

413 名前:デフォルトの名無しさん mailto:sage [2008/07/10(木) 09:03:29 ]
>>410
NS〜は「de fact」標準ライブラリです。

414 名前:デフォルトの名無しさん mailto:sage [2008/07/10(木) 09:11:29 ]
>>413
de facto ですよ正しい綴りは。

415 名前:デフォルトの名無しさん mailto:sage [2008/07/10(木) 09:15:43 ]
>>414
どうも。

416 名前:デフォルトの名無しさん mailto:sage [2008/07/10(木) 16:04:21 ]
>>410
objc/Objectじゃだめですか><

417 名前:デフォルトの名無しさん mailto:sage [2008/07/10(木) 17:17:44 ]
>>411
仕様は仕様でしょ?
それがあって始めてApple方言とかGNU方言とか言える訳で。
一番近いのは、
developer.apple.com/jp/documentation/Cocoa/Conceptual/ObjectiveC/Articles/chapter_951_section_1.html
これ。文書全体じゃなくてこの章だけね。

>>412
おれは茶化してるだけのCocoaがなかったら死ぬタイプの人間ですw

418 名前:デフォルトの名無しさん mailto:sage [2008/07/10(木) 17:33:50 ]
developer.apple.com/jp/documentation/Cocoa/Conceptual/ObjectiveC/Articles/chapter_950_section_1.html
こっちもそうだった。
こっちはコンパイラのディレクティブのところにNSStringと明記されてる。
これが要求仕様なのかどうかは不明。

419 名前:デフォルトの名無しさん [2008/07/10(木) 17:48:03 ]
アップルは、Objective-CとCocoaを別々に開発している。
当然、仕様も別々に存在している。
特に、Objective-Cに関しては、Darwinプロジェクトの中で開発されているのだから、どこまでがObjective-Cなのかは明確になっているんじゃないのか?
Objective-Cの仕様に合わせてCocoaを作る事はできても、Cocoaの仕様に合わせてObjective-Cを作ることはできないのだから。



420 名前:デフォルトの名無しさん mailto:sage [2008/07/10(木) 23:13:07 ]
>>419
アップルにしてみればObjective-Cの言語仕様とCocoaライブラリの境界をはっきりさせなくても別に困りはしないでしょ。OpenDarwinも終わっちゃったし。

>Objective-Cの仕様に合わせてCocoaを作る事はできても、Cocoaの仕様に合わせてObjective-Cを作ることはできないのだから。
Objective-C文字列リテラル、メッセージの転送、例外処理、@synchronized、ObjC 2.0のプロパティ、高速列挙。Cocoaを前提とした機能はずいぶんと追加されてるよ。

421 名前:デフォルトの名無しさん mailto:sage [2008/07/10(木) 23:27:38 ]
>当然、仕様も別々に存在している。
その自信はどこから来るわけ?
Apple 社員で社外秘の仕様をみられるというの?
社外秘の仕様があるばあいは社外の人には仕様はあることになるのないことになるの?






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<212KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef