Objective-C

このエントリーをはてなブックマークに追加
952デフォルトの名無しさん:2007/07/19(木) 09:40:00
>>947
先にC++だったけどC++使ってると違和感を感じる
やっぱりObjective-Cの方がいいよ
953デフォルトの名無しさん:2007/07/19(木) 09:50:28
>先にC++だったけどC++使ってると違和感を感じる

これって、MFCじゃね?
MFCとCocoaを比較したらCocoaがマシかもしれない。
でもMFCのトンデモ設計とちょーサイアクGUIビルダーよりましといった事に意味は無い。
954デフォルトの名無しさん:2007/07/19(木) 22:22:06
何で C++ == MFC だと思ったのかな?
955デフォルトの名無しさん:2007/07/20(金) 02:14:36
かな?
956デフォルトの名無しさん:2007/07/20(金) 08:50:11
だって、C++Builderなんて使ったらCocoaの変にIDEにコントロールされて
逆にMVCを開発者側が制御できない変なもの使ってられないよ。
MVCを変に制御して困るものでC++といえばMFC。
957デフォルトの名無しさん:2007/07/20(金) 09:52:47
どっからMVCなんて出てきたんだか。
958デフォルトの名無しさん:2007/07/20(金) 10:20:20
959デフォルトの名無しさん:2007/07/27(金) 20:00:51
日本語でok って言うトコロなんだと思う
960デフォルトの名無しさん:2007/08/06(月) 11:22:30
プロトコルと抽象クラスってどういう風に使い分ければ良いのよ
961デフォルトの名無しさん:2007/08/06(月) 12:07:29
Objective-C 2.0 には抽象クラスがあるの?
962デフォルトの名無しさん:2007/08/06(月) 12:32:23
いや、言語仕様にはないけどさ…
963デフォルトの名無しさん:2007/08/07(火) 10:38:33
どっちも使わない。ふつうは informal protocol というか単にセレクタの名前を取り決めておくだけ
964デフォルトの名無しさん:2007/08/07(火) 11:05:51
もうObjective-C廃止にしない?

Mac OS XとC++でポトペタ開発しようよ。
965デフォルトの名無しさん:2007/08/07(火) 11:14:55
C++なんてクソ言語使ってられるかっつーの
966デフォルトの名無しさん:2007/08/07(火) 12:01:59
というか Interface Builder はポトペタの元祖なのでは?まあ癖はあるような気がするけど。バインディング可なパレットきちんと作っておくと殆ど IB だけで出来るべ
967デフォルトの名無しさん:2007/08/07(火) 12:07:23
出来るってだけで、GUIの凝ったコントロールを作る事が不可能だお。
968デフォルトの名無しさん:2007/08/07(火) 12:49:00
ポトペタってなんですか><
インターフェースビルダーよりどこが凄いのか押しえて下さい!!!!
969デフォルトの名無しさん:2007/08/07(火) 13:03:28
コンポーネントを派生して、差分コーディングで処理を足して、画面に"ポトペタ"貼る事でつよ。
他人のハイパーなコンポーネント使ったり、ネットに派生コンポーネントが溢れたりするお。
970デフォルトの名無しさん:2007/08/07(火) 13:16:29
それはまさに IB でパレットから D&D して、カスタムクラスを設定することだとおもうんだけど、どっか違うの?
Apple が提供してる以外の新規パレット自体をつくることもできるよ。
http://www.bignerdranch.com/palettes/

確かにネット上にカスタムパレットが溢れてはいないが ...
971デフォルトの名無しさん:2007/08/07(火) 13:26:51
派生前クラスのソースコードって公開されてる?
やっぱ、クラス派生する場合にはそれが無いとスゲー足かせだお。
972デフォルトの名無しさん:2007/08/07(火) 14:07:21
というか、Cocoa のプログラミングは
1) view はパレットから D&D してカスタムクラス
2) controller も最近はバインディング用のをパレットから D&D
3) model は手で書いても良いし、CoreData でも良い
だとおもうんだけど。

Apple 提供のパレットはソースコードは流石にないよ。でもドキュメントは(英語なら)完備してる。まあ GNUStep が 8割方再実装してるから読みたけりゃよめばいいけど。

ネットにころがってるのは、そもそも数が少ないけども、ころがってるやつはソースも配ってると思うよ

あと、Objective-C はカスタムクラスが面倒だったら、元クラスのソースコードもってなくても元クラスにメソッドを追加できるよ。これは非常に便利。
973デフォルトの名無しさん:2007/08/07(火) 14:12:17
>1) view はパレットから D&D してカスタムクラス

やっぱ、そうだよね。

プロジェクトと強く結びついたカスタムクラスであって、
クラスライブラリのベースクラスが派生したハイパークラスで溢れる、
というイメージじゃないだよね。
974デフォルトの名無しさん:2007/08/07(火) 14:21:49
別にプロジェクトと強く結びついてんくても良いんだけど。
975デフォルトの名無しさん:2007/08/07(火) 14:25:37
まあハイパークラスなんて配られてないからね。
Apple 謹製の NSTextView, WebView は充分 Hyper な気がするけど。

あと、Cocoa ではクラス派生をする前に大抵の処理は delegate で済む気もする。
(コントローラが標準 view の機能を拡張できるみたいなかんじ)

ポトペタでハイパーなコンポーネントののってるページの例をなんか URL おしえてください
976デフォルトの名無しさん:2007/08/07(火) 14:33:25
977デフォルトの名無しさん:2007/08/08(水) 00:43:11
o ひとつめの URL にあがってるような機能は Cocoa /Carbon API にある気がする
o ふたつめのにはいっぱいカスタム GUI コントロールがのってるけど、
あんまり Apple はカスタムコントロールをつくるのは推奨してない気がするし、
そういうことすると OS X ぽくないソフトになりがちで嫌われがちだと思われる
978デフォルトの名無しさん:2007/08/08(水) 00:45:43
http://shiira.jp/hmblkappkit/

こういうカッコいいコントロールもあるよ。まあ Apple がまだ公開してない API を再実装した奴だけど、Interface Builder でふつうに配置してクラスの名前をこれにかえるだけで使える
979デフォルトの名無しさん:2007/08/08(水) 01:38:51
MacのプロアプリのようなUIにしたければカスタムするしかないよね。
スライダーとか機能的にも不十分だしIBにあるパーツだけじゃ足りなくなってきたからパーツの作り方勉強しなきゃ。
980・∀・)っ-○◎●:2007/08/08(水) 02:12:08
リストボックスをオーナーデータ化するにはどーすりゃいいんだ?
981デフォルトの名無しさん:2007/08/08(水) 08:48:20
>あんまり Apple はカスタムコントロールをつくるのは推奨してない気がするし、

これが今の時代の開発ではネック。

>そういうことすると OS X ぽくないソフトになりがちで嫌われがちだと思われる

だからコントロールを派生して元々OS Xの描画の上に描画を足したり処理を足したりするわけじゃん。
982デフォルトの名無しさん:2007/08/08(水) 11:16:36
>>979
ProKitでなんとかなるかもしれないけど。
983デフォルトの名無しさん:2007/08/08(水) 11:40:52
>>981
まあ確かに、機能豊富で、ちゃんと Cocoa の window にマッチするパレット集が一杯おちてたら便利だろうね。
もうちっとデヴェロッパ層が厚くならないとだめかな。
984デフォルトの名無しさん:2007/08/08(水) 12:11:56
ええと、そろそろCocoaスレに行ってくれません?
985デフォルトの名無しさん:2007/08/08(水) 12:20:11
>>978
この黒パネルはLeopardのIBで実装されてる。
986デフォルトの名無しさん:2007/08/08(水) 12:25:15
987デフォルトの名無しさん:2007/08/08(水) 12:29:14
>>984
Cocoa の話が駄目とすると GNUStep も駄目?
988デフォルトの名無しさん:2007/08/08(水) 12:37:22
漢は黙って objc/Object.h をインポート
989デフォルトの名無しさん:2007/08/08(水) 13:39:09
>987
AppleがCocoaで新たに組み込んだ関係がうぜ〜って事じゃね?
IBの話すんならGORMの話しろや!ってきっといいたいに違いないと思ってるのだが(w

あ,クラスライブラリはどうでもいい言語そのものの話をしたいって人だったのかも>984
990デフォルトの名無しさん:2007/08/08(水) 14:22:59
OOP言語ならクラスライブラリと切り離して話できんわ。
991デフォルトの名無しさん:2007/08/08(水) 15:24:09
そこでObjective-C標準クラスであるObjectを…
992デフォルトの名無しさん:2007/08/08(水) 18:27:56
Object.hと同じディレクトリにList.hってのもあるんだけど、
ListもObjective-Cの標準クラス?
993デフォルトの名無しさん:2007/08/08(水) 22:29:02
純粋に Objective-C の話ってなかなか難しいのでは ...
Apple の独自拡張も多いし。

Object と NSObject がどっちが「標準」かというと、
一社/一グループの実装だけじゃなくて、
標準を定めた文書が別個に存在するかという意味では
Openstep のほうが「標準化」されているのではないかと思わなくもない

GCC もせめて GNUStep の non-GUI 部分を一緒に配布してくれればいいのに。
994デフォルトの名無しさん:2007/08/08(水) 22:38:23
基本Java厨で、現在C++で食っていきながら、
Rubyが一番好きかも知れないという俺ですが、
Objective-Cに興味を持っています。
他のOOPLとくらべてどうでしょうか。
メリットとかデメリットとか。
995デフォルトの名無しさん:2007/08/08(水) 22:44:25
実際に運用する上で言語使用だけを他の OOPL とくらべるのは難しい...
Cocoa つかうぶんには非常に便利ですよ。
RubyCocoa も Leopard から標準になるので Ruby が
いいならそれでいいけれども、API の仕組みはかなり Objective-C に影響されているので、
RubyCocoa を使うための基礎として Obj-C を学ぶのは悪くないと思う

GNUStep はちゃんとつかったことがないのですいません

C++ を知っているひとのための、C++ と Obj-C の文法の比較は
http://ktd.club.fr/programmation/fichiers/cpp-objc-en.pdf
が簡単にまとまってる。英語だけど。
996デフォルトの名無しさん:2007/08/08(水) 22:49:00
>>994
CとJavaが使えるなら30分で覚えられるからとりあえず使ってみれ
997デフォルトの名無しさん:2007/08/08(水) 22:51:58
ご丁寧にどうもありがとうございます!!
Cocoa使ってウハウハにも興味はあるんです。
Win32でどうのこうのに飽きちゃってですね。
言語としても興味津々なんでリンク先熟読します。
998デフォルトの名無しさん:2007/08/08(水) 22:52:59
>>996 やってみます!

で、998ゲットォ!!
999デフォルトの名無しさん:2007/08/08(水) 22:55:59
そういう興味のある人なら Apple のこのあたり

Objective-C Language
http://developer.apple.com/documentation/Cocoa/Conceptual/ObjectiveC/index.html

Cocoa Fundamentals Guide
http://developer.apple.com/documentation/Cocoa/Conceptual/CocoaFundamentals/index.html

が面白いかも。あと他にもいっぱいあるよ:
http://developer.apple.com/documentation/Cocoa/index-date.html

いや、GNUStep にリンクはらんで済まんね ...
1000デフォルトの名無しさん:2007/08/08(水) 23:03:19
次スレ立てました
Objective-C Part3
http://pc11.2ch.net/test/read.cgi/tech/1186581730/
次スレでもみんなよろしく〜
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。