トップページ > プログラム > 2016年09月21日 > 43fglGIp

書き込み順位&時間帯一覧

1 位/195 ID中時間01234567891011121314151617181920212223Total
書き込み数34000000000000101211000013



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん
クラス名・変数名に迷ったら書き込むスレ。Part26 [無断転載禁止]©2ch.net

書き込みレス一覧

クラス名・変数名に迷ったら書き込むスレ。Part26 [無断転載禁止]©2ch.net
658 :デフォルトの名無しさん[sage]:2016/09/21(水) 00:28:08.62 ID:43fglGIp
>>655
「BarはFooである」に偽が返ったら否定しているって分かるでしょ

IF文が判断をするのであって、その条件式に入れるオブジェクトが判断しないの
例え話の君の部分がIF文、条件式に入るオブジェクトがペンなの
君はペンであるかどうかをIF文でペンの状態を見ながら判断するけど
ペンに「君はペンですか?」って尋ねながら判断しないでしょ
だから
if x is pen then Yes, otherwise No.
が成り立つの、メソッド名は疑問文にならないの
クラス名・変数名に迷ったら書き込むスレ。Part26 [無断転載禁止]©2ch.net
660 :デフォルトの名無しさん[sage]:2016/09/21(水) 00:36:41.32 ID:43fglGIp
>>657
いい加減、なの言葉が嫌になってきた
論理学の勉強をしてくれ
クラス名・変数名に迷ったら書き込むスレ。Part26 [無断転載禁止]©2ch.net
664 :デフォルトの名無しさん[sage]:2016/09/21(水) 00:57:48.41 ID:43fglGIp
>>661
メソッド名を関係演算子に置き換えてみな
これもブール値を返す

(x > y) → Bool

>演算子はxとyの関係を表す
x is greater than y
何故、「関係」演算子って呼ばれているか?
その関係の状態を(断定して)表し、その真偽を得る演算子だから
決して疑問文ではない
真偽を表すメソッドなら命名に例外はありえない
クラス名・変数名に迷ったら書き込むスレ。Part26 [無断転載禁止]©2ch.net
668 :デフォルトの名無しさん[sage]:2016/09/21(水) 01:08:54.68 ID:43fglGIp
>>663
ペンにはインクの残量がある
ペンが書けるかどうか判断する時、残量を見るだろ
Max100の内、残量が20だとしたら、そのペンは書けると判断出来る
でも、残量が30を切ったらインクを補充したい
その判断をIF文で書いてみ
それらの条件式は断定した形になり、その真偽を問うことになる
決してペンがそれらを判断しない
インクの残量が20を切ったら補充したいなんてペンは知らないのだから
クラス名・変数名に迷ったら書き込むスレ。Part26 [無断転載禁止]©2ch.net
671 :デフォルトの名無しさん[sage]:2016/09/21(水) 01:14:16.97 ID:43fglGIp
>>667
ブール値
クラス名・変数名に迷ったら書き込むスレ。Part26 [無断転載禁止]©2ch.net
674 :デフォルトの名無しさん[sage]:2016/09/21(水) 01:18:35.19 ID:43fglGIp
>>672
xはyより大きいと断定した場合の真偽値
クラス名・変数名に迷ったら書き込むスレ。Part26 [無断転載禁止]©2ch.net
675 :デフォルトの名無しさん[sage]:2016/09/21(水) 01:42:16.86 ID:43fglGIp
>>672
ちゃんと答えたのに終わり?
クラス名・変数名に迷ったら書き込むスレ。Part26 [無断転載禁止]©2ch.net
687 :デフォルトの名無しさん[sage]:2016/09/21(水) 14:50:24.12 ID:43fglGIp
>>682
単純にブール値を返すメソッドの解釈の話
どちらの主張も命名としては、x.isFoo() → boolで同じ

一方は、これは疑問文であり、戻り値のbool型には疑問文の答えの意味が含有する
もう一方は、xを断定した場合に、その断定に対する真偽を返すだけであり
IF文やWihle文などの条件式に利用された際に、その結果の意味が含有される

前者は、x.isFoo()この時点で「xはFooですか?」とオブジェクトxに問いかけるとし
その結果のブール値が、yes/noの意味があるって解釈
つまり、オブジェクト自体が判断して答える

後者は、x.isFoo()は「xはFooである」と断定したと解釈し、bool値はその断定の真偽の意味しかない
If x is Foo then Yes else No.のように条件式に当てはめて初めてその結果に意味が生まれる
あくまでオブジェクトxの状態を見て、その判断をxの外側でする

そもそもbool値を返すメソッドやプロパティは、If文やWhile文の条件式に利用される
条件式とは条件を指定するために使用される論理式であり、断定した文じゃなきゃおかしい
その条件を満たすかどうかの真偽が返るだけなのよ

自分は後者の考え
クラス名・変数名に迷ったら書き込むスレ。Part26 [無断転載禁止]©2ch.net
693 :デフォルトの名無しさん[sage]:2016/09/21(水) 16:18:45.60 ID:43fglGIp
>>692
うん、いいね、少しずつ近づいてきている
x.isPrimeNumber()は「xが素数である」と、その状態を見ている
状態はCondition、IF文の条件式もCondition

>また、if自身はconditionの中身なんて知らない。
当たり前、だからx.isPrimeNumber()と断定してその真偽を得ている

>「君=if」なら、ifはペンが問題になっているなんて知らない。
そうだよ、だから条件式は真偽でしかない
ペンが返したyes/no、言い換えるならI'm Pen/ I'm not Penなんて分からない
クラス名・変数名に迷ったら書き込むスレ。Part26 [無断転載禁止]©2ch.net
705 :デフォルトの名無しさん[sage]:2016/09/21(水) 17:34:15.26 ID:43fglGIp
>>701
じゃあさ、Penにインク残量amountがあったとするよね
インク残量が0の時、ペンは書けないからペンと見なさないとした場合
君はそれがペンであるかを判断するIF文で残量を使ってどう書く?
勿論、x.isPen()メソッドは存在しない

if x.amount > 0 then yes, x is a pen else no, x is not a pen.

って書くでしょ
ペンのインク残量、ペンのペンたる状態を判断するよね
インク残量以外にペンである事の条件が増えた場合
それらを使ってIF文で判断するのは面倒臭いよね
だからペンである状態を表すx.isPen()メソッドが用意される
オブジェクトxはまだPenとして機能しているかの真偽を表す

true/falseとyes/noは同じ二者択一だけど、全く意味が違う
クラス名・変数名に迷ったら書き込むスレ。Part26 [無断転載禁止]©2ch.net
708 :デフォルトの名無しさん[sage]:2016/09/21(水) 17:47:23.92 ID:43fglGIp
>>706
了解

人に説明するのって自分の頭の中が整理されるから楽しいな
論理思考なんて全く得意じゃないがスッキリした
クラス名・変数名に迷ったら書き込むスレ。Part26 [無断転載禁止]©2ch.net
714 :デフォルトの名無しさん[sage]:2016/09/21(水) 18:54:59.09 ID:43fglGIp
>>713
墓穴掘っているから最後に指摘しておくわ

MyUtility.IsPrimveNumber(3)

もしこれが疑問文なら絶えずNOを返す
Is Prime Numer 3? って意味だから

素数は3ではない
素数は3でもあるし、他の数値でもあるって答えだから

手続き型言語やStaticメソッドの場合
'X' is PrimeNumber(X)と見なしているの、それを命名規則としているの
クラス名・変数名に迷ったら書き込むスレ。Part26 [無断転載禁止]©2ch.net
718 :デフォルトの名無しさん[sage]:2016/09/21(水) 19:19:00.12 ID:43fglGIp
>>717
自分の間違いを自分で言ってんじゃんw

こっちの主張は三単現使っていても一貫している
x.isFoo()
x.hasNext()
x.contains(o)

そっちは勝手にis始まりを疑問文として解釈して
三単現を妥協としているだけじゃないの
疑問文ならDoやDoesを使えば?


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。