オブジェクト指向を教えてくれ!

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2021/03/16(火) 17:06:02.41ID:VhqTt897
オブジェクト指向について、調べれば調べるほど疑問が募ります。低レベルで粗末な疑問かも知れませんが、ご教授願いたいです。

・データと振る舞いをまとめる?
まとめると何か良いことあるの?
ファイルあるいはモジュールにはまとまってるよね?
丁度いい単位があるのに、何故わざわざオブジェクトという概念を導入するの?
(Javaには1ファイル1クラスという文化あるらしいけど)

・カプセル化?
モジュールのimport, exportでも実現出来るよね?
(構造体などへのアクセスを制限できれば)

・ポリモーフィズム?
別にデータと振る舞いをまとめなくても実現出来るよね?

・モノのように扱いたい?
モノとして扱いたいときに扱えば良くない? なんでわざわざ全てをオブジェクトにするの?
636デフォルトの名無しさん
垢版 |
2021/04/08(木) 23:41:05.62ID:IvT5sJ0r
>>596
> class チンポ{
>    super.不適切な関係;
> }
>
> クリントン
> ↑
> チンポ

class チンポ extends クリントン{
     super.不適切な関係;
}



クリントンーーーーーーーーーー
┃             ┃
┃             ┃
┃             ┃
┃             ┃
┃             ┃
ーーーーーーーーーーーーーーー
     ┃チンポ┃
      ̄ ̄ ̄ ̄
『人格を性欲に乗っ取られる』、つまりクリントンはチンポに人格を乗っ取られて、チンポにシコられてしまった!
637デフォルトの名無しさん
垢版 |
2021/04/09(金) 18:15:30.95ID:tyROv8sy
初心者板でも聞いたけどこっちの方が良さそうだからこっちでも質問させてください

データ型がクラスっていうのがどういうものかピンとこないから
わかりやすく解説おねがいします

例えばSystem.out.println();のSystemがクラスでoutは
SystemクラスのPrintStreamのクラスのデータ型を持つ
クラスフィールドの変数でそのクラスフィールド変数のprintln
メソッドを呼び出してるってのはわかるんだが
いまいちそのクラス型のデータってのがわかんないです
2021/04/09(金) 18:23:43.53ID:cGqN+QR0
>>637
https://www.google.com/search?lr=lang_ja&;ie=UTF-8&q=%E3%83%87%E3%83%BC%E3%82%BF%E5%9E%8B%E3%81%8C%E3%82%AF%E3%83%A9%E3%82%B9
2021/04/09(金) 18:30:26.78ID:kKgLqDHd
今度は日本語になってないガイジネタ?
2021/04/09(金) 18:39:19.86ID:z5hAI3I0
>>637
質問が難解でちょっとわからんが説明を試みると、

Javaだと各変数や定数が必ず「型」を持つ
単に「型」という場合もあれば「データ型」と呼ぶ場合もあるけど基本的に同じ
クラスは「型」の一種、クラス以外にはインターフェースやプリミティブ(intやboolean)も「型」の一種
System.out.printlnは以下のFooクラスとBarクラスがある時にFoo.out.printlnを呼ぶのと同じイメージ

class Foo {
static Bar out;
}

class Bar {
public static void println(String text){
System.out.println(text);
}
}
2021/04/09(金) 18:58:36.69ID:kKgLqDHd
もう少し読める質問文書けるようになるまでほっとけばいいのに
2021/04/09(金) 19:01:58.74ID:9nMkDqyN
>>637
クラスはデータ型じゃない
構造体とか配列のほうが近い
分類できる仕組みを持ってるのがクラス
643デフォルトの名無しさん
垢版 |
2021/04/09(金) 19:56:19.91ID:tyROv8sy
>>640
>>642
ありがとうございます。
バカなので正直まだピンと来ているわけではないですが
答えてもらった内容を元にもう少し理解を深める勉強をします。
644デフォルトの名無しさん
垢版 |
2021/04/09(金) 19:58:01.80ID:tyROv8sy
>>639
>>641
ネタじゃなくてガチガイジです
ここに質問するには学習進度的に早かったようなので出直します。。。
645デフォルトの名無しさん
垢版 |
2021/04/09(金) 21:49:21.10ID:ZtTJ25vZ
46 仕様書無しさん sage 2021/04/02(金) 19:08:29.69
>>45
お前じゃあ人クラス敬称してチンポクラスつくるのかよ
いいか、人クラスから赤ちゃんクラスつくってそれがもってるチンコフィールド、胸フィールド
に対する操作がそれぞれあるわけで、クラス内でフィールドに対する操作は好きに設定していいはずだ。
胸がドキドキ、チンポをシコシコがそれぞれのフィールドに設定されているんだから
それはその使い方が正しいとしか言えないわけだ
クラスと属性を一緒に考えようとするから
お前のような錯覚に陥ってしまうんでないか?
646デフォルトの名無しさん
垢版 |
2021/04/09(金) 22:32:51.36ID:m/pOl1Gb
>>645
「人」クラスを継承するのはいいとして、
条件反射とか脊髄反射とかをどう扱うかという問題がある。
そういう意味では、オブジェクト志向というのは交絡(コンフリクト)の
可能性を完全には排除できない部分があるので、
けっこう憂鬱な概念ではある。
647デフォルトの名無しさん
垢版 |
2021/04/09(金) 23:08:47.89ID:v0s3XxNT
いや、そもそもあのチンポチンポ言ってた奴は
「人とチンポはそれぞれ独立した生き物」と言っていたから
生き物クラスをそれぞれ継承したクラスかも知れないし
is a 関係にすら無いかも知れない。
あの「シコシコ」というのも動詞か形容詞かハッキリしない

つまり
今の状態だと要件定義の時点で破綻しているように見える
2021/04/09(金) 23:24:24.58ID:Ji3TF0NK
オブジェクト指向の長所の一つと言われている大規模プロジェクトでの適用だが
例示できないよな・・・
649デフォルトの名無しさん
垢版 |
2021/04/09(金) 23:50:31.69ID:Bt2xCaEd
Nextstep(1986~)→macOSX(2001~)⇄iOS(2007~)

うまく行きすぎていまだにiOS開発のライブラリプリフィックスがNS~だらけだけど。
650デフォルトの名無しさん
垢版 |
2021/04/10(土) 00:09:28.32ID:bZpN/7Yw
シコシコは手のメソッド
651デフォルトの名無しさん
垢版 |
2021/04/10(土) 09:08:00.96ID:ZJgmDpk8
https://ja.m.wikipedia.org/wiki/%E3%82%AF%E3%83%A9%E3%82%B9_(%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%82%BF)
652デフォルトの名無しさん
垢版 |
2021/04/10(土) 09:18:43.07ID:XPz+daq5
NHKの子供向け番組で、突然ど下ネタがぶっこまれる事案が発生「NHKから怒られる」「受信料払うことにした」
https://togetter.com/li/1075927
653デフォルトの名無しさん
垢版 |
2021/04/10(土) 09:28:10.63ID:XPz+daq5
『体中が引き締まるような快感を感じた』、つまり『チンポがシコシコする』は『胸がドキドキする』と同じ!

>>647
> あの「シコシコ」というのも動詞か形容詞かハッキリしない

<俺>
「 部屋の英子がこちらを向いた気配に、彼は勃○した陰○を外から障子に突きたてた。障子は乾いた音をたてて破れ、
それを見た英子は読んでいた本を力一杯障子にぶつけたのだ。本は見事、的に当って畳に落ちた。 」
<チンポ>
「 その瞬間、竜哉は体中が引き締まるような快感を感じた。彼は今、リングで感じるあのギラギラした、
抵抗される人間の喜びを味わったのだ。 」
2021/04/10(土) 09:37:00.53ID:soXV+Z7D
ふーんガイジじゃん
655デフォルトの名無しさん
垢版 |
2021/04/10(土) 09:59:49.41ID:XPz+daq5
>>654
> ふーんガイジじゃん

ならそういうお前が、オブジェクト指向について分かりやすくかつ自分の言葉で語れよ!!!!
656デフォルトの名無しさん
垢版 |
2021/04/10(土) 10:46:02.28ID:lsu/TdgS
>>653
だから動詞と形容詞どっちなんだよ
657デフォルトの名無しさん
垢版 |
2021/04/10(土) 11:20:07.17ID:XPz+daq5
>>656
> だから動詞と形容詞どっちなんだよ

チンポ【が】(チンポ自身で自律的に)シコシコする、自『動詞』ね!
658デフォルトの名無しさん
垢版 |
2021/04/10(土) 11:24:08.55ID:XPz+daq5
チンポ【が】(自律的に)シコシコしたということだが、

>シコシコしたチンポにシコられたクリントン、

『ムスコ』がシコシコしたのは、親の責任である!!

class チンポ extends クリントン{
     super.不適切な関係;
}
2021/04/10(土) 11:43:58.42ID:soXV+Z7D
なんかガイジにキレられたんだけど
660デフォルトの名無しさん
垢版 |
2021/04/10(土) 11:45:47.98ID:XPz+daq5
チンポはクリントンと繋がっており、チンポはクリントンそのものを『継承』しているということだ!

継承の元となるクラス(ここではPerson)をスーパークラス、継承して新しく作るクラス
(ここではStudent)をサブクラスと言います。 サブクラスのインスタンスはスーパークラスのメンバーに加え、
サブクラスで追加したメンバーを使うことができます。 継承の原語であるinheritance(インヘリタンス)
には遺産とか相続の意味があります。 継承とは、まさにスーパークラスの遺産をそっくり受け継いで、
最初から自分が持っていたかのように利用することです。
https://www.fujitsu.com/jp/group/fap/services/java-education/course/technology/java-cobol/07-inheritance/

まさにこの『ムスコ』は、クリントンの遺産を全て引き継ぎ、かつ独立してシコシコしてしまったのだ!
2021/04/10(土) 12:05:22.12ID:soXV+Z7D
ガイジのくせに生意気じゃね?
なんでム板にこんなゴミみたいな書き込みしてんの?
2021/04/10(土) 12:07:33.40ID:+2v3HD7B
荒らしに構うやつも荒らしという古代の格言がある
2021/04/10(土) 12:13:35.99ID:soXV+Z7D
>>662
くっさ
664デフォルトの名無しさん
垢版 |
2021/04/10(土) 12:22:33.67ID:T+f9vh2x
ダイクストラの構造化プログラミングは、プログラムの大規模開発への道を開いたが、あくまで単一スレッド(single thread)計算機を前提としたトップダウン型開発方法であった。すなわち、プログラムのすべての機能は単線の計算プロセス上で実行する必要があり、たとえ甲と乙という汎用的な単機能を提供する検証済みのプログラムがそれぞれ独立に存在していても、両機能を実現するプログラムを作成するためには、ソースコードから該当機能部分を抜き出し、単線上に乗るように連接(concatenation)した上で、一つのプログラムとして正しく動作するように修正し、さらに再度検証しなければならない。

一方で、複数スレッド(multi thread)計算機においては、主プログラムから、甲と乙のプログラムなどの従プログラムをそれぞれ並列に実行させた上で、処理内容を従プログラムに(OSの機能などを仲介して)伝言受け渡し(message passing)して代わりに処理させることで、検証済みプログラムのソースコードに手を加えることなく、低コストで開発することができる(以下、これを第0世代オブジェクト指向プログラミング[独自研究?]と呼ぶ)[3]。

オーレ=ヨハン・ダールとアントニー・ホーアは、この第0世代オブジェクト指向プログラミングのような考え方の有効性を主張し[4]、上記のような一連の操作を一つの言語の中で完結させるための機構を提案した。それがクラスの構文である。

ダールとホーアは、まず主プログラムから従プログラムを並列呼び出しする際、読み込みするにあたって新たに(new)割り当てられたメモリ領域に限定して走る計算プロセスを実例(instance;インスタンス)と名付け、さらにその実例の集まり(class of instances)をそれが記述されたソースコードと同一視した。その上で、呼び出されたときだけではなく、存在し続ける従プログラムの実例のもとになる手続きをクラス(class)、その実例を(「クラスの実例」ではなく)改めてクラスの対象(object)と名付けた[5]。さらに、その考えに基づいてSimula 67にクラスの構文を実装した[6]。
665デフォルトの名無しさん
垢版 |
2021/04/10(土) 12:41:57.60ID:XPz+daq5
>>661
ならそういうお前が、プログラミング未経験者にも分かりやすく、オブジェクト指向とは何かを語れよ!!!
2021/04/10(土) 12:51:55.32ID:KeUOoB1p
>>665
プログラミング未経験者がオブジェクト指向知る意味はない
おまえ毎日何やってんの?他にすること無いの?
667デフォルトの名無しさん
垢版 |
2021/04/10(土) 13:17:44.61ID:ZJgmDpk8
よし単純に説明してみるぞ

Aさんが甲というちゃんと動作するプログラムを組みました。
Bさんは乙という同じくちゃんと動作するプログラムを組みました。
Cさんは甲の機能と乙の機能の2つを併せ持つ丙というプログラムを組むことにしました。

イチから作るのはめんどいのでCさんはAさんBさんからコードをそのままもらうことにしました。
ただ言語にクラスの機能もモジュールの機能も無いので、組み合わせるには変数名を衝突しないように変更しなければならず、条件分岐もやたら複雑になりました。

こんなときクラスの機能があれば変数名がリセットされて衝突しないのに‥
668デフォルトの名無しさん
垢版 |
2021/04/10(土) 13:19:15.79ID:ZJgmDpk8
シンプルイズベスト
どうだ!
669デフォルトの名無しさん
垢版 |
2021/04/10(土) 13:22:11.44ID:XPz+daq5
>>586
>そう考えるとチンポは自我の機能を保有していることになり

『ムスコ』は親クラスを継承し、かつ親クラスたるクリントンはその責任を負うのだぞ?

>クリントンの精液のシミがついたドレスをモニカが保管していることがわかり、

罪はチンポに責任はクリントンに、不適切な関係でした!
670デフォルトの名無しさん
垢版 |
2021/04/10(土) 13:39:43.96ID:XPz+daq5
>>667
>イチから作るのはめんどいので

反復期間ごとに現実に動作し役に立つソフトウェアを提供することで、開発サイドとビジネスサイドが
「現物のソフトウェア」を介してコミュニケーションすることが可能となります。
共に現物を触れることで、開発サイドは即座にフィードバックを受けることができます。
ビジネスサイドは現物に(文字どおり)触発され、新たな要求やアイデアが湧き立ちます。
アジャイル開発は、要求の変化へ追従するだけではなく、新しい変化を自らもたらします。
https://www.fujitsu.com/jp/group/fst/about/resources/featurestories/about-agile-01.html
671デフォルトの名無しさん
垢版 |
2021/04/10(土) 13:55:59.53ID:XPz+daq5
基本情報技術者 H27年春 午前 【問48】 分類:システム開発技術
オブジェクト指向の考え方に基づくとき、一般に"自動車"のサブクラスといえるものはどれか。
ア エンジン
イ 製造番号
ウ タイヤ
エ トラック
http://itnavi.style-mods.net/question/fe27_1/fe27_1_48.htm

625 デフォルトの名無しさん 2021/04/08(木) 15:53:22.47 ID:I7qINfxA
この車は、タイヤがパンクしてしまった!

クリントン大統領は、チンポがシコシコしてしまった!
672デフォルトの名無しさん
垢版 |
2021/04/10(土) 14:07:00.73ID:XPz+daq5
カテゴリ分別ということなら、クリントンとチンポの関係は、そのまま自動車とトラックには当てはまらない!

Carクラスには、フィールドとしてTyreオブジェクト(への参照)4つとEngineオブジェクト(への参照)
1つが定義されている。 つまり、CarオブジェクトはTyreオブジェクト4つとEngineオブジェクト1つを持つこと
になる。 これで「自動車が4つのタイヤと1つのエンジンを持っている」ということを表現できるのである。
http://www.rsch.tuis.ac.jp/~ohmi/software-intro/objectoriented.html

チンポは内部クラスにもサブクラスにも成り得るはずだ、違うか?

解答と解説
解答: エ
解説: オブジェクト指向
データを外部から隠ぺいし、メソッドと呼ばれる手続きによって間接的に操作することができる。プログラムは、データとメソッドをひとまとめにしたものの集まりである。
分類: テクノロジ系 > 開発技術 > システム開発技術
673デフォルトの名無しさん
垢版 |
2021/04/10(土) 14:25:09.38ID:XPz+daq5
オシッコするときのチンポはインナークラス、勃起・射精するときのチンポはサブクラス、けれども自動車
のサブクラスはタイヤではなくてトラック、すると俺のオブジェクト指向理解は間違っていたのか???

だとすればチンポは随意筋なのか不随意筋なのか、どっちなんだ???

オシッコするときは随意筋で、射精するときは不随意筋って、どういう筋肉なんだ???
2021/04/10(土) 14:36:31.61ID:edMGid1M
>>667
モジュールやネームスペースに相当する機能で十分なのでオブジェクト指向は必要ないねー
675デフォルトの名無しさん
垢版 |
2021/04/10(土) 14:50:02.32ID:XPz+daq5
しかしながらこういう時にチンポをクリントンのインナークラスにすると、

>>626
>人格は乗っ取られているかも知れないがそれはクリントンの状態変化であって

クリントンの『状態』をオブジェクトにしなければならなくなる。しかしながら、

>乗っ取られるという状態変化を起こしたクリントンがシコっていることに変わりはない

チンポ【が】シコシコして、シコシコしたチンポがクリントンをシコらせる、こう考えざるを得ない!

・・・・異論があるなら何なりと!

250 デフォルトの名無しさん sage 2021/03/21(日) 16:00:54.94 ID:rWfpUSZ4
状態をオブジェクトにするな
は昔からよく言われている
「ボタンを押している状態」
をクラスにしてしまうと
プログラムが無茶無茶になる
「モノ」をオブジェクトにする
これがオブジェクト指向の本質
676デフォルトの名無しさん
垢版 |
2021/04/10(土) 15:01:13.41ID:XPz+daq5
オブジェクト指向には、インナークラスとサブクラスの2種類があって、

>"自動車"のサブクラス

『トラック』は独立した自動車として振る舞えるが、『タイヤ』はそうではない!

>クリントンの精液のシミがついたドレスをモニカが保管していることがわかり、

チンポは独立した主体存在であり、かつクリントンそのものとして振る舞える!

      こ れ で 全 て の 謎 は 解 け た !
2021/04/10(土) 15:57:27.66ID:soXV+Z7D
ガイジって志村といっしょだよな
面白いの最初だけなのにくどいわ
678デフォルトの名無しさん
垢版 |
2021/04/10(土) 16:32:26.44ID:XPz+daq5
>>677
だから『オブジェクト指向』について、他にわかりやすい説明が有るのかって??
679デフォルトの名無しさん
垢版 |
2021/04/10(土) 17:18:56.68ID:GLiDRYw8
>>675
>「ボタンを押している状態」
>をクラスにしてしまうと
>プログラムが無茶無茶になる

ならないよ
というかゲーム作成では1画面書き換える前と
書き換えた後のボタンの状態をとっておいて
書き換え前と書き換え後の論理積を取ったもののビットが1ならボタン押しっぱなし、
書き換え前と書き換え後の排他的論理和に書き換え後の論理積を取ったもののビットが1の場合はボタン立ち上がり、
書き換え前と書き換え後の排他的論理和と書き換え前の論理積のビットが1だった場合はボタン立ち下がりという
シングルトンなクラスを持ってそれを見に行って各キャラクターの処理分けを行うなんて普通にあること。

何で上で書いたみたいに思っちゃったのかな?
2021/04/10(土) 18:35:00.78ID:edMGid1M
>>679
それ「ボタンを押してる状態」をクラスにしてる?
681デフォルトの名無しさん
垢版 |
2021/04/10(土) 18:52:25.48ID:GLiDRYw8
>>680
そうだよ
これはあくまでベースで
更に格闘ゲームなんかだと
コマンド入力クラスの中で
これを使っている場合もある
2021/04/10(土) 20:07:30.85ID:hfLklo2F
テクニックで
オブジェクト指向と関係ない
683デフォルトの名無しさん
垢版 |
2021/04/10(土) 20:21:03.66ID:XPz+daq5
>>682
ならばオブジェクト指向とチンポ【が】シコシコとは、関係無いのか?
2021/04/10(土) 20:47:28.50ID:edMGid1M
>>681
何がそうなのかよく分からない
>>679を読む限りではボタンの各状態をそれぞれクラスとして定義してるようには全く見えないんだけど?

書き換え前と書き換え後のボタンの状態を表現する各インスタンスをオペランドとして論理演算してるってことなの?

もしそうだとしたら何のためにボタンの各状態をわざわざクラスとして定義するのかわからない
stateパターン使って状態遷移を制御するんなら理解できるんだけど
685デフォルトの名無しさん
垢版 |
2021/04/10(土) 21:06:31.28ID:GLiDRYw8
>>684
なんかここまで説明して分からない人にこれ以上説明するのは無駄な気がする
Object指向以前にコンピュータとはどういうものかもっと基礎的なことから勉強した方がいいと思う
恐らく掛け算のロジックを作れと言われたらそのまま掛けられる数の回数分だけ掛ける数をループして
足しこむようなロジックを作るタイプだな
2021/04/10(土) 21:34:26.26ID:edMGid1M
「ボタンを押している状態をクラスにしてしまうとプログラムが無茶無茶になる」という主張に対する反論に
「ボタンを押している状態」をクラスにしてない例を持ってきても意味なくないかい?

何か意図があったのだろうか?
687デフォルトの名無しさん
垢版 |
2021/04/10(土) 21:42:44.90ID:GLiDRYw8
>>686
何を言ってるのか全く分からんけど
>>679はれっきとしたボタンが押されているか、今押されたのか、ボタンを離したのかの状態を監視するクラスだ。
それが読んで分からない人にそこから先の何が理解出来る?
2021/04/10(土) 21:44:59.07ID:AcLZ31++
ゲームみたいな例外をだしたって参考にならないんだがな
ゲームのボタンは押したらロボットに変形したりする
2021/04/10(土) 21:48:22.34ID:hfLklo2F
仮想コントローラークラスにして
コントローラオブジェクトとして扱ってるってことか
690デフォルトの名無しさん
垢版 |
2021/04/10(土) 21:52:03.15ID:GLiDRYw8
>>688
別にゲームのボタンでなくてもいいよ
スマホとかのタブレットデバイスで
スライドするとそれに合わせてスクロール
したりするのも原理的には同じだ
2021/04/10(土) 21:58:30.06ID:AcLZ31++
>>690
スマホとかの〜ボタンだと
そういうのは予め用意されてる
何のフレームワーク・ライブラリの話をしてる?
692デフォルトの名無しさん
垢版 |
2021/04/10(土) 22:05:19.22ID:4ha6UGTx
>>691
そうだな
例えばスクロールする枠とスクロールを検知する枠が異なる場合、
通常のフレームワークだとそこまでやってくれない場合がある。
例えばWeb画面だと本来CSSだけでそれは出来ることだが
上記のような条件がつく場合、>>691だったらどうするよ?
693デフォルトの名無しさん
垢版 |
2021/04/10(土) 22:08:38.99ID:bj32NwrN
さあさあ議論が白熱して参りました!
694デフォルトの名無しさん
垢版 |
2021/04/10(土) 22:11:15.49ID:XPz+daq5
さあさあ皆さん、チンポ【が】シコシコして参りました!
2021/04/10(土) 22:40:41.01ID:CMXyYVkE
チンポがシコシコ君はいい加減に消えて欲しいが
「〜が」の時点で主語(サブジェクト)だから、それはサブジェクト指向やぞ
2021/04/10(土) 22:46:33.74ID:GpjuDdyG
static変数を持つクラスを作ると
そのクラスに依存するクラスがたくさんできる
プロジェクト内で完結してるなら問題ない
そのかわり次のプロジェクトで使えないようなクラスが
たくさん残る
そういうことじゃ
2021/04/10(土) 23:07:58.78ID:d/QnIuGg
privateにすりゃいいんじゃ
698デフォルトの名無しさん
垢版 |
2021/04/10(土) 23:38:19.35ID:GLiDRYw8
>>696
いつものじーさんか
んー、上のボタン制御のロジックに限って言ってしまうとボタン情報による状態変化を司るクラスを作っておいて
それだけ変えればいいように設計すればそこの変更だけで済むんだけど
Object指向のスレ的に言えば本来、開放閉鎖原則というのがあるからそれに関しては否定しないよ。
2021/04/11(日) 04:40:53.16ID:CjAFb9gH
>>692
そういうのを作ればいいだけでは?
それとゲームのボタンとは全く違う
700デフォルトの名無しさん
垢版 |
2021/04/11(日) 06:22:47.87ID:0+LhiyyI
>>699
>そういうのを作ればいいだけでは?
>それとゲームのボタンとは全く違う

そういうのをどう作るのか聞いている
そこに行き着く前に思考停止しているから
原理が同じことに気付けない
2021/04/11(日) 07:11:59.27ID:CjAFb9gH
>>700
だから既存のものはどうなってるかって聞いたんだよ
どれもゲームのようにはなってないだろ?

YAGNIって知ってるか?出来るかどうかの話はしてない。
必要ないのに無駄な汎用性をもたせるなという話
それともゲーム並みに無駄な汎用性をもたせるといい理由でもあるか?
2021/04/11(日) 07:12:30.62ID:CjAFb9gH
ゲームが必要だから、それ以外でもゲームと同じようにするべき

という考えなら、それこそ思考停止
703デフォルトの名無しさん
垢版 |
2021/04/11(日) 07:14:37.55ID:0+LhiyyI
後輩「先輩」
先輩「何だ後輩」
後輩「すみません、画面スライドしたとき、スクロール範囲でないところでスクロールを検知させたいんですけど」
先輩「それで?」
後輩「CSSじゃ出来なそうなんです。どうすればいいですかね」
先輩「そう作ればいいだろ」

こんな感じで笑えたわw
流石に上司や客先にはやったらクビになるから
今度後輩にやってみよう
2021/04/11(日) 07:19:58.71ID:CjAFb9gH
後輩「先輩」
先輩「何だ後輩」
後輩「すみません、画面スライドしたとき、スクロール範囲でないところでスクロールを検知させたいんですけど」
先輩「それなら全画面を透明のCSSで覆えばいいよ」

こんな話か?w
705デフォルトの名無しさん
垢版 |
2021/04/11(日) 07:20:56.91ID:0+LhiyyI
>>702
この話においてゲームの話はただのトリガーで
「ゲームのような特殊な」って言うから
比較的一般のものの話をしているんで
そんな心配しなくていいよ。

で、どう作るのかまだ回答を貰っていないんだが
どうすんの?コレ
2021/04/11(日) 07:21:24.67ID:CjAFb9gH
あれだな。見えているもがオブジェクト全てだと考えてしまうゲーム脳だなw
2021/04/11(日) 07:22:43.08ID:CjAFb9gH
>>705
スクロールする枠と、スクロールを検知する枠を別にすればいいだけ
それとボタンを押した状態を別のオブジェクトにする話と何が関係あるんだ?
708デフォルトの名無しさん
垢版 |
2021/04/11(日) 07:24:12.88ID:0+LhiyyI
後輩「先輩」
先輩「なんだ後輩」
後輩「なんか画面がスクロールしなくなっちゃったんですけど」
先輩「いいから、出来るように作ればいいんだよ!!」
こんな感じ
2021/04/11(日) 07:25:51.39ID:CjAFb9gH
後輩「○○で作れそうじゃないんですけど。どうすればいいですかね」
↑相談

先輩「そう作ればいいだろ」
↑無能

こういうのが報連相をぶち壊しにするんだよな
後輩が相談してるのに、その相談にのらない
2021/04/11(日) 07:27:33.86ID:CjAFb9gH
それでボタンを押した状態というのは
どれも状態としてボタンが持ってるのが普通なのに
なんでわざわざ別のオブジェクトにするんですか?
まだ答えもらってないよ
2021/04/11(日) 07:34:09.10ID:CjAFb9gH
答えに詰まったようだねw

ゲームのボタンっていうのはキャラクターの一種なんだわ
例えばマリオだとPスイッチは、押したら潰れて消える
持って投げられる。ベルトコンベアやバネの上で動く。
壁として障害物になる。

そういうのとUIのボタンを一緒にするのは抽象化能力が低い
ボタンという名前だから同じものだと考えてしまっている
ゲームのボタン(キャラクター)を持ち出して
UIまでキャラクターにするのはアホ
712デフォルトの名無しさん
垢版 |
2021/04/11(日) 07:35:04.81ID:0+LhiyyI
>>710
え?何?そこから?
なら画面が動いている最中に
ボタンが押されたばかりか離されたか
押しっぱなしか押してないかどう検知するんだよ?
まさかボタンのイベント括り付けて常に拾うつもり?
2021/04/11(日) 07:40:36.11ID:CjAFb9gH
>>712
常にイベント拾う必要ないだろ

ボタンが押された・・・onPressイベント
押しっぱなし・・・そのまま何もイベントが発生しない
ボタンが話された・・・onReleaseイベント

こんなとこだろ
2021/04/11(日) 07:42:16.08ID:CjAFb9gH
そもそもフレーム単位で描画処理するというのがゲームの発想なわけで
普通のUIはそんなことはしない。
やっぱり理解できてないとしか言うしかないな
マジのゲーム脳だなw
715デフォルトの名無しさん
垢版 |
2021/04/11(日) 07:44:03.37ID:0+LhiyyI
>>711
>ゲームのボタンっていうのはキャラクターの一種なんだわ

ちょっと何言ってるか分かりませんね
十字キーやABボタンがキャラクター?
あれって勝手に外れて動き出すの?
・・・狂った?

>>714
>そもそもフレーム単位で描画処理するというのがゲームの発想なわけで

お前、スマホとかの開発出来ねーな
2021/04/11(日) 07:47:15.00ID:CjAFb9gH
>>715
十字キーやABボタンの話をしてたのか?
それもう現実世界のもので
ソフトウェアのオブジェクトじゃないじゃん
お前何言ってるの?

それに「オブジェクトを押した状態」をクラスにするのが
アホ設計って話をしてるよね
つまり、お前のABボタンは、押すと別のオブジェクトに変わるんか?

>>715
> お前、スマホとかの開発出来ねーな

やっぱり反論できなくなったら遠吠え DA・YO・NE☆
717デフォルトの名無しさん
垢版 |
2021/04/11(日) 07:57:06.87ID:0+LhiyyI
>>716
いいか?
ボタンをクラスにするのではない
「ボタンの状況」を把握するクラスを作ること
それが最初から言われている大条件だが
日本語苦手なのかな?

で、俺はスマホでスクロールの話をしたとき
お前は「原理は全く別のもの」と吹っかけた
では原理的に何がどう違うのか説明して貰おう
否定すると言うことは当然理解もしているし
こうだから違うと言うことを自分が
理解していて説明出来るからという解釈でいいんだよな?
2021/04/11(日) 08:13:48.85ID:CjAFb9gH
>>717
話をすり替えるな

>>675
>「ボタンを押している状態」
>をクラスにしてしまうと
>プログラムが無茶無茶になる
2021/04/11(日) 08:14:43.87ID:CjAFb9gH
680 名前:デフォルトの名無しさん[sage] 投稿日:2021/04/10(土) 18:35:00.78 ID:edMGid1M [2/4]
>>679
それ「ボタンを押してる状態」をクラスにしてる?

681 名前:デフォルトの名無しさん[] 投稿日:2021/04/10(土) 18:52:25.48 ID:GLiDRYw8 [2/6]
>>680
そうだよ
2021/04/11(日) 08:18:42.29ID:CjAFb9gH
「ボタンの状況」を把握するクラスっていうのも意味不明なんだよな
イベントドリブンをしらないのか?
ボタンは状況が変わればそれをイベントとして通知する
それはハードウェアやドライバレベルで処理する話なの

いちいちフレーム単位でボタンの状況を
スキャンしたりしないの
721デフォルトの名無しさん
垢版 |
2021/04/11(日) 08:19:04.30ID:0+LhiyyI
>>718
何もすり替えていない。
「ボタンを押している状態」のクラスを作ることだろ?
ボタンが別のオブジェクトになるとか
さっきから何の話をしているんだ?

俺からするとお前の方が回答したくなくて
話を逸らしているように見えるんだが?
なぁ、早く答えてくれよ
2021/04/11(日) 08:22:01.88ID:CjAFb9gH
> 「ボタンを押している状態」をクラスにする

> 「ボタンの状況」を把握するクラスを作ること


この2つが区別つかないようじゃ話にならんなw
723デフォルトの名無しさん
垢版 |
2021/04/11(日) 08:25:38.30ID:0+LhiyyI
>>722
「ボタンの押している状態」
「ボタンの押している状況」
「ボタンの状況」
俺からすれば言葉遊びのように見えるが
では何がどう違うのか説明してくれ
2021/04/11(日) 08:28:12.36ID:CjAFb9gH
> 「ボタンを押している状態」をクラス
ButtonPressedClass

> 「ボタンの状況」を把握するクラスを作ること
ButtonStateScannerClass

ぜんぜん違うだろ
725デフォルトの名無しさん
垢版 |
2021/04/11(日) 08:36:11.20ID:0+LhiyyI
>>724
馬鹿か?
ボタンのイベント処理そのものをクラスにするなんて常識としてあり得ないだろ?
そういう言葉遊びはもう沢山だから
キチンとボタンの状態を管理する話から話を逸らすなよ。
で、スクロールの件は?早く答えてくれよ。
2021/04/11(日) 08:37:59.54ID:CjAFb9gH
> ボタンのイベント処理そのものをクラスにするなんて常識としてあり得ないだろ?
誰もそんな話はしてない
どこをみて「ボタンのイベント処理そのものをクラス」と
書いてあると思ったのか?

そして>>724へのレスはなし。
都合の悪いレスは無視して違う話を始めるw
727デフォルトの名無しさん
垢版 |
2021/04/11(日) 08:45:17.73ID:0+LhiyyI
>>726
>>724ぬ対してのレスは見えなかったことになってるのか
ButtonPressedClassって
どう見てもボタン押下しましたクラスだが
それはボタンを押下したイベントを司るクラスでないなら何のクラスなんだ?
こっちからしてみるとそっちの言ってることはさっきから支離滅裂なことにしか見えないんだが?
2021/04/11(日) 08:50:34.59ID:CjAFb9gH
> どう見てもボタン押下しましたクラスだが
> それはボタンを押下したイベントを司るクラスでないなら何のクラスなんだ?

ボタンが押された状態のクラスだろ
なんでもう押されてしまった状態なのに
ボタンを押すイベントを司らなければならないのか
ボタンを押すイベントが発生した後のクラスだろうに
はぁ英語も通じないのか・・・
729デフォルトの名無しさん
垢版 |
2021/04/11(日) 08:56:03.31ID:0+LhiyyI
>>728
そのボタンが押された後に発生したクラスで何をやっているのか?
押された後の状態管理で有れば>>724で言っている下のクラスとは何が違うのか?
730デフォルトの名無しさん
垢版 |
2021/04/11(日) 08:59:35.24ID:7+Z1QVDQ
チンポという主体意思決定存在(サブジェクト)を、オブジェクト指向で表現するということなんだが?

>>695
>「〜が」の時点で主語(サブジェクト)だから、それはサブジェクト指向やぞ

カンタンに表記すれば、
Subject = 法則,
Object = (法則によって規定される)集団
になるんでしょう。
これをコンピュータのプログラミングに当てはめると、
Subject = コンピュータの処理方法,
Object = プログラマが設定可能な部分
になるんではないかと。
https://note.com/nephews_tech/n/n02380a2cc0e3
2021/04/11(日) 09:01:34.10ID:CjAFb9gH
>>729
> そのボタンが押された後に発生したクラスで何をやっているのか?

>>716より
> それに「オブジェクトを押した状態」をクラスにするのが
> アホ設計って話をしてるよね

「ボタンが押された後に発生したクラス」なんてのを
作るのがアホと言ってる俺に聞くなアホ
2021/04/11(日) 09:03:59.94ID:CjAFb9gH
> >>724で言っている下のクラスとは何が違うのか?

それはお前が「ボタンを押してる状態のクラス」と聞いて
「ボタンの押してる状態を把握するを把握するクラス」と勘違いしたものだろ
お前が想像で作り出したものなんか知らんわ
733デフォルトの名無しさん
垢版 |
2021/04/11(日) 09:07:23.17ID:7+Z1QVDQ
>>718
ここで話を本質に戻すと、もしチンポをクリントンのインナークラスとして固定してしまうと、

>>626
>人格は乗っ取られているかも知れないがそれはクリントンの状態変化であって

『チンポに人格を乗っ取られた【状態】のクリントン』を【再定義】【継承】が不可欠ということだ!
734デフォルトの名無しさん
垢版 |
2021/04/11(日) 09:07:31.72ID:0+LhiyyI
>>731
なんだ結局>>724で言ってたものの上下は
言葉を変えただけの言葉遊びか
735デフォルトの名無しさん
垢版 |
2021/04/11(日) 09:10:06.68ID:0+LhiyyI
>>732
まぁいいや何が言いたかったかは大体分かった。
後はスクロールの件だけ答えてくれればいいや。
2021/04/11(日) 09:10:12.49ID:CjAFb9gH
>>734
どこを読んで言葉遊びだと思ったの?
全く違うものであるといったよね?

「どこを読んで同じものだと思ったの?」
次のレスはそれだけ言えばいいよw
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況