Objective-C(オブジェクティブ シー)はプログラミング言語の一種。C言語をベースにSmalltalk型のオブジェクト指向機能を持たせた上位互換言語。
(Wikipedia:http://ja.wikipedia.org/wiki/Objective-C より)
前スレ
Objective-C [ObjC part:8];
http://peace.2ch.net/test/read.cgi/tech/1356341803/
Objective-C [ObjC part:7];
http://toro.2ch.net/test/read.cgi/tech/1330330906/
Objective-C [ObjC part:6];
http://toro.2ch.net/test/read.cgi/tech/1313891268/
Objective-C [ObjC part:5];
http://hibari.2ch.net/test/read.cgi/tech/1279730299/
Objective-C [ObjC part:4];
http://pc12.2ch.net/test/read.cgi/tech/1239721860/
Objective-C [ObjC part:3];
ttp://pc12.2ch.net/test/read.cgi/tech/1186543111/
Objective-C
ttp://pc11.2ch.net/test/read.cgi/tech/1106983092/
Objective-C
ttp://pc5.2ch.net/tech/kako/990/990574267.html
Objective-C [ObjC part:8.1]; [転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
2014/11/01(土) 13:35:17.70ID:12FSUUrY
686デフォルトの名無しさん
2017/08/06(日) 17:28:11.19ID:uZylSw7t >>665
お前、ObjC使ってるのに[や]を使わないのかよwww面白いなwww
お前、ObjC使ってるのに[や]を使わないのかよwww面白いなwww
687デフォルトの名無しさん
2017/08/06(日) 17:37:29.52ID:uZylSw7t >>675
C++が全く同じこと出来てるんだよねぇ
常に動的ディスパッチという点は実現してないけども
まぁC++の機能をモダン()に文法ラップした言語がObjCだから当然なんだよな
変態文法でC使ってると取っ掛かりは辛いけど、まぁ慣れれば使えなくはない言語よ
C++が全く同じこと出来てるんだよねぇ
常に動的ディスパッチという点は実現してないけども
まぁC++の機能をモダン()に文法ラップした言語がObjCだから当然なんだよな
変態文法でC使ってると取っ掛かりは辛いけど、まぁ慣れれば使えなくはない言語よ
688デフォルトの名無しさん
2017/08/06(日) 17:57:03.87ID:5hrgPajG689デフォルトの名無しさん
2017/08/06(日) 18:06:37.63ID:h75sRnvC >>688
その辺は悪意を持って追求した事無いけど、やり方は色々あるだろうね
その辺は悪意を持って追求した事無いけど、やり方は色々あるだろうね
690デフォルトの名無しさん
2017/08/06(日) 18:08:19.22ID:5hrgPajG >>687
Objective-CとC++でほぼ同時期に独立して開発されたんじゃなかったっけ
Objective-CとC++でほぼ同時期に独立して開発されたんじゃなかったっけ
691デフォルトの名無しさん
2017/08/06(日) 18:09:36.01ID:5hrgPajG >>689
仮にセレクタ文字列がそのまま一意にマシン語にコーディングされてるとなると、なんかJavaのバイトコードみたいで微妙だなぁ
仮にセレクタ文字列がそのまま一意にマシン語にコーディングされてるとなると、なんかJavaのバイトコードみたいで微妙だなぁ
692デフォルトの名無しさん
2017/08/06(日) 18:35:06.60ID:0XdHuxlK693デフォルトの名無しさん
2017/08/06(日) 18:54:49.85ID:0XdHuxlK >>678
そのせいではなくて、単に速度やコードの重さからだろう。言っているのはIOKitのことか?カーネルの部分ではC++でさえなくCだし
Objective-Cのその部分でナニかあったというのは聞いたことは無いなあ。なぜかw
フックするのは簡単だが、フックするコードが活性化するのは簡単じゃないし。まあまだ簡単ぽいのは閉じる生きづらい方向にはしているけど
そのせいではなくて、単に速度やコードの重さからだろう。言っているのはIOKitのことか?カーネルの部分ではC++でさえなくCだし
Objective-Cのその部分でナニかあったというのは聞いたことは無いなあ。なぜかw
フックするのは簡単だが、フックするコードが活性化するのは簡単じゃないし。まあまだ簡単ぽいのは閉じる生きづらい方向にはしているけど
694デフォルトの名無しさん
2017/08/06(日) 19:09:48.12ID:5hrgPajG >>693
すまん日本語で頼むわ
すまん日本語で頼むわ
695デフォルトの名無しさん
2017/08/06(日) 19:34:46.57ID:0XdHuxlK696デフォルトの名無しさん
2017/08/06(日) 19:36:00.87ID:5hrgPajG >>695
>まあまだ簡単ぽいのは閉じる生きづらい方向にはしているけど
>まあまだ簡単ぽいのは閉じる生きづらい方向にはしているけど
697デフォルトの名無しさん
2017/08/06(日) 19:47:33.45ID:0XdHuxlK >>696
ああ
前のはIM plugin(だったけ)で簡単に、それが閉じられてScriptプラグインでとか。それもrootlessになってrootless解除してからじゃなきゃという、
(ある意味)まっとうなプロダクトであるSIMBLが/を使えるようにするのがめんどくさくなってるというのが代表的かな
ああ
前のはIM plugin(だったけ)で簡単に、それが閉じられてScriptプラグインでとか。それもrootlessになってrootless解除してからじゃなきゃという、
(ある意味)まっとうなプロダクトであるSIMBLが/を使えるようにするのがめんどくさくなってるというのが代表的かな
698デフォルトの名無しさん
2017/08/06(日) 20:19:06.33ID:uZylSw7t699デフォルトの名無しさん
2017/08/06(日) 20:22:06.82ID:0XdHuxlK700デフォルトの名無しさん
2017/08/06(日) 20:27:26.94ID:5hrgPajG お前ら何を言い合ってるんだよ。。
701デフォルトの名無しさん
2017/08/06(日) 20:28:29.68ID:0XdHuxlK >>698
メッセージ式だのObjective-C固有/追加された部分があるから、Objective-CをCにコピペってもCコンパイラが理解できるわけないじゃん。んなこと言うのもなんか恥ずかしいw当たり前のことをさも言うのはナニもわかってないんだろな
(そうでないからCじゃなーいとか言いそう/言いたいのかもだが)
っていうのがそもそもの意味なんだが。なんでそんなトンチンカンすぎるキモい絡み方を続ける意味がわからん。同一人物だったらありそうだがww
これ以上イミフすぎのレスするなら、真性とみなすぞ
メッセージ式だのObjective-C固有/追加された部分があるから、Objective-CをCにコピペってもCコンパイラが理解できるわけないじゃん。んなこと言うのもなんか恥ずかしいw当たり前のことをさも言うのはナニもわかってないんだろな
(そうでないからCじゃなーいとか言いそう/言いたいのかもだが)
っていうのがそもそもの意味なんだが。なんでそんなトンチンカンすぎるキモい絡み方を続ける意味がわからん。同一人物だったらありそうだがww
これ以上イミフすぎのレスするなら、真性とみなすぞ
702デフォルトの名無しさん
2017/08/06(日) 20:29:43.72ID:0XdHuxlK >>700
しらんwwまったくわからん。そりゃお前にもそう見えてもしょうがないww
しらんwwまったくわからん。そりゃお前にもそう見えてもしょうがないww
703デフォルトの名無しさん
2017/08/06(日) 20:30:22.17ID:m6etrNEf オブシー使ってるやつはキチガイってよくわかるスレ
704デフォルトの名無しさん
2017/08/06(日) 20:32:05.49ID:5hrgPajG >>703
世界中にどんだけキチガイがいるんだよ。。。
世界中にどんだけキチガイがいるんだよ。。。
705デフォルトの名無しさん
2017/08/06(日) 20:33:41.03ID:h75sRnvC キチガイは褒め言葉だぞ
706デフォルトの名無しさん
2017/08/06(日) 20:34:37.21ID:uZylSw7t ObjCコードがCコードにコピペできるって愉快な信者をからかって遊んでる
多分、NSLogとかのC関数だけ使って
NSObject *object = [NSObject new];
なんて[]を使うコードは書かない変態なんだよ
やっぱりObjC信者は変態ばかりだな(褒め言葉
多分、NSLogとかのC関数だけ使って
NSObject *object = [NSObject new];
なんて[]を使うコードは書かない変態なんだよ
やっぱりObjC信者は変態ばかりだな(褒め言葉
707デフォルトの名無しさん
2017/08/06(日) 20:38:13.55ID:5hrgPajG まあなんだろうな
conventionalなC言語のソースコードはObjective-Cのソースコードでもある
なぜならObjective-CはCの純粋なスーパーセットだから
conventionalなC言語のソースコードはObjective-Cのソースコードでもある
なぜならObjective-CはCの純粋なスーパーセットだから
708デフォルトの名無しさん
2017/08/06(日) 20:40:19.87ID:0XdHuxlK >>706
はあ?遊んでるww
「読めない」のはわかったし、それはしょうがないし特にとは思わないが、そこまでんなこと言った覚えは全く無いことをさもなのは自分の脳内で閉じてるという真性に近しい人でしかないと思うぞ。なんの為にレスしてんだか…そか、真性だからか?w
はあ?遊んでるww
「読めない」のはわかったし、それはしょうがないし特にとは思わないが、そこまでんなこと言った覚えは全く無いことをさもなのは自分の脳内で閉じてるという真性に近しい人でしかないと思うぞ。なんの為にレスしてんだか…そか、真性だからか?w
709デフォルトの名無しさん
2017/08/06(日) 20:42:18.48ID:uZylSw7t >>701
でだ、元々はCとObjCが全然違うもので、CやってたからってObjCが素直に慣れられるものじゃないって話をしてたわけでな
その話の流れを見てないで、「ObjCがCにコピペできるわけない」の部分だけ取り上げて云々ってのは話がズレてるわけよ
そのズレを笑いどころにネタを振ってくれてるんじゃないの?本気でそこを指摘してるの?
でだ、元々はCとObjCが全然違うもので、CやってたからってObjCが素直に慣れられるものじゃないって話をしてたわけでな
その話の流れを見てないで、「ObjCがCにコピペできるわけない」の部分だけ取り上げて云々ってのは話がズレてるわけよ
そのズレを笑いどころにネタを振ってくれてるんじゃないの?本気でそこを指摘してるの?
710デフォルトの名無しさん
2017/08/06(日) 20:42:20.49ID:0XdHuxlK >>707
元々はCのプリコンパイラでなかったっけ?
確か、今でも、Objective-CのソースからCのソースを捌けるはず。なので、CでObjective-Cクラス/機能をバリバリ扱えないこともない。それをするのは人間業ではないけど
元々はCのプリコンパイラでなかったっけ?
確か、今でも、Objective-CのソースからCのソースを捌けるはず。なので、CでObjective-Cクラス/機能をバリバリ扱えないこともない。それをするのは人間業ではないけど
711デフォルトの名無しさん
2017/08/06(日) 20:45:20.71ID:0XdHuxlK >>709
お前にとってはそうかもしれないが、そんな当たり前すぎることを言うこと自体がって話だよ。普通は言わないと思うぞ。んなこというヤツの知性が疑われるからな
で、お前が言う元々の話も、お前はそうかもしれないでしかない。Objevtive-Cのよほど初心者の本でなければ、Cを知っているのが前提だからな。お前の論で言えばCを知っているのが前提ってありえないだろう
お前にとってはそうかもしれないが、そんな当たり前すぎることを言うこと自体がって話だよ。普通は言わないと思うぞ。んなこというヤツの知性が疑われるからな
で、お前が言う元々の話も、お前はそうかもしれないでしかない。Objevtive-Cのよほど初心者の本でなければ、Cを知っているのが前提だからな。お前の論で言えばCを知っているのが前提ってありえないだろう
712デフォルトの名無しさん
2017/08/06(日) 20:51:12.38ID:A+R4LQxw >>706
NSLogはC言語の関数ではないだろう!
Objective-Cのグローバル関数。
書式文字列なんて、C言語とは全く別。%@とか。
引数も、Objective-Cのインスタンスが必要。
@“OK”とか!
NSLogはC言語の関数ではないだろう!
Objective-Cのグローバル関数。
書式文字列なんて、C言語とは全く別。%@とか。
引数も、Objective-Cのインスタンスが必要。
@“OK”とか!
713デフォルトの名無しさん
2017/08/06(日) 20:52:15.75ID:A+R4LQxw >>712
ぁぁ、間違えた。@“OK”はNSStringのインスタンスね。
ぁぁ、間違えた。@“OK”はNSStringのインスタンスね。
714デフォルトの名無しさん
2017/08/06(日) 20:54:43.07ID:/dqOVGNE 久々にObjective-Cでググったらこんなページが
http://qiita.com/koher/items/4aea541fd0f0d8a9a166
こんなあからさまに臭いことするからSwiftはゴリ押しとかいわれるんだよな..
http://qiita.com/koher/items/4aea541fd0f0d8a9a166
こんなあからさまに臭いことするからSwiftはゴリ押しとかいわれるんだよな..
715デフォルトの名無しさん
2017/08/06(日) 20:57:10.69ID:A+R4LQxw おっと、NSLogってのはFoundation Functionってカテゴロリに分類されてるね。
NSAssert, NSLogvとかと同じなかまかぁ。あまり意識した事なかったけど。
NSAssert, NSLogvとかと同じなかまかぁ。あまり意識した事なかったけど。
716デフォルトの名無しさん
2017/08/06(日) 21:00:36.71ID:5hrgPajG >>712
その話は微妙なところだな
ある意味でObjective-Cたらしめてる部分でもあるんだが、関数はCといってもいいんじゃないだろうか
まあCはObjective-Cに完全に内包されているのでObjective-Cの関数という表現も正しいと思うが
結局引数としてわたされるのはNSStringのオブジェクトであるとはいえ実態はただのポインタな訳で、ポインタを引数にとるただのC関数とも言える
その話は微妙なところだな
ある意味でObjective-Cたらしめてる部分でもあるんだが、関数はCといってもいいんじゃないだろうか
まあCはObjective-Cに完全に内包されているのでObjective-Cの関数という表現も正しいと思うが
結局引数としてわたされるのはNSStringのオブジェクトであるとはいえ実態はただのポインタな訳で、ポインタを引数にとるただのC関数とも言える
717デフォルトの名無しさん
2017/08/06(日) 21:02:32.09ID:5hrgPajG >>710
まあObjectiveな部分の記述はコンパイラディレクティブを使って分離してるからね
まあObjectiveな部分の記述はコンパイラディレクティブを使って分離してるからね
718デフォルトの名無しさん
2017/08/06(日) 21:04:51.33ID:0XdHuxlK >>712
まあ、インターフェースがCなんだからCでええやん。CoreもCじゃないとか言うと、pure C (?)と C がごっちゃすぎ。まあ元々は pure C のことを言い出してるっぽいが、本人自体があやふやなので…w
>>714
なんか前に読んだことある
>nil に対するメソッドコールはエラーにならずに無視されるという悪しき仕様
ってとこで、ああ、この人は「そういうコード書く人」なんだなと。読むに値しないと判断したので、そんな単に個人のご意見に「臭いとかゴリ押し」とか噛み付くほどでも無いだろう
(「そういう〜」というのは、逐次nilか注意してないでコードを書く人。意識してたら普通にその動作で問題無いのだがな)
まあ、インターフェースがCなんだからCでええやん。CoreもCじゃないとか言うと、pure C (?)と C がごっちゃすぎ。まあ元々は pure C のことを言い出してるっぽいが、本人自体があやふやなので…w
>>714
なんか前に読んだことある
>nil に対するメソッドコールはエラーにならずに無視されるという悪しき仕様
ってとこで、ああ、この人は「そういうコード書く人」なんだなと。読むに値しないと判断したので、そんな単に個人のご意見に「臭いとかゴリ押し」とか噛み付くほどでも無いだろう
(「そういう〜」というのは、逐次nilか注意してないでコードを書く人。意識してたら普通にその動作で問題無いのだがな)
719デフォルトの名無しさん
2017/08/06(日) 21:07:13.58ID:5hrgPajG >>715
カテゴロリwww
カテゴロリwww
720デフォルトの名無しさん
2017/08/06(日) 21:26:34.09ID:uZylSw7t >>711
うーん、論旨が変わってしまってネタが分からなくなってしまった, >>709のマジレスをなかったことにしたい
何かが間違っていてアホ(失礼)にあたるというツッコミ?ボケ?(>>665)で、それが「ObjCのコードはC上にコピペでは全然動かない」じゃなかったのかいな
純粋なCをちゃんと使ってた人ほど文法がゴロっと変わるObjCは辛い、が当たり前のことでそれが誰かの失礼に当たる?
まー、当たり前のことでもいいんだけど、それじゃObjCを擁護出来てないからそう言う意見じゃないよな
・Cの文法とObjCの(変態)文法は全然別物である
・純粋なCをやっているとObjC文法は素直に習得できる
この二つを矛盾せずObjC擁護してくれるとありがたいんだが出来そうかね
うーん、論旨が変わってしまってネタが分からなくなってしまった, >>709のマジレスをなかったことにしたい
何かが間違っていてアホ(失礼)にあたるというツッコミ?ボケ?(>>665)で、それが「ObjCのコードはC上にコピペでは全然動かない」じゃなかったのかいな
純粋なCをちゃんと使ってた人ほど文法がゴロっと変わるObjCは辛い、が当たり前のことでそれが誰かの失礼に当たる?
まー、当たり前のことでもいいんだけど、それじゃObjCを擁護出来てないからそう言う意見じゃないよな
・Cの文法とObjCの(変態)文法は全然別物である
・純粋なCをやっているとObjC文法は素直に習得できる
この二つを矛盾せずObjC擁護してくれるとありがたいんだが出来そうかね
721デフォルトの名無しさん
2017/08/06(日) 21:26:49.45ID:6obaa7Zo >>693
まぁIOKitもそうだけど
内部でC++は結構使ってるよね
KEXTだってKernel EXTensionなんだからカーネルと言ってもいんじゃん?
少しでも拡張性を持ってかつハックされたくない所のライブラリとかC++使わざるおえない感じを受けたよ
てかmac自体初期から組み込みの色が強いからC++よく見るし親和性も高いイメージあるわ
あと関係ないけどクリエイティブ関連って言うとあれだけどOpenGLとかCinderとかそういうのと同じ匂いがする
objcはメソッドや昔はクラスごと入れ替え出来るからハッキングや割れが簡単なのが問題になったな
セキュリティやシリアルの発行をobjcだけでやるようなエンジニアがアホなだけだけど
今でもSafariのハックは盛んだし昔はFinderにタブ付けたりしてたでしょ公式で対応しちゃったけど
まぁIOKitもそうだけど
内部でC++は結構使ってるよね
KEXTだってKernel EXTensionなんだからカーネルと言ってもいんじゃん?
少しでも拡張性を持ってかつハックされたくない所のライブラリとかC++使わざるおえない感じを受けたよ
てかmac自体初期から組み込みの色が強いからC++よく見るし親和性も高いイメージあるわ
あと関係ないけどクリエイティブ関連って言うとあれだけどOpenGLとかCinderとかそういうのと同じ匂いがする
objcはメソッドや昔はクラスごと入れ替え出来るからハッキングや割れが簡単なのが問題になったな
セキュリティやシリアルの発行をobjcだけでやるようなエンジニアがアホなだけだけど
今でもSafariのハックは盛んだし昔はFinderにタブ付けたりしてたでしょ公式で対応しちゃったけど
722デフォルトの名無しさん
2017/08/06(日) 21:27:32.73ID:/dqOVGNE723デフォルトの名無しさん
2017/08/06(日) 21:33:58.82ID:/dqOVGNE >>720
語弊を恐れずにいうとObjective-CのCはまったく別物でありながら同じでもあるといえると思う
正確にはCにまったく別の文法を使ってオブジェクト指向を純粋に足したものがObjective-C
語弊を恐れずにいうとObjective-CのCはまったく別物でありながら同じでもあるといえると思う
正確にはCにまったく別の文法を使ってオブジェクト指向を純粋に足したものがObjective-C
724デフォルトの名無しさん
2017/08/06(日) 21:36:01.59ID:/dqOVGNE ああ、肝心なところtypoした
×Objective-CのC
○Objective-CとC
×Objective-CのC
○Objective-CとC
725デフォルトの名無しさん
2017/08/06(日) 21:39:48.15ID:/dqOVGNE726デフォルトの名無しさん
2017/08/06(日) 21:45:13.30ID:/dqOVGNE >>721
まだCocoaが発展途上だった時代にCarbonとの親和性を確保する意味でもObjective-Cは都合がよかったんだろう
まだCocoaが発展途上だった時代にCarbonとの親和性を確保する意味でもObjective-Cは都合がよかったんだろう
727デフォルトの名無しさん
2017/08/06(日) 21:49:46.04ID:0XdHuxlK >>721
骨幹から(?) C -+-> C++ -+-> Objective-C かな
KEXTはカーネルにすごい近いからカーネルと言ってもいいじゃんというまさしくそれに沿って別に簡単にフックできるから危ないからじゃなくてC++なんだろうという
いろいろなプラグインなんて、それこそ今でもハッキングや割れ(?)が簡単にやり放題にできるけどね。だが、いまだにそんなのが無いんだな、これが。まあサンドボックスやrootlessでやりづらくはなってはいるけど
んなとこから、IOKitがC++なのはObjective-Cが危ないからって話では無いだろうという俺論
>>723
一行で素晴らしいw彼もわかってくれればいいがw
骨幹から(?) C -+-> C++ -+-> Objective-C かな
KEXTはカーネルにすごい近いからカーネルと言ってもいいじゃんというまさしくそれに沿って別に簡単にフックできるから危ないからじゃなくてC++なんだろうという
いろいろなプラグインなんて、それこそ今でもハッキングや割れ(?)が簡単にやり放題にできるけどね。だが、いまだにそんなのが無いんだな、これが。まあサンドボックスやrootlessでやりづらくはなってはいるけど
んなとこから、IOKitがC++なのはObjective-Cが危ないからって話では無いだろうという俺論
>>723
一行で素晴らしいw彼もわかってくれればいいがw
728デフォルトの名無しさん
2017/08/06(日) 22:07:37.99ID:5hrgPajG >>720
>・純粋なCをやっているとObjC文法は素直に習得できる
の部分については、オブジェクト思考部分以外はCそのものなので、単純に追加されたオブジェクト思考部分を記述する文法さえ覚えればいいので、Cをやっていた人からすると習得コストが低いと言えるんじゃないかな
もちろんオブジェクト思考部分を記述する文法(=ObjC文法というのかな?)はCをやってた人からすると「変態的」なので最初は面食らった人がほとんどだと思うけど
ただやって実際見たらそんなに覚えることそんなにないじゃん的な感じかと
>・純粋なCをやっているとObjC文法は素直に習得できる
の部分については、オブジェクト思考部分以外はCそのものなので、単純に追加されたオブジェクト思考部分を記述する文法さえ覚えればいいので、Cをやっていた人からすると習得コストが低いと言えるんじゃないかな
もちろんオブジェクト思考部分を記述する文法(=ObjC文法というのかな?)はCをやってた人からすると「変態的」なので最初は面食らった人がほとんどだと思うけど
ただやって実際見たらそんなに覚えることそんなにないじゃん的な感じかと
729デフォルトの名無しさん
2017/08/07(月) 00:31:33.61ID:j1CBqyDH >>727
いまだに無いって世間知らずにもほどがあるだろ?
appStoreに移行しても被害額減るどころか増えてるんだから
まあメソッド名隠さないで簡単に推理出来る名前のまま公開してる奴は擁護出来ないが
objcは簡単に中身を書き換えられる&覗かれるってことを理解した上で書いてないシェアウェアが多いよね
ただmac自体ユーザーが極端に少ないからそれらをやる人間も必要としている人間も少ないわけで目立たないだけだろう
SIMBLだって今後使えなくなったとしても同じプロセス上にロードするだけで良いだけだから
動的なリダイレクトが出来る今のobjcの設計ならいくらでもやりようはあるからな
カラーピッカープラグインでもロードされるタイミングでスウィズル出来るわけだし
ただ結局それらは個ソフトウェア内だけだからあまり問題視されてないのが現状だろう、結局エンジニア次第だからな
これがOSの根幹で出来るとなったらやばいどころじゃ無いのは簡単に想像出来るだろう
いまだに無いって世間知らずにもほどがあるだろ?
appStoreに移行しても被害額減るどころか増えてるんだから
まあメソッド名隠さないで簡単に推理出来る名前のまま公開してる奴は擁護出来ないが
objcは簡単に中身を書き換えられる&覗かれるってことを理解した上で書いてないシェアウェアが多いよね
ただmac自体ユーザーが極端に少ないからそれらをやる人間も必要としている人間も少ないわけで目立たないだけだろう
SIMBLだって今後使えなくなったとしても同じプロセス上にロードするだけで良いだけだから
動的なリダイレクトが出来る今のobjcの設計ならいくらでもやりようはあるからな
カラーピッカープラグインでもロードされるタイミングでスウィズル出来るわけだし
ただ結局それらは個ソフトウェア内だけだからあまり問題視されてないのが現状だろう、結局エンジニア次第だからな
これがOSの根幹で出来るとなったらやばいどころじゃ無いのは簡単に想像出来るだろう
730デフォルトの名無しさん
2017/08/07(月) 00:48:46.15ID:fzx+TAun >>729
知らん。例えば具体的にどんな?ニュースになるような被害って?例え少ないのでもMac関係では大いに報道するだろ(アンチなのは妙に誇大にするからアレだがw)
あんな簡単に外部コードロード&フックできる仕組みなら、例えユーザ数が少なくたってある程度/かなりあっても不思議ではないだろ
別にObjective-Cに限らず、トロイにしろなんにしろ、なんでもできるのはそりゃそうだろ。そうじゃないと困るわ、生きづらいw
だからそもそもナニかする手段はあるって言ってるだろ。それが具体的に悪用されてるのがどんだけあるのかって話だよ
ネイティブコードが読み込まれるなら、Objective-CでなくてもMach-Oなプラグインだったら何でもできるだろうに、
なぜかObjective-Cだけ(危険/C++は安全??)とか、Objective-Cが簡単にフックできるからってのに捕らわれ、そうだからそうに違いないと言ってるだけにしか見えないな
そういえば、iOSは頑なに内製Framework(というか、dylib/別にObjective-Cなdylibでなくてもいろいろできる)を認めなかったが、
なんかいきなりあっさり認めるようになったな。お前の言っていることとは逆じゃね?より厳しいiOSでなのに
知らん。例えば具体的にどんな?ニュースになるような被害って?例え少ないのでもMac関係では大いに報道するだろ(アンチなのは妙に誇大にするからアレだがw)
あんな簡単に外部コードロード&フックできる仕組みなら、例えユーザ数が少なくたってある程度/かなりあっても不思議ではないだろ
別にObjective-Cに限らず、トロイにしろなんにしろ、なんでもできるのはそりゃそうだろ。そうじゃないと困るわ、生きづらいw
だからそもそもナニかする手段はあるって言ってるだろ。それが具体的に悪用されてるのがどんだけあるのかって話だよ
ネイティブコードが読み込まれるなら、Objective-CでなくてもMach-Oなプラグインだったら何でもできるだろうに、
なぜかObjective-Cだけ(危険/C++は安全??)とか、Objective-Cが簡単にフックできるからってのに捕らわれ、そうだからそうに違いないと言ってるだけにしか見えないな
そういえば、iOSは頑なに内製Framework(というか、dylib/別にObjective-Cなdylibでなくてもいろいろできる)を認めなかったが、
なんかいきなりあっさり認めるようになったな。お前の言っていることとは逆じゃね?より厳しいiOSでなのに
731デフォルトの名無しさん
2017/08/07(月) 01:04:19.31ID:fzx+TAun >>729
・コードをシステムなりに入れて起動できれば、そんなのObjective-Cだろうが他の言語だろうが関係ない、別のこと
・そのアプリの機能に介在するナニかをしたい場合にObjective-Cでフック機能が便利
・アプリの機能に関係なくなら、別にObjective-Cでなくても同じ危険性があるだけ
アプリの機能に介在してナニかあくどいすることなんてそもそもそんなありえるのか?関係なくの方が多いだろう。トロイ的にだが、その手法はあることはあるし
なんだかよくわからんが「これがOSの根幹で出来ると」いう、さもObjective-CでOSの根幹がありきのような話だが、そんなこと最初からないって言っているのがわからんのかなあ
アプリレベルプログラマでもCoreとかObjective-Cの同クラスより高機能なのが並列している時点で、
Objective-Cはアプリ/サービスレベルのフレームワーク用=OSの根幹でんなことしてられねえ(めんどくさいのだか何だかわからんがw)ってわかると思うだが、なぜかそこがObjective-Cであったらという前提はただの妄想にすぎないと思うよ
・コードをシステムなりに入れて起動できれば、そんなのObjective-Cだろうが他の言語だろうが関係ない、別のこと
・そのアプリの機能に介在するナニかをしたい場合にObjective-Cでフック機能が便利
・アプリの機能に関係なくなら、別にObjective-Cでなくても同じ危険性があるだけ
アプリの機能に介在してナニかあくどいすることなんてそもそもそんなありえるのか?関係なくの方が多いだろう。トロイ的にだが、その手法はあることはあるし
なんだかよくわからんが「これがOSの根幹で出来ると」いう、さもObjective-CでOSの根幹がありきのような話だが、そんなこと最初からないって言っているのがわからんのかなあ
アプリレベルプログラマでもCoreとかObjective-Cの同クラスより高機能なのが並列している時点で、
Objective-Cはアプリ/サービスレベルのフレームワーク用=OSの根幹でんなことしてられねえ(めんどくさいのだか何だかわからんがw)ってわかると思うだが、なぜかそこがObjective-Cであったらという前提はただの妄想にすぎないと思うよ
732デフォルトの名無しさん
2017/08/07(月) 06:19:41.05ID:1ENgAefL この流れがつまらない。
仮定の話で盛り上がるならオフ会でも行けば。
仮定の話で盛り上がるならオフ会でも行けば。
733デフォルトの名無しさん
2017/08/07(月) 06:41:26.11ID:n0QtNiqf 物知らずの無知無知ボーイ ID:5hrgPajG が声高に頑張ってたせい。
734デフォルトの名無しさん
2017/08/07(月) 07:26:00.83ID:nZ0RU5t+ 「酔っ払いの喧嘩は外でやっとくれ!」
酔っ払いの一方:「あいつが悪いんだ!」
酔っ払いの一方:「あいつが悪いんだ!」
735デフォルトの名無しさん
2017/08/07(月) 08:04:58.98ID:a1ES+HTw >>733
は?関係なくね?
は?関係なくね?
736デフォルトの名無しさん
2017/08/07(月) 09:16:12.87ID:zZbb3/ny >>733
何かした?
何かした?
737デフォルトの名無しさん
2017/08/07(月) 10:19:38.86ID:0r/N/mwc >>733
俺にも構ってくれよ
俺にも構ってくれよ
738デフォルトの名無しさん
2017/08/07(月) 10:43:49.21ID:GHOXhqb3739デフォルトの名無しさん
2017/08/07(月) 12:30:02.80ID:fzx+TAun740デフォルトの名無しさん
2017/08/07(月) 14:09:29.67ID:GHOXhqb3 >>739
マジレスっつーことは意図することはこういうことか
> 純粋なCをちゃんと使ってた人ほど文法がゴロっと変わるObjCは辛い、が当たり前のことでそれが誰かの失礼に当たる?
誰に何が失礼にあたるのか相変わらず分からないけど、共感してくれてるようで良かったよ
Cと同じじゃなきゃダメだって言ってるんじゃないよ、共感してくれてる通りCと違いすぎてるから純粋なCやってるとObjCが辛いって言ってるんだよ
マジレスっつーことは意図することはこういうことか
> 純粋なCをちゃんと使ってた人ほど文法がゴロっと変わるObjCは辛い、が当たり前のことでそれが誰かの失礼に当たる?
誰に何が失礼にあたるのか相変わらず分からないけど、共感してくれてるようで良かったよ
Cと同じじゃなきゃダメだって言ってるんじゃないよ、共感してくれてる通りCと違いすぎてるから純粋なCやってるとObjCが辛いって言ってるんだよ
741デフォルトの名無しさん
2017/08/07(月) 14:12:34.97ID:0r/N/mwc 218デフォルトの名無しさん (ワッチョイ 056c-cJAr)2017/08/07(月) 09:36:54.43ID:tO02o/C10>>221
>>212
メソッド呼び出しに、ドット構文が使えればObjCも描きやすくなるよねぇ。
Objective-C 3.0に期待だね。
id a = [[NSObject alloc] init];
->id a = NSObject.alloc().init(); // こんな感じ!
221デフォルトの名無しさん (ワッチョイ d9b5-xdmZ)2017/08/07(月) 12:05:53.21ID:tDzZ+7xU0
>>218
obj-cの魅力ってあくまでcの拡張でありobj-cの世界は[]の中だけってスタンスであってほしいから
ドット構文?はあんまり増やしてほしくない
個人的にはElixrのパイプ演算子(|>)をobj-cに採用して欲しい。
(元ネタはElixirじゃないかもしれないけど。)
[NSObject alloc] |> [@ init]
みたいな感じで使う。Elixirの場合だと返却値を次のメソッドの第一引数に渡すって意味だけどobj-cでは@を置き換えるみたいな感じで
ObjCユーザ的にはこういう構文変更はあり?
>>212
メソッド呼び出しに、ドット構文が使えればObjCも描きやすくなるよねぇ。
Objective-C 3.0に期待だね。
id a = [[NSObject alloc] init];
->id a = NSObject.alloc().init(); // こんな感じ!
221デフォルトの名無しさん (ワッチョイ d9b5-xdmZ)2017/08/07(月) 12:05:53.21ID:tDzZ+7xU0
>>218
obj-cの魅力ってあくまでcの拡張でありobj-cの世界は[]の中だけってスタンスであってほしいから
ドット構文?はあんまり増やしてほしくない
個人的にはElixrのパイプ演算子(|>)をobj-cに採用して欲しい。
(元ネタはElixirじゃないかもしれないけど。)
[NSObject alloc] |> [@ init]
みたいな感じで使う。Elixirの場合だと返却値を次のメソッドの第一引数に渡すって意味だけどobj-cでは@を置き換えるみたいな感じで
ObjCユーザ的にはこういう構文変更はあり?
742デフォルトの名無しさん
2017/08/07(月) 14:32:41.53ID:fzx+TAun >>740
理解はするが、全く共感はしない
見慣れない構文に戸惑うが、そりゃ違う部分だから当たり前だろ。「辛い」なんて全くわからん。見慣れない構文もよく使うのがほとんどだから直ぐに見慣れるだろうに、なにが辛いんだか??
理解はするが、全く共感はしない
見慣れない構文に戸惑うが、そりゃ違う部分だから当たり前だろ。「辛い」なんて全くわからん。見慣れない構文もよく使うのがほとんどだから直ぐに見慣れるだろうに、なにが辛いんだか??
743デフォルトの名無しさん
2017/08/07(月) 14:40:24.16ID:fzx+TAun >>740
ああ、なんかイミフでスルーしてたが、「失礼」って、俺が書いた「(失礼)」のことか??
だとしたら、お前にだよ。で、失礼の部分はそこじゃない。アホだなと思ったが、そう直球でいきなりアホ呼ばわりするのもっていう「アホって書くけど失礼」って意味
ああ、なんかイミフでスルーしてたが、「失礼」って、俺が書いた「(失礼)」のことか??
だとしたら、お前にだよ。で、失礼の部分はそこじゃない。アホだなと思ったが、そう直球でいきなりアホ呼ばわりするのもっていう「アホって書くけど失礼」って意味
744デフォルトの名無しさん
2017/08/07(月) 15:36:57.49ID:GHOXhqb3 >>742
うんうん、理解できたのは良いことだぞ
ObjC至上の宗教家っぽいし、共感できないのは信仰が違うから仕方ないんだろうね
流石に信仰を曲げてまで共感してくれとは思ってはないよ
ただ、お前さんが共感できないからってアホとなじるのはどうかと思うし
信者がそういう言動をする所もObjCがディスられる要因なんじゃないかな
うんうん、理解できたのは良いことだぞ
ObjC至上の宗教家っぽいし、共感できないのは信仰が違うから仕方ないんだろうね
流石に信仰を曲げてまで共感してくれとは思ってはないよ
ただ、お前さんが共感できないからってアホとなじるのはどうかと思うし
信者がそういう言動をする所もObjCがディスられる要因なんじゃないかな
745デフォルトの名無しさん
2017/08/07(月) 16:33:25.65ID:fzx+TAun なぜに上から目線?wwまあ、自己脳で完結してるのは知ってるからいいけど
宗教とか信仰とかただのアンチなのか?まあ、言いぶりからはお前は使っているっぽいのかなと思ったが、ちょっとやってみただけ(/やらされたのか?辛いらしいからw)が正解かな?
自分のモノにできてないのは確かのようだけど。で、やっぱ最初の俺のレスが正解か…ww なら続けた意味は、まあ、あったようななかったような
宗教とか信仰とかただのアンチなのか?まあ、言いぶりからはお前は使っているっぽいのかなと思ったが、ちょっとやってみただけ(/やらされたのか?辛いらしいからw)が正解かな?
自分のモノにできてないのは確かのようだけど。で、やっぱ最初の俺のレスが正解か…ww なら続けた意味は、まあ、あったようななかったような
746デフォルトの名無しさん
2017/08/07(月) 17:19:28.82ID:nZ0RU5t+ 中身がCの文法で書かれたモジュールを
Cの関数なんかじゃできなかったレベルで
取り回せるのが便利で評価されてる言語に
「そのCじゃない部分が嫌なのよね俺」とか
ここで口を開くレベルにも至ってなくて草ボウボウwww
Cの関数なんかじゃできなかったレベルで
取り回せるのが便利で評価されてる言語に
「そのCじゃない部分が嫌なのよね俺」とか
ここで口を開くレベルにも至ってなくて草ボウボウwww
747デフォルトの名無しさん
2017/08/07(月) 20:29:51.10ID:zWbONOmM >>741
既に出来なかったっけ?ドット構文
既に出来なかったっけ?ドット構文
748デフォルトの名無しさん
2017/08/07(月) 20:36:52.55ID:n9zFQLuH749デフォルトの名無しさん
2017/08/07(月) 21:11:50.86ID:zWbONOmM >>748
あーそうだね スマソ
あーそうだね スマソ
750デフォルトの名無しさん
2017/08/07(月) 21:19:43.31ID:n9zFQLuH >>741
それ。俺が書いたやつだけどマジで欲しいぞ。
https://github.com/ReactiveCocoa/ReactiveObjC
これとかみてくれればわかると思うけど。
ネストが深くなると凄く書きづらくなるし。Rxの学習をobjCで始めるとマジで辛い。
swiftはopensourceになって提案できるようになってるけど
objcにそういう仕組はないのかね
それ。俺が書いたやつだけどマジで欲しいぞ。
https://github.com/ReactiveCocoa/ReactiveObjC
これとかみてくれればわかると思うけど。
ネストが深くなると凄く書きづらくなるし。Rxの学習をobjCで始めるとマジで辛い。
swiftはopensourceになって提案できるようになってるけど
objcにそういう仕組はないのかね
751デフォルトの名無しさん
2017/08/08(火) 00:11:51.35ID:fmNB/sG0 >>750
たぶんこのスレで[ ]のネストについてなんか言ったところで暖簾に腕押しだと思うけど
たぶんこのスレで[ ]のネストについてなんか言ったところで暖簾に腕押しだと思うけど
752デフォルトの名無しさん
2017/08/08(火) 04:37:18.97ID:qCAzS5bX753デフォルトの名無しさん
2017/08/08(火) 09:10:19.12ID:qTxWRpQR メッセージ構文だろうがドット構文だろうがネスト数が多いこと自体が鬱陶しいだろ
どっちかっつぅとクラス設計の問題じゃないの
どっちかっつぅとクラス設計の問題じゃないの
754デフォルトの名無しさん
2017/08/08(火) 09:54:27.79ID:Apkyawzp >>753
Rxの概念的な都合によるものだから
どうしてもネストが深くなりがちなんだよね。
そもそもパイプが使えるとデバッグが楽だったりするし
ネスト構造でログを間にはさみたいときとかどうする?
結局ネストを壊して一時変数に途中経過を代入して出力するしかないでしょ?
メソッドチェーンなりパイプ演算子が使えると間に挟むだけになるから凄く
メンテナンス性が高い
Rxの概念的な都合によるものだから
どうしてもネストが深くなりがちなんだよね。
そもそもパイプが使えるとデバッグが楽だったりするし
ネスト構造でログを間にはさみたいときとかどうする?
結局ネストを壊して一時変数に途中経過を代入して出力するしかないでしょ?
メソッドチェーンなりパイプ演算子が使えると間に挟むだけになるから凄く
メンテナンス性が高い
755デフォルトの名無しさん
2017/08/08(火) 09:55:18.73ID:N1iCp3j/ >>753
Reactive Functional Programmingは必然的に多重ネストしちゃうが、
鬱陶しいとは、初めての意見だなぁ。
variable.asObserver()
.foo()
.bar()
.baz() {|cell|
// do something
// do something
}
これって、鬱陶しいかなぁ?
Reactive Functional Programmingは必然的に多重ネストしちゃうが、
鬱陶しいとは、初めての意見だなぁ。
variable.asObserver()
.foo()
.bar()
.baz() {|cell|
// do something
// do something
}
これって、鬱陶しいかなぁ?
756デフォルトの名無しさん
2017/08/08(火) 09:55:30.87ID:Apkyawzp757デフォルトの名無しさん
2017/08/08(火) 12:01:58.34ID:qTxWRpQR ドットでも[ ]でも大して変わらないって自分は思うってだけ
758デフォルトの名無しさん
2017/08/08(火) 12:24:05.02ID:qCAzS5bX [[[[variable asObserver] foo] bar] baz:^(id cell) {
// do something
// do something
}];
ふつくしい
// do something
// do something
}];
ふつくしい
759デフォルトの名無しさん
2017/08/08(火) 13:23:55.95ID:F28KTTfx >>757
そうとも言えるし、そうとも言えない
リアルに最近、(ちょっと)ん?と思った文w
[self menuItemsForPath:[[[node attributes] getNamedItem:@"representedFile"] value]]
まあ、現在のObjective-Cでも、
[self menuitemsForPath:[node.attributes getNamedItem:@"representedFile"].value];
と書けば、全然w。ドットにしてみて、
self. menuitemsForPath(node.attributes.getNamedItem(@"representedFile").value)
まあ、あんま変わんないかな
そうとも言えないにはイマイチだったか
そうとも言えるし、そうとも言えない
リアルに最近、(ちょっと)ん?と思った文w
[self menuItemsForPath:[[[node attributes] getNamedItem:@"representedFile"] value]]
まあ、現在のObjective-Cでも、
[self menuitemsForPath:[node.attributes getNamedItem:@"representedFile"].value];
と書けば、全然w。ドットにしてみて、
self. menuitemsForPath(node.attributes.getNamedItem(@"representedFile").value)
まあ、あんま変わんないかな
そうとも言えないにはイマイチだったか
760デフォルトの名無しさん
2017/08/08(火) 13:47:41.40ID:qTxWRpQR >>758
同じように改行でもインデントでもなんでもいれれば?
同じように改行でもインデントでもなんでもいれれば?
761デフォルトの名無しさん
2017/08/08(火) 14:36:01.22ID:qCAzS5bX Apple様のXcode自動インデントに任せて baz:^ の:の所に合わせてブロック文の中身はインデントを入るよ?
ブロック処理がコード上のすごい右側に行ってしまって
もうこの美しさと言ったらObjC/Xcode以外では中々に見ることが出来ないレベルだと思ってる
ブロック処理がコード上のすごい右側に行ってしまって
もうこの美しさと言ったらObjC/Xcode以外では中々に見ることが出来ないレベルだと思ってる
762デフォルトの名無しさん
2017/08/08(火) 14:44:47.05ID:F28KTTfx Apple様とか言ってるのはお前がだぞw
有るものを受け入れるに過ぎない&有るものをいかにどう使うかがお前や俺らのやること。それを使うというのはお前や俺らが自分で決めたことなんだから。それは別にAppleのに限らず
なんか自称開発経験長いようだが、よくそんな自分では解決できない不満満々でやってるなあ。その分他に使えばいいのに。全然長いように見えないな
有るものを受け入れるに過ぎない&有るものをいかにどう使うかがお前や俺らのやること。それを使うというのはお前や俺らが自分で決めたことなんだから。それは別にAppleのに限らず
なんか自称開発経験長いようだが、よくそんな自分では解決できない不満満々でやってるなあ。その分他に使えばいいのに。全然長いように見えないな
763デフォルトの名無しさん
2017/08/08(火) 15:38:18.31ID:taAceK/L 2個目以降のblocks引数のことだろ
1個目の左側と揃えた方がいいよ
1個目の左側と揃えた方がいいよ
764デフォルトの名無しさん
2017/08/08(火) 16:10:59.77ID:F28KTTfx デフォのフォーマットでは、2個目以降のblocksも引数のblock中身はインデントひとじゃね?
いくらあろうが右へ右へとは行かないよな??
いくらあろうが右へ右へとは行かないよな??
765デフォルトの名無しさん
2017/08/08(火) 16:22:42.51ID:taAceK/L インデントは2個目で止まる
だけどシグネチャがそもそも長いから右に寄りすぎるってのはある
1個目と同じで問題なさそうなのにね
まあ別にいいんだけど気になる点ではあるな
だけどシグネチャがそもそも長いから右に寄りすぎるってのはある
1個目と同じで問題なさそうなのにね
まあ別にいいんだけど気になる点ではあるな
766デフォルトの名無しさん
2017/08/08(火) 16:29:39.36ID:F28KTTfx そもそもデフォのフォーマットが気に入らないwから、自動補完後に整形するけど、自動補完中はTab(&click)とReturnで進めばBlockの中身分インデント一つだけのような/だけだけどなあ
2つになる場合がなんかあったかもしれないが補完後に整形するから忘れてるのかもしれないけど
2つになる場合がなんかあったかもしれないが補完後に整形するから忘れてるのかもしれないけど
767デフォルトの名無しさん
2017/08/09(水) 07:47:44.63ID:EM9uH4Ru768デフォルトの名無しさん
2017/08/09(水) 11:34:46.72ID:7tAKIt6P 提供された言語仕様をあるがままに受け入れられないヤツはObjCを使うな
769デフォルトの名無しさん
2017/08/09(水) 12:55:35.37ID:a8XvE339 「俺の馴染みのない表記が混ざってるのがキモチワルイ」言われても
評価してる側は「外への働きかけが表記分けで一目瞭然なのがイイネ」だから
話が平行線というか、
むしろ、最近の言語が(swiftみたいに)すぐにどのレベルの処理も
フラットにベターッと書くのを指向していて
それよく知られてるいつもの【ダメなやつ】なのになんで
あれやりたがる開発者多いのか…
評価してる側は「外への働きかけが表記分けで一目瞭然なのがイイネ」だから
話が平行線というか、
むしろ、最近の言語が(swiftみたいに)すぐにどのレベルの処理も
フラットにベターッと書くのを指向していて
それよく知られてるいつもの【ダメなやつ】なのになんで
あれやりたがる開発者多いのか…
770デフォルトの名無しさん
2017/08/09(水) 13:23:22.09ID:qPu9JyaP Obj-Cのラインは行頭に@という手もあるぞ
771デフォルトの名無しさん
2017/08/09(水) 13:28:37.05ID:mzNn5sYF [] はコストが関数呼び出しより高いことを明示してる感じでとても良いと思う。
772デフォルトの名無しさん
2017/08/09(水) 14:34:41.41ID:7tAKIt6P プロパティとかいうドット表記が問題なんだよな, 挙句にgetter/setterのメソッドに紐づいてるし
あれをObjCに取り込んだ害悪は誰だったんだろうね
あれをObjCに取り込んだ害悪は誰だったんだろうね
773デフォルトの名無しさん
2017/08/09(水) 14:53:43.66ID:ocU/hJiZ774デフォルトの名無しさん
2017/08/09(水) 15:10:08.58ID:7tAKIt6P 230デフォルトの名無しさん (ワッチョイ 056c-cJAr)2017/08/09(水) 14:56:18.93ID:ocU/hJiZ0
>>229
Objective-Cでもジェネリクス可能なのか?
どのレベルまでできる?
1. 型汎用な関数
2. 型汎用なクラス
3. 型汎用なプロトコル
4. 型汎用なプロトコル・エクステンション
SwiftスレでObjCについて聞く前にググれ
https://developer.apple.com/library/content/documentation/Swift/Conceptual/BuildingCocoaApps/InteractingWithObjective-CAPIs.html#//apple_ref/doc/uid/TP40014216-CH4-ID173
>>229
Objective-Cでもジェネリクス可能なのか?
どのレベルまでできる?
1. 型汎用な関数
2. 型汎用なクラス
3. 型汎用なプロトコル
4. 型汎用なプロトコル・エクステンション
SwiftスレでObjCについて聞く前にググれ
https://developer.apple.com/library/content/documentation/Swift/Conceptual/BuildingCocoaApps/InteractingWithObjective-CAPIs.html#//apple_ref/doc/uid/TP40014216-CH4-ID173
775デフォルトの名無しさん
2017/08/09(水) 15:10:17.60ID:qPu9JyaP プロパティじゃなくてもシグネチャ次第でドットにできるけどね
776デフォルトの名無しさん
2017/08/09(水) 15:15:27.76ID:qPu9JyaP あゲッターだけか
777デフォルトの名無しさん
2017/08/09(水) 15:47:05.07ID:ocU/hJiZ >>774
Lightweight Generics
って書いてあるね。
Swiftから呼べるObjective-Cコードは軽量版ジェネリクスってことか?
軽量版ジェネリクスかぁ。。。なんかグッと来る日本語無いかな?
Matzだって名前重要って言ってるし。
Lightweight Generics
って書いてあるね。
Swiftから呼べるObjective-Cコードは軽量版ジェネリクスってことか?
軽量版ジェネリクスかぁ。。。なんかグッと来る日本語無いかな?
Matzだって名前重要って言ってるし。
778デフォルトの名無しさん
2017/08/09(水) 18:10:30.11ID:m222t+F2 >>772
確かそもそもは、Cocoa Binding
Cocoa Binding(内で使う/に指定する)で メンバ(のメンバ?) の表記がドット。Cocoa Bindingとして対象は当然「プロパティ」という概念/名称になろう
この時点ではObjective-Cには property なんてなく、当然ドットもない。Cocoa Bindingがプロパティとして呼び出すのは単にセッター/ゲッター。セッター/ゲッターを量産する手段をObjective-Cには同時期かまたはちょっと後(それまでは、全部手でセッター/ゲッターを書く)
その後いろいろあって、今のに
なので、よくわからんが今やり始めてそう思うのは仕方がないのかもしれないが、無茶苦茶言ってるなてとこかなw
確かそもそもは、Cocoa Binding
Cocoa Binding(内で使う/に指定する)で メンバ(のメンバ?) の表記がドット。Cocoa Bindingとして対象は当然「プロパティ」という概念/名称になろう
この時点ではObjective-Cには property なんてなく、当然ドットもない。Cocoa Bindingがプロパティとして呼び出すのは単にセッター/ゲッター。セッター/ゲッターを量産する手段をObjective-Cには同時期かまたはちょっと後(それまでは、全部手でセッター/ゲッターを書く)
その後いろいろあって、今のに
なので、よくわからんが今やり始めてそう思うのは仕方がないのかもしれないが、無茶苦茶言ってるなてとこかなw
779デフォルトの名無しさん
2017/08/09(水) 18:46:53.08ID:P/9b8Th9 >>769
その【ダメなやつ】を最近もクラスプロパティの言語仕様追加で従来[ ]で呼び出してたものを.で呼び出すように推進してるからなぁ
言語仕様変えただけじゃなくご丁寧にCocoa, UIKitのフレームワークライブラリの実装まで修正してくれてるし
昔は【ダメなやつ】だったのかもしれんが、今は【イイやつ】になってると思うべきなんじゃねw
ObjCの言語仕様が追加されるのはいつものことだし、変わったものをモダンで良いものと思って追い続けないとやってけないよ
その【ダメなやつ】を最近もクラスプロパティの言語仕様追加で従来[ ]で呼び出してたものを.で呼び出すように推進してるからなぁ
言語仕様変えただけじゃなくご丁寧にCocoa, UIKitのフレームワークライブラリの実装まで修正してくれてるし
昔は【ダメなやつ】だったのかもしれんが、今は【イイやつ】になってると思うべきなんじゃねw
ObjCの言語仕様が追加されるのはいつものことだし、変わったものをモダンで良いものと思って追い続けないとやってけないよ
780デフォルトの名無しさん
2017/08/09(水) 18:55:51.12ID:P/9b8Th9 >>777
なんか誤解してそうだけどObjC単体でも使えるからな
ListやDictionaryなんかの一部コレクション系クラスの保持オブジェクトの型をコンパイル時チェックできるようになった
Java5の頃のジェネリクスと同じ感じだな, C++のTemplateみたいな使い方はできないがまぁ仕方あるまい
軽量"版"というからしょぼく見えるんだから軽量ジェネリクスでいいじゃん
コンパイル時間は多少伸びてるだろうが、実行時オーバーヘッドは0のはずだからな
なんか誤解してそうだけどObjC単体でも使えるからな
ListやDictionaryなんかの一部コレクション系クラスの保持オブジェクトの型をコンパイル時チェックできるようになった
Java5の頃のジェネリクスと同じ感じだな, C++のTemplateみたいな使い方はできないがまぁ仕方あるまい
軽量"版"というからしょぼく見えるんだから軽量ジェネリクスでいいじゃん
コンパイル時間は多少伸びてるだろうが、実行時オーバーヘッドは0のはずだからな
781デフォルトの名無しさん
2017/08/09(水) 19:35:58.41ID:eNfr2UIc782デフォルトの名無しさん
2017/08/09(水) 20:09:54.22ID:EM9uH4Ru783デフォルトの名無しさん
2017/08/09(水) 20:20:14.93ID:m222t+F2 >>781
あえてというか、必要性が無かったからだろう
Cocoa BindingでGetter/Setterをたくさん用意しなくてはならない/するのを強制されるのは確か。そういえばGetter/Setterの命名規則もこれのせいだったような(それ以前にあったかもしれないが「でなければならない」ではなかった)
オブジェクトに対しては、
ClassA *obj = …
(*obj).instaceVariable = …;
として、(たぶん)最初からあるけどなww(Cの構造体メンバアクセスとは確か「ちょっと」違う)
最初は構造体のと同じ表記なのに単なるメソッド呼び出しの置き換えとかキモかったなw
あえてというか、必要性が無かったからだろう
Cocoa BindingでGetter/Setterをたくさん用意しなくてはならない/するのを強制されるのは確か。そういえばGetter/Setterの命名規則もこれのせいだったような(それ以前にあったかもしれないが「でなければならない」ではなかった)
オブジェクトに対しては、
ClassA *obj = …
(*obj).instaceVariable = …;
として、(たぶん)最初からあるけどなww(Cの構造体メンバアクセスとは確か「ちょっと」違う)
最初は構造体のと同じ表記なのに単なるメソッド呼び出しの置き換えとかキモかったなw
784デフォルトの名無しさん
2017/08/09(水) 20:31:19.14ID:m222t+F2 >>783
>それ以前にあったかもしれないが「でなければならない」ではなかった
ちょっと違うな
それ以前にあったかもしれないがルールが明文化された
かな。ルールに基づかないのにもなのがsetter=/getter=の存在でもあるし
>それ以前にあったかもしれないが「でなければならない」ではなかった
ちょっと違うな
それ以前にあったかもしれないがルールが明文化された
かな。ルールに基づかないのにもなのがsetter=/getter=の存在でもあるし
785デフォルトの名無しさん
2017/08/09(水) 20:49:27.68ID:qqV2xE2N■ このスレッドは過去ログ倉庫に格納されています
