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


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

クラス名・変数名に迷ったら書き込むスレ。Part26



1 名前:デフォルトの名無しさん mailto:sage [2015/12/20(日) 23:36:31.74 ID:uXFKqVsm.net]
クラス名、変数名のつけ方に悩んだら書き込むスレです。

命名規則や設計の善し悪しについて議論するのは基本的に禁止。

前スレ
クラス名・変数名に迷ったら書き込むスレ。Part25
peace.2ch.net/test/read.cgi/tech/1416550677/

645 名前:デフォルトの名無しさん mailto:sage [2016/09/20(火) 11:24:20.84 ID:KnjyA1F8.net]
関数名の流れだからな
「これはペンですか?」を関数名としてみたらいい
その答え(戻り値)が真「かどうか」って説明のがよかったな

646 名前:デフォルトの名無しさん mailto:sage [2016/09/20(火) 11:45:19.36 ID:w3uYhEGb.net]
ペンか否か? → ペン?
なんら問題を感じない

647 名前:デフォルトの名無しさん mailto:sage [2016/09/20(火) 21:15:34.35 ID:or4BStYo.net]
これはペンであるという命題があって真であるか偽であるかという議論ができる
これがさすものはこの場合オブジェクトなので
英文はThis object is a penとなる
プログラム言語の構文による制約を加えるとobj.IsPenが正解となる

648 名前:デフォルトの名無しさん mailto:sage [2016/09/20(火) 21:22:19.81 ID:zA4ozj3G.net]
だからそれは違うってw
変数の値やメソッドの返り値が表しているのはyes/noであってright/wrongじゃないw

649 名前:デフォルトの名無しさん mailto:sage [2016/09/20(火) 21:47:00.75 ID:or4BStYo.net]
まあ人間は考えるだけなら自由だからいいけど

650 名前:デフォルトの名無しさん mailto:sage [2016/09/20(火) 21:48:30.22 ID:EJ4QdJ/o.net]
違う。
True / false
何が真であるかは仕様によるので暗記するかそのつど調べてください。
プログラム言語における "?" は戻りが不明瞭な場合に、それをプログラマに対して明示的に伝える役目を果たします。

651 名前:デフォルトの名無しさん [2016/09/20(火) 21:51:57.12 ID:+3HpdUPY.net]
いいえ。それはパンです。

652 名前:デフォルトの名無しさん mailto:sage [2016/09/20(火) 22:12:38.89 ID:zA4ozj3G.net]
話の通じないお方。

例えば与えられた自然数が素数ならtrueを返すメソッドがある時、
普通のプログラマはその戻り値は「xが素数であるかどうか」(yes/no)を表していると考えるでしょ?

「xが素数である」という命題が正しいかどうか(right/wrong)を表しているって考える人いる?
まずいないでしょ。

前者は、別の言い方をしたら「xは素数ですか?」っていう質問に対する答えだよね。

653 名前:デフォルトの名無しさん mailto:sage [2016/09/20(火) 22:21:59.98 ID:qJ9FA8Jd.net]
もしもxが素数であるかどうかなら〜
こりゃ不自然すぎて引くわ

もしもxが素数であるなら〜
うん自然でわかりやすいね

xが素数であるかどうかでない
ひええ

xが素数でない
イイね

xが素数であるかどうかかつyが偶数かどうか
もう意味わからん

xが素数であるかつyが偶数である
excellent!



654 名前:デフォルトの名無しさん mailto:sage [2016/09/20(火) 22:23:08.40 ID:zf/Fc8Vs.net]
すまんが、そんな日常言語のような解釈はしていない

655 名前:デフォルトの名無しさん mailto:sage [2016/09/20(火) 22:29:53.66 ID:OvbuO/pb.net]
>>646
厳密に言うと
if x is prime number then Yes otherwise No.
真偽判定の結果がyes/noなの
x.isPrimeNumber()とあった場合、xに問うているのではなく
xの状態を確かめているの
で、その状態をIf文で審議して、yes/noを出力するの

656 名前:デフォルトの名無しさん mailto:sage [2016/09/20(火) 22:38:27.08 ID:OvbuO/pb.net]
>>646
もう少し分かり易い話をすると
君が目の前にペンを見せられて「これはペンですか?」と尋ねられたら
君は頭なの中で「これはペンの形をしている」や「これはペンの機能を有している」と
ペンがペンであるかの状態を審議して「Yes」と答えるわけだ

657 名前:デフォルトの名無しさん mailto:sage [2016/09/20(火) 23:20:55.50 ID:zA4ozj3G.net]
何を言ってるのか意味が分かりませんw

658 名前:デフォルトの名無しさん mailto:sage [2016/09/20(火) 23:25:54.74 ID:zA4ozj3G.net]
っていうか、命名の話をしてるんだけど分かってるのかな?w

変数の名前はその値が何を意味しているかを表しているべきだし、
メソッドについても、少なくともboolを返すメソッドについては、普通はメソッド名は
戻り値が何を意味しているかを表しているべきだ。

さて>>646に戻って、「与えられた自然数が素数ならtrueを返すメソッド」の戻り値は
何を意味しているでしょうか。

659 名前:デフォルトの名無しさん mailto:sage [2016/09/20(火) 23:31:02.93 ID:zf/Fc8Vs.net]
さてはtrueだな!

660 名前:デフォルトの名無しさん mailto:sage [2016/09/20(火) 23:52:16.14 ID:OvbuO/pb.net]
>>652
オブジェクトは状態を維持するの

君はペンに「君はペンですか?」って尋ねるの?
ペンは尋ねられたら自分が何者か答える機能がついているの?
それがペンであるかの判断は、ペンの状態を見た君の判断であって
ペンが自分が何者かを答えるわけではないの

>っていうか、命名の話をしてるんだけど分かってるのかな?w
だから、ブール値を返すメソッドやプロパティはその状態を返しているの
Bar.isFoo()なら「BarはFooである」って意味なの
決して「BarはFooですか?」にならないの

661 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 00:07:28.58 ID:Rtj0ivpx.net]
>>654
何が言いたいのかよくわからんけど、君の例で言ったら、
Bar.isFoo()がfalseを返す時、その値は「BarはFooである」を意味してないことは分かりますか?

違うよね。
それは「BarはFooではない」ことを意味している。

662 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 00:09:08.73 ID:/kyzsMvg.net]
オブジェクト指向じゃない言語での命名ってどんな感じなん?

663 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 00:15:44.88 ID:Rtj0ivpx.net]
っていうか、>>654みたいなboolを返すメソッドがある時、
その戻り値が「BarはFooである」っていう命題の正誤を表すと考えるプログラマはいないよ、
ってそんな難しい話かな?w

>>654はどうだか知らないけど、普通の人は、戻り値は「BarはFooであるかどうか」を表していると考えるんだよ。
別の表現をすれば、それは「BarはFooですか?」という質問に対する回答を表していると考える。



664 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 00:28:08.62 ID:43fglGIp.net]
>>655
「BarはFooである」に偽が返ったら否定しているって分かるでしょ

IF文が判断をするのであって、その条件式に入れるオブジェクトが判断しないの
例え話の君の部分がIF文、条件式に入るオブジェクトがペンなの
君はペンであるかどうかをIF文でペンの状態を見ながら判断するけど
ペンに「君はペンですか?」って尋ねながら判断しないでしょ
だから
if x is pen then Yes, otherwise No.
が成り立つの、メソッド名は疑問文にならないの

665 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 00:28:14.35 ID:3n4gTsBt.net]
>>657
なんで疑問文にしちゃうかなwwwだっせえwww

666 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 00:36:41.32 ID:43fglGIp.net]
>>657
いい加減、なの言葉が嫌になってきた
論理学の勉強をしてくれ

667 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 00:36:49.61 ID:Rtj0ivpx.net]
だめだ何回繰り返しても人の話が頭に入らないタイプっぽいw

boolを返すメソッドの名前は、その戻り値が何を意味しているかを表しているべきである、
ってそんなに難しい話かなw

オブジェクトが判断とか何のことやらw

668 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 00:39:24.66 ID:atzPe4+g.net]
ifで始まる英文は疑問文ではない。

669 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 00:53:15.14 ID:/kyzsMvg.net]
AはBである、BはCである、だからAはDである、
みたいな、途中までは納得できるのに最後ですれ違う違和感というかなんというか

670 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 00:57:48.41 ID:43fglGIp.net]
>>661
メソッド名を関係演算子に置き換えてみな
これもブール値を返す

(x > y) → Bool

>演算子はxとyの関係を表す
x is greater than y
何故、「関係」演算子って呼ばれているか?
その関係の状態を(断定して)表し、その真偽を得る演算子だから
決して疑問文ではない
真偽を表すメソッドなら命名に例外はありえない

671 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 01:01:38.90 ID:/kyzsMvg.net]
この流れで「ありえない」って言葉は、熟慮してから使ったほうがいいんじゃないかなって

672 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 01:01:45.26 ID:wWPv3Jxl.net]
>>661
> boolを返すメソッドの名前は、その戻り値が何を意味しているかを表しているべきである、
ここにはあんまり異論は無いと思う。

わからないのは、 >>646 の「別の言い方をしたら」とか >>657 の「別の表現をすれば」とか、
なんでわざわざそんな言い替え(読み替え)をしないといけないのか、というところ。

"if Bar is Foo, ..." っていう意味のコードは当然 "if (Bar_isFoo()) ..." となっていたほうが
読みやすい。あなたはこれを "if (isBarFoo()) ..." と書けと言うのか?そうだとしたら、なぜ?
何がうれしいの?

673 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 01:03:04.24 ID:Rtj0ivpx.net]
>>664
何が言いたいのかさっぱり分からないけど、
一度でいいからこちらの質問に正面から答えて見たら?

bool b = x > y;

このbの値が何を表しているのか、日本語で表現してみて。



674 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 01:08:54.68 ID:43fglGIp.net]
>>663
ペンにはインクの残量がある
ペンが書けるかどうか判断する時、残量を見るだろ
Max100の内、残量が20だとしたら、そのペンは書けると判断出来る
でも、残量が30を切ったらインクを補充したい
その判断をIF文で書いてみ
それらの条件式は断定した形になり、その真偽を問うことになる
決してペンがそれらを判断しない
インクの残量が20を切ったら補充したいなんてペンは知らないのだから

675 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 01:10:02.18 ID:Rtj0ivpx.net]
>>666
「xが素数かどうかを表す値」は「xが素数ですか?という質問に対する答えを表す値」と同じだから。
同じであれば、より簡素に表現できる方法を採用するのは当たり前。
前者は簡単な英語にならないよね?

後半はそんなこと言ってないよ。

676 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 01:12:47.04 ID:/kyzsMvg.net]
>>669
日本語でコメントを付けるなら前者のほうが収まり良さそう
あ、いや、言いたいことは分かるんだけども

677 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 01:14:16.97 ID:43fglGIp.net]
>>667
ブール値

678 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 01:16:12.11 ID:Rtj0ivpx.net]
>>671
みっともないよそういうの。

679 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 01:17:59.20 ID:wWPv3Jxl.net]
>>669
え?
x is a prime number → x_is_prime_number でいいんじゃないの?
「簡単な英語にならない」ってどういうこと?英語にしたらどうなると思ってるのか教えて。

680 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 01:18:35.19 ID:43fglGIp.net]
>>672
xはyより大きいと断定した場合の真偽値

681 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 01:42:16.86 ID:43fglGIp.net]
>>672
ちゃんと答えたのに終わり?

682 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 03:16:56.97 ID:Rtj0ivpx.net]
>>673
何度も書いてるけどさ、それは日本語で言えば「Xは素数である」っていう定言命題だよね。>>646

「(Xが)素数かどうか」はwhether (X is) a prime number or not
これをメソッド名に直訳したらGetWhetherPrimeNumberOrNot
ってとこだろうけど、こんな冗長な名前は使えないよね。

>>669に書いたことを認めるのであれば、これをIsPrimeNumberに「意訳」できる。

683 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 04:03:47.54 ID:wWPv3Jxl.net]
>>676
その定言命題(「Xは素数である」=「xが素数」(>>669))で済むところをなぜ意訳して
疑問文にしなければならないのか、したいのか、というところを問うているのです。



684 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 04:13:30.84 ID:wWPv3Jxl.net]
正直、「日本語で言えば」とか直訳とか意訳とかいうのがどうでもいい。
if, while, assert などに続けて自然な英語で読みくだせるように名前を考えてほしい。

685 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 05:42:58.72 ID:OU/LK8hF.net]
いい加減うぜーから消えろよゴミ

686 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 07:29:53.44 ID:ICiqip2R.net]
そもそも自然言語の [A or B] は
[Aですか?もしくはBですか?どっちですか?] だけど、

プログラム(スクリプト)の場合は、
Aを実行してその結果が気に入らなければ、Bを実行して、Bの実行結果を戻りとして採用するが、
Aを実行した副次的変動、及び実行コストについては問われることとなる。

これは、オニオンスープですか?それとも中華スープですか?
と聞かれたとき、両方のスープを飲んだあとに 「中華スープです!」と答えるようなもの。
でも彼はオニオンスープの代金(コスト)は払っているし、腹の中にもしっかりスープは入っている。
そしてもし彼が「オニオンスープです!」と答えたときは、中華スープは飲んでいないのだ。
不思議だね。


なにが言いたいかと言うと、単語や名称ならともかく、
"?" や "or" のような道理の組み立てを必要とするものを自然言語でそのまま当てはめようとするのは自然じゃないと思う。
長い文章で AorB を説明するなら普通に可能だけど。

687 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 08:32:12.71 ID:zyB6ba4K.net]
>>680
> Aを実行してその結果が気に入らなければ、Bを実行して、Bの実行結果を戻りとして採用するが、

知ったかは黙ってろ

688 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 09:05:06.11 ID:3bSG8ND0.net]
これをどう表現するかの派閥争いって事でいいの?
if( x < y ) A else B

1, 「もし」xがyより小さいならA, 違えばB
2, xyが(x < y)「かどうか」判断して正しければA, 違えばB

こんな感じ?

689 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 09:51:40.02 ID:atzPe4+g.net]
どうでもいい領域に入ってるなw

690 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 11:53:00.58 ID:ObWHCjaA.net]
>>677
その答えは>>646に既に書いてある

あなたに逆に聞くけど、あなたはxが素数ならtrueを返すメソッドがある時、
そのメソッドの戻り値は、

(1) xが素数であるかどうか

を表していると考えるのか、それとも

(2) 「xは素数である」という命題が正しいかどうか

を表していると考えるのか。
(1)であるならそんな命名はありえない

691 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 14:03:45.22 ID:EAULLchH.net]
我流japlishの典型だな
ちょっと英語でレスしてみろよおまえ
楽しい英文が見れそうだ

692 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 14:05:23.37 ID:atzPe4+g.net]
the truth is out there..

693 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 14:50:24.12 ID:43fglGIp.net]
>>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文の条件式に利用される
条件式とは条件を指定するために使用される論理式であり、断定した文じゃなきゃおかしい
その条件を満たすかどうかの真偽が返るだけなのよ

自分は後者の考え



694 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 15:19:51.23 ID:CI/H1dYR.net]
いや、前者でしょ、普通

695 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 15:24:33.79 ID:fkT31Cim.net]
前者なんてありえない
質問に質問で返す池沼の領域

696 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 15:33:57.34 ID:ObWHCjaA.net]
一応突っ込んでおくと、>>687の人は

(1) boolの値bが何を意味しているか

(2) if文でboolの値bを使って分岐する処理が何を意味するか

この2つのまったく別の問題を混同してるんだろうね恐らく。
オブジェクトが判断とか外が判断とか、何を言ってるのかよく分からない部分が多過ぎるけど。

何度も書いてるけど、メソッドにしろ変数にしろ、普通は(1)に基づいて決める。

697 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 15:34:20.29 ID:CI/H1dYR.net]
> x.isFoo()この時点で「xはFooですか?」とオブジェクトxに問いかけるとし
> その結果のブール値が、yes/noの意味があるって解釈
がありえないというのがありえないんですけど

698 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 15:59:10.55 ID:CI/H1dYR.net]
さかのぼってみたが、ここからおかしいな。
>>649
> x.isPrimeNumber()とあった場合、xに問うているのではなく
> xの状態を確かめているの
> で、その状態をIf文で審議して、yes/noを出力するの
x.isPrimeNumber()は、xにお前は素数かという問い合わせをしているのであって、状態を確かめているわけではない。
また、if自身はconditionの中身なんて知らない。

>>650
> 君が目の前にペンを見せられて「これはペンですか?」と尋ねられたら
> 君は頭なの中で「これはペンの形をしている」や「これはペンの機能を有している」と
> ペンがペンであるかの状態を審議して「Yes」と答えるわけだ
「君=if」なら、ifはペンが問題になっているなんて知らない。

699 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 16:18:45.60 ID:43fglGIp.net]
>>692
うん、いいね、少しずつ近づいてきている
x.isPrimeNumber()は「xが素数である」と、その状態を見ている
状態はCondition、IF文の条件式もCondition

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

>「君=if」なら、ifはペンが問題になっているなんて知らない。
そうだよ、だから条件式は真偽でしかない
ペンが返したyes/no、言い換えるならI'm Pen/ I'm not Penなんて分からない

700 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 16:40:32.90 ID:CI/H1dYR.net]
>>693
> x.isPrimeNumber()は「xが素数である」と、その状態を見ている
見てるって誰が?
登場人物はxとifしかないが。

701 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 16:41:37.46 ID:CI/H1dYR.net]
>>693
> 当たり前、だからx.isPrimeNumber()と断定してその真偽を得ている
誰が断定するんだ?
誰も断定なんてしない。

702 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 16:50:20.01 ID:ObWHCjaA.net]
擬人化してるにしても何言ってるのか意味わかんないよねw
普通に考えれば、「判断している」主体はif文が存在するクラスのオブジェクトだと思うんだけどw

703 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 16:53:19.41 ID:CI/H1dYR.net]
君も何がいいたいのかよくわからんが、
>>696
> 普通に考えれば、「判断している」主体はif文が存在するクラスのオブジェクトだと思うんだけどw
判断なら、ifもxもするだろ。



704 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 16:58:17.13 ID:JUd66AJb.net]
こいつ他の板でも発狂してるアホだからもうやめよう
構うだけ無駄

705 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 17:02:59.13 ID:CI/H1dYR.net]
まさか、ID:43fglGIp派が多数なのか?
信じられん

706 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 17:03:05.41 ID:ObWHCjaA.net]
>>697
ブラックボックスの内側の視点と外から見た視点を混同している気がするけど、
まあそこは泥沼みたいだからどうでもいいやw

言いたいことはとにかく、>>687が何を言ってるのか分からないということ。

707 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 17:09 ]
[ここ壊れてます]

708 名前::51.28 ID:CI/H1dYR.net mailto: >>700
まぁ俺もどうでもいいっちゃいいんだが、
> 後者は、x.isFoo()は「xはFooである」と断定したと解釈し、bool値はその断定の真偽の意味しかない
> If x is Foo then Yes else No.のように条件式に当てはめて初めてその結果に意味が生まれる
> あくまでオブジェクトxの状態を見て、その判断をxの外側でする
という文章に、強烈な違和感を感じたのでちょっと突っ込んでみただけ。
[]
[ここ壊れてます]

709 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 17:23:24.52 ID:HZYtd1tc.net]
>>701
俺には言葉遊びをしているようにしか思えないねw

シンプルに本質を捕えた方がいい。
しつこいけど本質はこうだよね。

キューが満杯の時にtrueを返すメソッドがあったとして、そのメソッドの戻り値は、

(1) キューが満杯であるかどうか

を意味していると考えるのか、それとも

(2) 「キューは満杯である」という定言命題が正しいかどうか

を意味していると考えるのか。


(2)って考える奴はあんまりいないと思うよ、っていうのが俺の意見なんだけど。

710 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 17:30:19.36 ID:atzPe4+g.net]
議論の核心は、isプレフィックスのついたメソッド名は疑問形かだろ?
答えはNO

711 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 17:30:55.79 ID:6M3UB5Bb.net]
こういうのに延々噛み付くやつって大抵句読点使いまくる不思議
やっぱり頭おかしいやつの代名詞だな句読点使いは

712 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 17:34:15.26 ID:43fglGIp.net]
>>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は同じ二者択一だけど、全く意味が違う

713 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 17:36:35.16 ID:bXLzC7XF.net]
もういいよ
バカに説明しても無駄だからそのままにしとけ
どうせ絡むことはない



714 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 17:41:40.44 ID:HZYtd1tc.net]
>>703
だとすると、staticメソッドでIsで始まるメソッド書けなくなるよ。

715 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 17:47:23.92 ID:43fglGIp.net]
>>706
了解

人に説明するのって自分の頭の中が整理されるから楽しいな
論理思考なんて全く得意じゃないがスッキリした

716 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 17:50:08.73 ID:HZYtd1tc.net]
論理思考w
自分で自分の言葉遊びに幻惑されているようにしか見えないけどw

717 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 18:00:42.90 ID:3bSG8ND0.net]
>>687
自分で「かどうか」って言ってるやん?

718 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 18:04:10.15 ID:HZYtd1tc.net]
その通りw

結局彼は、「bool値が何を意味しているか?」という根本的な問題から目をそらすために、
下らない言葉遊びで自分で自分を欺瞞しているだけにみえる。

719 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 18:27:25.76 ID:atzPe4+g.net]
>>707
書けなくなる理由がわからん。なんか例ある?

720 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 18:43:13.37 ID:HZYtd1tc.net]
>>712
どうぞ>>646

Is疑問分ではないとしたら、例えば適当なユーティリティークラスに

bool IsPrimeNumber(int x){...}

のように書く訳にはいかないよね。
だって

bool b = MyUtility.IsPrimveNumber(3);

これはMyUtilityが素数かどうかを検査している訳ではないからねw

721 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 18:54:59.09 ID:43fglGIp.net]
>>713
墓穴掘っているから最後に指摘しておくわ

MyUtility.IsPrimveNumber(3)

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

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

手続き型言語やStaticメソッドの場合
'X' is PrimeNumber(X)と見なしているの、それを命名規則としているの

722 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 19:01:18.62 ID:atzPe4+g.net]
>>713
Javaのstring.isEmpty()とStringUtils.isEmpty(str)を例に
読み下しがおかしくなるのはstackoverflowでも指摘されてたよ
しかしネイティブ的には基本的に前者で命名すべきなんだそうだ
つーか、ネイティブの感覚として疑問形なのかこれ?

723 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 19:03:16.83 ID:HZYtd1tc.net]
>>714
相変わらず何言ってるのか全然分からないけど、普通の人は、

static bool IsPrimeNumber(int x){...}

こういうメソッドを見たら、それは

Is x a prime number ?

に対する回答を与えるメソッドだと解釈する。



724 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 19:09:55.40 ID:HZYtd1tc.net]
何でもそうだけどさ、この世にはいろんなトレードオフがあるんだから
いつでも原理主義は貫けないし、いろんな妥協が必要になるけど、それでも
本来の原則が何であるかを考えておくのは無駄じゃないと思うけどね。

ContainsとかHasとか三単現使うのは、あれはboolを返すメソッドやプロパティが
疑問形であることを否定しているというより、むしろ妥協だよね。

725 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 19:19:00.12 ID:43fglGIp.net]
>>717
自分の間違いを自分で言ってんじゃんw

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

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

726 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 19:33:12.66 ID:hilSVXbT.net]
三単現の意味すら理解してないのかこの阿呆
さすがコーディング業界で一番嫌われてるジャップ
ネイティブが違うっていっても意見きかないんだろうなこういうやつ

727 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 19:36:52.05 ID:aYh3Hfox.net]
単に流儀の問題だから、「あぁ、そういう風に使う人もいるんだね」で済む話。
自分らの流儀と違うからといって、他の流儀の存在を否定したりバカにしたりするのは、
いささか了見が狭いんじゃないかな。
ちょっと滑稽にすら見えるよ。


これ、コピペされるかな

728 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 19:41:56.08 ID:HZYtd1tc.net]
>>718
意味が分からない。

だから、君の理屈だと>>716のIsPrimeNumberのような名前はありえないはずだけど、
ではどういう命名をしますか?

っていうか、なぜIsで始まるメソッドを疑問文と解釈するべきか、
昨日から何度も繰り返し書いているのに何も通じてないのねw

729 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 19:43:15.08 ID:HZYtd1tc.net]
まあ話が通じない理由もはっきりしている。

これも繰り返しになるけど、>>718の人が「bool値が何を意味しているか?」
という根本の問題に向き合うことを避けているからだね。

730 名前:デフォルトの名無しさん [2016/09/21(水) 19:46:43.96 ID:G4TEirIP.net]
プログラム言語の真偽値には単に0か1かの二択以上の意味はないんじゃない?
それに意味を与えるのはプログラマ次第
信じるか信じないかはあなた次第!


これ、コピペされるかな

731 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 19:46:48.90 ID:HZYtd1tc.net]
彼は>>702に挙げた問題に答えない。
正確にいうと、答えられない。
答えた途端に自説が崩壊するからねw

732 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 19:48:16.61 ID:atzPe4+g.net]
>>723
I want to believe ..

733 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 19:48:41.35 ID:HZYtd1tc.net]
>>725
あなた疲れているのよ



734 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 19:57:48.89 ID:HZYtd1tc.net]
あえて書いておくけど、俺の説にも弱点がある。

例えばメソッド名がIsNotFullみたいにメソッド名にnotが入っている時、
これを疑問文だと解釈すると、trueはNotFullを意味するのかFullを意味するのか
よく分からなくなると思う。

735 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 20:26:27.86 ID:GMFH5q4b.net]
>>688
ばーか

736 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 21:26:05.02 ID:G20JCIUK.net]
まだやってんのか馬鹿だねぇ
論理式は命題だって10000年前から決まってんだろ

737 名前:デフォルトの名無しさん mailto:sage [2016/09/21(水) 23:14:53.93 ID:JQlIDvt7.net]
一人で発狂してるバカの相手するバカがいるからしょうがない

738 名前:デフォルトの名無しさん mailto:sage [2016/09/22(木) 09:38:13.81 ID:seQBi4rd.net]
どっちがバカか知らんけどどうでもいいからよそでやれ

739 名前:デフォルトの名無しさん mailto:sage [2016/09/22(木) 10:27:58.80 ID:dBUDVp/1.net]
>>731
いちばんどうでもいいのはお前のようなレスだけどな。
こういう自分棚上げバカって本当重症だな。

740 名前:デフォルトの名無しさん mailto:sage [2016/09/22(木) 10:54:19.85 ID:RJqfV8Es.net]
>>732
>>732
ウザいわ

741 名前:デフォルトの名無しさん mailto:sage [2016/09/22(木) 12:36:06.24 ID:siBNAeUp.net]
ID:HZYtd1tc
ID:dBUDVp/1

742 名前:デフォルトの名無しさん mailto:sage [2016/09/23(金) 13:47:19.15 ID:yiD5PjMP.net]
obj.empty?

ruby最強

743 名前:デフォルトの名無しさん mailto:sage [2016/10/01(土) 17:48:20.74 ID:p/8qbY3P.net]
Haskellらしいプログラム、それは分割統治。
分割統治で考えられるようになればHaskellの20%はマスターしたも同然。



744 名前:デフォルトの名無しさん mailto:sage [2016/10/04(火) 09:58:11.29 ID:xH60ZwGI.net]
ここって関数名の相談も良いのかな?
更新処理が走る取得ってどうしたら良いだろうか

内容としてはDBから今日の予定を取得する処理で、過負荷を避けるために内部的にデータをキャッシュへ保管してる(更新処理1)
また最終アクセス日時も更新しなければならない(更新処理2)

今までは俺も「getなのに更新してやがるwww」なんて言ってた口なんだけど、get以外に良いネーミングが思いつかないんだ…

745 名前:デフォルトの名無しさん mailto:sage [2016/10/04(火) 10:09:20.61 ID:diMB1qtC.net]
>>737
> 更新処理が走る取得ってどうしたら良いだろうか
取得するだけならgetだろう
取得したものを別の場所へ書き込むならupdateだが






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

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

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