- 1 名前:デフォルトの名無しさん mailto:sage [2015/12/20(日) 23:36:31.74 ID:uXFKqVsm.net]
- クラス名、変数名のつけ方に悩んだら書き込むスレです。
命名規則や設計の善し悪しについて議論するのは基本的に禁止。 前スレ クラス名・変数名に迷ったら書き込むスレ。Part25 peace.2ch.net/test/read.cgi/tech/1416550677/
- 137 名前:デフォルトの名無しさん mailto:sage [2016/02/09(火) 01:42:30.42 ID:8bzgDTVK.net]
- 皆変数名付けるときって、
その用途や目的を名前にする? それとも、その値やオブジェクト自体の性質を名前にする?
- 138 名前:デフォルトの名無しさん mailto:sage [2016/02/09(火) 07:59:59.64 ID:UwgeLdGn.net]
- >>136
後者だとすると、int1とかdouble2とかつけるの?
- 139 名前:デフォルトの名無しさん mailto:sage [2016/02/09(火) 08:41:44.70 ID:DkDaZ+yJ.net]
- >>137
それだとシステムハンガリアンになってしまうので、 例えば、型はどっちもintでも 前者:returnValue←目的が明確 後者:randomValue←性質が明確 後者はアプリケーションハンガリアンにって事になるのかな。
- 140 名前:デフォルトの名無しさん mailto:sage [2016/02/09(火) 09:26:20.05 ID:w2WbMkCd.net]
- >returnValue←目的が明確
には、 Q「その関数の戻り値は何?」 A「はい、戻り値です」 みたいな間抜けさを感じる
- 141 名前:デフォルトの名無しさん mailto:sage [2016/02/09(火) 09:42:07.33 ID:w2WbMkCd.net]
- >>138
「この変数は戻り値にするんだ」というシルシを付ける必要性を感じないけど、 どうしてもってんなら「戻り値には一貫して rc(とかrvとか何か短い接頭辞)を付ける」 ということにでもして、rcRandom とか命名しとけばいいんじゃないかな
- 142 名前:デフォルトの名無しさん mailto:sage [2016/02/09(火) 12:14:12.08 ID:J86avcNA.net]
- CaluculateUnko()
returnValue = 0 foreach(...) returnValue += i return returnValue CaluculateUnko unko = 0 ... CaluculateUnko result = 0 .... う〜ん真ん中かな fowler先生はresultがお好きらしいが
- 143 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 09:07:30.44 ID:51uirxbB.net]
- >>141
fowler先生に倣っている訳じゃないけど、オレもresultをよく使うな メンバー変数と同じで関数内のローカル変数は 関数名->ローカル変数って感じでアクセス演算子があるように考えている その例なら、calculateUnko->resultってな感じで うんこ計算の結果だなって分かり易い クラスが何をするのか明確な場合 Unkoクラスがcalculate()ってメンバー関数を持っていたとすると ローカル変数にUnkoって付けれないから別の命名方法になってしまう その点、resultなら一貫して使える Unko->calculate->resultって感じで考えてね 組む前にルールを作っておけば良いね
- 144 名前:デフォルトの名無しさん mailto:sage [2016/02/13(土) 14:52:21.08 ID:8cicktaC.net]
- ブリブリ
- 145 名前:デフォルトの名無しさん mailto:sage [2016/02/13(土) 20:25:37.89 ID:FsylYHeL.net]
- ふと思ったんだが・・・
[オブジェクト名].[メソッド名] という書き方のプログラム言語において、 メソッド名の付け方として、そのオブジェクトを主語にした動詞を当てる、 という考え方があるよね。 しかし、それでいくとゲッターの主語って何なんだろうな。 target = enemy.getAttackTarget()
- 146 名前:デフォルトの名無しさん mailto:sage [2016/02/13(土
]
- [ここ壊れてます]
- 147 名前:) 20:51:04.66 ID:VLo29AwR.net mailto: 命令形だろ
Hey Bob. Do Something! ↓ bob.DoSomething(); 例題だと おい敵。攻撃対象を取得してこい って事だな 特に違和感はない 動作の主体は敵オブジェクトだし 命令の結果も敵オブジェクト次第だ [] - [ここ壊れてます]
- 148 名前:デフォルトの名無しさん mailto:sage [2016/02/13(土) 20:58:33.71 ID:SEwPFy4e.net]
- メソッドは基本的に命令形。
オブジェクトはその命令形の文では通常文面に現れない隠れた主語(要するに命令される対象) である場合が多いと思うけど、ゲッター/セッターの場合は命令の対象はプログラムで オブジェクトは取得や設定の対象を表していると考えるべきなんじゃないのかね。 要するにその例を英語に対応させると Get attack target from the enemy(, dear my program) ! って感じ?
- 149 名前:デフォルトの名無しさん mailto:sage [2016/02/13(土) 22:13:47.86 ID:FsylYHeL.net]
- >>145
その理屈だと、enemy に対して何かを get せよと命じているのなら、 その結果で何かを所有することになるのは enemy 自身だから、 その何かが戻り値としてこちらに返ってくるのはおかしいよ。 むしろ、enemy がリストを持っていて、 それに何かが新しい要素として追加される感じだ。 enemy に対して give me とか tell me と命令してるのなら、 それが返ってくるのは分かるが。 >>146 つまり、命令する対象について一貫性がないということね。 プログラムであったりオブジェクトであったり。 それなら分かる。 理屈は分かるけど、なんかモヤモヤするな。 まぁ、どうでもいいと言えばどうでもいい些末な事だから、 これ以上は深く追求しないでおくよ。 2人ともありがと。
- 150 名前:デフォルトの名無しさん mailto:sage [2016/02/13(土) 22:57:16.65 ID:EMjDXdMV.net]
- getter/setterはメッセージではなくオブジェクトの属性だよ
命令じゃなくてハンガリアンの一種だ
- 151 名前:デフォルトの名無しさん mailto:sage [2016/02/13(土) 23:15:09.59 ID:5RbRdfcr.net]
- 何かに対する命令なのだとしたら計算機に対する命令だと思う
命令の内容がオブジェクトに対する命令になっていると、意味上の主語になるという認識 enemy.Die(); tell computer to let enemy die enemy.GetAttackTarget(); tell computer to get attack target of enemy
- 152 名前:デフォルトの名無しさん mailto:sage [2016/02/13(土) 23:51:01.09 ID:VLo29AwR.net]
- メモリやストレージから何かを持ってこい(持ってきたモノを返せ)
この()の中が暗黙に省略されてるんだろうな CaluculateUnkoメソッドを見て 計算をしろという命令だから計算をするんだろう しかし計算結果を返せとは書いてないから計算をするだけで返り値はないはずだ と考えるプログラマは少数派だ 何かを取ってこいというメソッド名とメソッドのシグネチャ(戻りの型)を見れば ああこれは何かを取ってきて返すメソッドなんだなとわかる 逆にこれがVoidだったら取ってきて内部に保持するのかなと思うかもしれないな
- 153 名前:デフォルトの名無しさん mailto:sage [2016/02/14(日) 19:32:25.29 ID:rc/qOTMD.net]
- >>148
だね プロパティ持っていない言語だと関数でGetterとSetterを実装するわけだけど 他の関数との差別化をする為に敢えてGetやSetを付けないってこともあるね enemy.TargetToAttack()とか、enemy.Target()とか この場合、enemyのTargetって読めばいい
- 154 名前:デフォルトの名無しさん mailto:sage [2016/02/14(日) 19:50:30.30 ID:71W/Axt9.net]
- 昔から言われてるけどそもそも最初にその辺を明確にしなかったアホが悪い
getterとsetterひっくり返ってるやつとかほんと気持ち悪い
- 155 名前:デフォルトの名無しさん mailto:sage [2016/02/15(月) 05:58:16.57 ID:Y2R/v65U.net]
- >>152
getter(int) int setter() てことか? クラスが変数の値をget クラスが変数にsetって思ってるんじゃね?
- 156 名前:デフォルトの名無しさん mailto:sage [2016/02/15(月) 08:59:39.03 ID:CoPBLH5e.net]
- そんなのあるんか
みたことなかった
- 157 名前:デフォルトの名無しさん mailto:sage [2016/02/15(月) 09:49:53.19 ID:fo9bZXsh.net]
- これはさすがに見たことないな
- 158 名前:デフォルトの名無しさん mailto:sage [2016/02/16(火) 08:27:38.38 ID:55V2OvFf.net]
- そう言うアホな職場でなくて本当によかった
- 159 名前:デフォルトの名無しさん mailto:sage [2016/02/16(火) 17:58:23.74 ID:b0fHFSg3.net]
- プロフェッショナルな現場では
Hoge hoge = foo.EchoHoge(); foo.ChangeHoge(hoge); この書き方が好まれるね <
- 160 名前:デフォルトの名無しさん mailto:sage [2016/02/16(火) 23:56:23.58 ID:bGf55uSQ.net]
- ゲッタをFoo()、セッタをFoo(x)にするのが好きです。
オススメはしませんけど。
- 161 名前:デフォルトの名無しさん mailto:sage [2016/02/17(水) 06:53:01.54 ID:RPnYlR/v.net]
- install+initialize+start=deployですか?
- 162 名前:デフォルトの名無しさん mailto:sage [2016/02/17(水) 06:55:44.87 ID:ERNpErt9.net]
- blueback
- 163 名前:デフォルトの名無しさん mailto:sage [2016/02/18(木) 06:37:07.78 ID:bLvFeMpB.net]
- xxx(123, 20)としたら123の20%の値を返す関数はどうしたらいいですか?
- 164 名前:デフォルトの名無しさん mailto:sage [2016/02/18(木) 07:24:28.89 ID:+dFL+sBf.net]
- ああしたらいいです
- 165 名前:デフォルトの名無しさん mailto:sage [2016/02/19(金) 03:35:24.86 ID:E/z1CaIk.net]
- その程度の計算式で、かつ単純に計算結果を出すだけなら、
素直に (123*0.2) とでも書いたほうが分かりやすいと思う。 税金やら利益やらを求める関数なら別だけどね
- 166 名前:デフォルトの名無しさん mailto:sage [2016/02/19(金) 06:49:45.80 ID:UoTVqCBs.net]
- >>161
基本的には >>163 だけど、なにかわけあってそうせざるを得ないなら、そのまんま percent( ) でいいんじゃね?
- 167 名前:デフォルトの名無しさん mailto:sage [2016/02/19(金) 17:58:17.20 ID:1lUaZ+Ou.net]
- >>163-164
簡単な計算ですが入出力が整数型なので型キャストの手間を惜しんで関数化することにしました percentで問題なさそうです。ありがとうございました
- 168 名前:デフォルトの名無しさん mailto:sage [2016/02/19(金) 18:04:34.89 ID:I8opp71u.net]
- よくないだろ
- 169 名前:デフォルトの名無しさん mailto:sage [2016/02/19(金) 18:17:07.22 ID:E/z1CaIk.net]
- 自分もよく、2行くらいで住むやつを関数化したりするから
人のことはあんまり言えない
- 170 名前:デフォルトの名無しさん mailto:sage [2016/02/19(金) 18:26:44.87 ID:d7xGYMnr.net]
- 行数じゃなく出現回数が2回以上になったり使い回せそうならもう関数化してる
- 171 名前:デフォルトの名無しさん mailto:sage [2016/02/19(金) 18:37:10.15 ID:kkBXxxPl.net]
- ただ数学的に計算したいのか?
例えば所得税額を求めたいとかならそれなりの名前をつけるべきじゃないか?
- 172 名前:デフォルトの名無しさん mailto:sage [2016/02/19(金) 18:37:25.02 ID:ihr5FFJ3.net]
- コメントの代わりにメソッドを書くという事はあるね
1行でも意図が不明瞭なら明瞭な名前のメソッドにしたほうが見易い 当然として意図が明瞭ならメソッドにするのは後回しだ
- 173 名前:デフォルトの名無しさん mailto:sage [2016/02/19(金) 18:48:16.32 ID:E/z1CaIk.net]
- 標準ライブラリ関数みたいに、意図を含めらんない場合も多いよねぇ
- 174 名前:デフォルトの名無しさん mailto:sage [2016/02/19(金) 18:56:21.43 ID:V63XPKdS.net]
- そういうのはそのままでいい
使う側でビジネス上意味のある名前でラップすればいい
- 175 名前:デフォルトの名無しさん mailto:sage [2016/02/26(金) 02:54:51.19 ID:GV2TZ5LX.net]
- 「データシートを開く」という関数名を OpenSeet()としています。
追加機能で「過去(昨日から過去一ヶ月間)に記入し忘れていたデータシートを開く」という関数が必要となりました。 この関数名をお願いします。
- 176 名前:デフォルトの名無しさん mailto:sage [2016/02/26(金) 03:06:26.39 ID:4hFyrq56.net]
- OpenSheetOmittedToRecord
- 177 名前:デフォルトの名無しさん mailto:sage [2016/02/26(金) 07:15:29.83 ID:PCB0D50w.net]
- OpenIncompletePastSheet
- 178 名前:デフォルトの名無しさん mailto:sage [2016/02/26(金) 09:29:35.46 ID:M9/6SaSd.net]
- OpenEmptySeet
- 179 名前:デフォルトの名無しさん mailto:sage [2016/02/26(金) 16:57:51.85 ID:GV2TZ5LX.net]
- >>174-176
ありがとうございます。どれも参考になりました。
- 180 名前:デフォルトの名無しさん mailto:sage [2016/03/01(火) 23:40:13.57 ID:eUlvy8a8.net]
- 単に「過去のデータシートを開く」ことがその関数の機能なんだとしたら、
「記入し忘れ」とか、そんな言葉を入れない方がいいと思う。 OpenHistorySheetとか
- 181 名前:デフォルトの名無しさん mailto:sage [2016/03/02(水) 09:32:45.64 ID:I9Z0Lvrz.net]
- 記入し忘れていないのは開かないんだろ
- 182 名前:デフォルトの名無しさん mailto:sage [2016/03/02(水) 13:55:10.11 ID:U8gNKAYq.net]
- つか、記入し忘れるなよ
てのはともかく、なんか設計をリファクタリングしたくなる案件
- 183 名前:デフォルトの名無しさん mailto:sage [2016/03/02(水) 14:15:29.41 ID:g40oqbYL.net]
- historysheetって意味がおかしい
- 184 名前:デフォルトの名無しさん mailto:sage [2016/03/02(水) 17:18:43.32 ID:O9A5cfyu.net]
- >>180
記入途中で操作を放棄されたら設計もク(ここで書き込み放棄
- 185 名前:デフォルトの名無しさん mailto:sage [2016/03/04(金) 18:32:17.14 ID:oFqD6l4V.net]
- 履歴ではなく過去に入力した別の情報なら、historyではないか。pastの方がいいな。
- 186 名前:デフォルトの名無しさん mailto:sage [2016/03/04(金) 18:43:17.69 ID:JDwO95i7.net]
- ・記入しようともしてない
・途中で記入を放棄した どちらもあり得るわけで、 つまり記入が完成(complete)してないのだから、 OpenUncompletedSheetsがいいと思います。つか複数形だよな。
- 187 名前:デフォルトの名無しさん mailto:sage [2016/03/04(金) 20:08:25.20 ID:0uXJtrdR.net]
- Incompleteとどっちがいいのかなと思って
thegrammarexchange.infopop.cc/eve/forums/a/tpc/f/340600179/m/8281030354 見たが、やり残しがあるんならUncompletedでよさそう
- 188 名前:デフォルトの名無しさん mailto:sage [2016/03/04(金) 22:29:43.14 ID:oFqD6l4V.net]
- 正常に完了している過去のデータシートを参照することはないのかな。
ないとしても、とりあえず過去のデータシートを開く部分は切り出しといた方がいいな。
- 189 名前:デフォルトの名無しさん [2016/03/21(月) 00:44:19.40 ID:KQkKBKcO.net]
- 設計工程があれば、命名に迷うことなどほとんどない。
- 190 名前:デフォルトの名無しさん mailto:sage [2016/03/21(月) 00:59:21.13 ID:x3G04NP+.net]
- それはすごい
- 191 名前:デフォルトの名無しさん [2016/03/21(月) 01:05:48.48 ID:Y+CQ6vla.net]
- 名前とかあまり気にする方じゃないのでほとんど迷わない
- 192 名前:デフォルトの名無しさん mailto:sage [2016/03/21(月) 01:52:33.37 ID:u1jn1EMe.net]
- だったら設計書作る段階で迷うんだろうが
- 193 名前:デフォルトの名無しさん mailto:sage [2016/03/21(月) 11:39:06.38 ID:Q2tTgw28.net]
- ドメインエキスパートと議論して名前を引き出すだけ
こちらが勝手に名前を考える必要は無い すでに名前はあるのだから
- 194 名前:デフォルトの名無しさん mailto:sage [2016/03/21(月) 14:08:21.28 ID:1Injx5U4.net]
- 変数名とかそんなんいちいち相談すんの?
自分がその立場だったら迷わないの?
- 195 名前:デフォルトの名無しさん mailto:sage [2016/03/21(月) 14:33:57.22 ID:Q2tTgw28.net]
- そうだよ
そもそもビジネスに関係無い言葉なんてコードに現れない
- 196 名前:デフォルトの名無しさん [2016/03/22(火) 00:12:48.03 ID:dJvZYtfq.net]
- ウソつけ、お前のコードなんかhageとかusugeとかばかりだろ
- 197 名前:デフォルトの名無しさん mailto:sage [2016/03/22(火) 00:13:46.52 ID:StsLEOpD.net]
- ビジネスモデルの人だろw
- 198 名前:デフォルトの名無しさん [2016/03/22(火) 15:09:09.39 ID:6KPFBZ6M.net]
- オブジェクト指向だとあまり迷わないだろ。
迷うのはクラス設計がおかしいんじゃないか?
- 199 名前:デフォルトの名無しさん mailto:sage [2016/03/22(火) 15:32:47.88 ID:NtsRzX3M.net]
- ドヤ顔してるところ悪いが、それを理解どころか想像すらできない頭がすごいな
- 200 名前:デフォルトの名無しさん mailto:sage [2016/03/22(火) 22:28:49.70 ID:UN51cu0Y.net]
- というかビジネス上存在しない概念を作ろうとするから名前がわからないなんて事になるんだよ
ドメインエキスパートとの対話を重ねてドメインモデルを適切に抽出する それだけでクラス名もメソッド名も何もかもが確固として定る 逆に言えば名前で悩んでるって事はドメインモデルの抽出に失敗しているってこと 名前が決まらないなら設計からやり直せってのはそういう意味ね
- 201 名前:デフォルトの名無しさん mailto:sage [2016/03/22(火) 22:36:39.69 ID:Es8MF1jL.net]
- 請け負いビジネス限定の話だね。
- 202 名前:デフォルトの名無しさん [2016/03/22(火) 22:43:07.67 ID:dJvZYtfq.net]
- ビジネス上名前のついてない概念や事象なんていくらでもあるのにね
むしろ殆ど名前がないと言ってもいいくらい この人はどこの世界に住んでいるのだろうか?
- 203 名前:デフォルトの名無しさん mailto:sage [2016/03/22(火) 22:48:42.98 ID:UN51cu0Y.net]
- >>199
むしろ新しいビジネスに強い ドメインモデルの構築を通してそのビジネスを深く正確に分析できる 改善点も容易に発見できるし拡張も容易い >>200 それはモデラーが手を抜いてるだけ
- 204 名前:デフォルトの名無しさん [2016/03/22(火) 22:57:48.84 ID:dJvZYtfq.net]
- >>201
つまりドメインモデルの構築に際して深く命名に悩んでいるんじゃないか どうしてウソつくの?
- 205 名前:デフォルトの名無しさん mailto:sage [2016/03/22(火) 23:02:18.04 ID:Es8MF1jL.net]
- そう、この人は新しい概念を創造・定義するという視点が欠けてる。
「研究」というものを知ってるのか。
- 206 名前:デフォルトの名無しさん mailto:sage [2016/03/22(火) 23:05:31.79 ID:WjKYcifB.net]
- この人何言っても無駄でしょ
つーかこのスレに何しに来てんのよ
- 207 名前:デフォルトの名無しさん mailto:sage [2016/03/22(火) 23:22:27.28 ID:UN51cu0Y.net]
- やれやれ
ど素人しかいないのかここは
- 208 名前:デフォルトの名無しさん mailto:sage [2016/03/23(水) 00:19:15.27 ID:I2lzCjKa.net]
- この一連の流れに名前を付けてください
- 209 名前:デフォルトの名無しさん mailto:sage [2016/03/23(水) 00:33:05.10 ID:fpM1ZpsA.net]
- NeverCrossingArgument
- 210 名前:デフォルトの名無しさん [2016/03/23(水) 00:33:31.62 ID:U+mfgt1q.net]
- ショーンKくずれ
- 211 名前:デフォルトの名無しさん [2016/03/23(水) 07:13:33.46 ID:feV3EELl.net]
- 語彙が乏しいやつらなんだろうな。
- 212 名前:デフォルトの名無しさん [2016/03/23(水) 07:14:27.80 ID:feV3EELl.net]
- どうやって言葉で会話しているのか不思議だわ。
- 213 名前:デフォルトの名無しさん mailto:sage [2016/03/23(水) 14:33:46.66 ID:ip94bAwI.net]
- その理解力で人と会話できているとは思えませんね
- 214 名前:デフォルトの名無しさん [2016/03/24(木) 00:20:10.04 ID:Rsn4b0UM.net]
- 何かに例えるとか、擬人化してしまうとかいくらでもあるだろ。
- 215 名前:デフォルトの名無しさん mailto:sage [2016/03/24(木) 01:37:39.87 ID:Q63x5G+R.net]
- 誰と会話してるんです?
- 216 名前:デフォルトの名無しさん mailto:sage [2016/03/24(木) 05:09:23.79 ID:UGB9JfN9.net]
- walls
- 217 名前:デフォルトの名無しさん mailto:sage [2016/03/24(木) 12:36:15.07 ID:X7xUAPCX.net]
- デバッグ手法のひとつとして、
「淫乱テディベアに語りかける」というのがあったね
- 218 名前:デフォルトの名無しさん mailto:sage [2016/03/24(木) 15:08:51.64 ID:aFiY6vgp.net]
- 淫乱を付けるなw
- 219 名前:デフォルトの名無しさん mailto:sage [2016/03/25(金) 15:02:41.12 ID:Ej/BIb4o.net]
- 手バックの手法?
- 220 名前:デフォルトの名無しさん mailto:sage [2016/04/06(水) 23:24:22.38 ID:SBdxQZ05.net]
- 日付を調整する関数の名前でいいのないですか
inputが日付で平日ならそのまま、土日祝日なら次の平日を返す関数 inputが日付で平日ならそのまま、土日祝日なら前の平日を返す関数 平日ならそのままっていうニュアンスがいれづらい…
- 221 名前:デフォルトの名無しさん [2016/04/06(水) 23:30:48.34 ID:04zWF3AE.net]
- >>218
そもそもその関数はよくない。 平日かどうか判定する関数と、次の平日、前の平日を求める関数は、別の関数にすべき。
- 222 名前:デフォルトの名無しさん mailto:sage [2016/04/06(水) 23:48:45.77 ID:Rshrw1nx.net]
- 前日の翌営業日
翌日の前営業日 を訳せばいいかも
- 223 名前:デフォルトの名無しさん mailto:sage [2016/04/06(水) 23:51:19.69 ID:Rshrw1nx.net]
- >>219
それは違うと思う 例えば月末払いだけど、休日なら翌営業日みたいなのいっぱいあるじゃん
- 224 名前:デフォルトの名無しさん mailto:sage [2016/04/07(木) 00:00:43.18 ID:jAeadzdP.net]
- よそで使わないならいいけど十分汎用性ありそうだしわけても損はないとおもうが
- 225 名前:デフォルトの名無しさん mailto:sage [2016/04/07(木) 00:10:18.37 ID:aGcTjS1o.net]
- こういうのはステップバイステップで考えよう
先ずは最も適切と思われる名前を日本語で決める 次にそれをそのままコードに書くんだ 簡単だろ
- 226 名前:デフォルトの名無しさん mailto:sage [2016/04/07(木) 00:20:28.94 ID:cIX55k3q.net]
- >>218
ExcelにはWORKDAY()という関数があるな >inputが日付で平日ならそのまま、土日祝日なら次の平日を返す関数 =WORKDAY(input, +1) >inputが日付で平日ならそのまま、土日祝日なら前の平日を返す関数 =WORKDAY(input, -1)
- 227 名前:デフォルトの名無しさん [2016/04/07(木) 00:30:26.74 ID:bJ8hF4FM.net]
- 翌営業日と前営業日を組み合わせて使う方がシンプルじゃね?
- 228 名前:デフォルトの名無しさん mailto:sage [2016/04/07(木) 00:33:17.16 ID:cIX55k3q.net]
- ミスってる気がする
>>220の考えでいけば WORKDAY(input-1, +1) WORKDAY(input+1, -1) かな
- 229 名前:デフォルトの名無しさん mailto:sage [2016/04/07(木) 00:35:40.34 ID:XWAdlud5.net]
- >>219
おっしゃるとおりでis_businessdayとadd_dayにしてあるんですが、>>221のような用途で頻繁に使うので関数としてまとめてしまいたいんですよね
- 230 名前:デフォルトの名無しさん mailto:sage [2016/04/07(木) 07:24:25.59 ID:cMwaSKeB.net]
- ならworkdayでいいだろ
+1/-1は分かりにくいからnext_workdayにするか列挙値にすべきだけど
- 231 名前:デフォルトの名無しさん mailto:sage [2016/04/07(木) 08:54:30.90 ID:m/gfZuFN.net]
- isWorkday()とnextWorkday()を作って、
nextWorkday(yesterday)と使えば? nextWorkday内部でisWorkdayを呼ぶとか。
- 232 名前:デフォルトの名無しさん mailto:sage [2016/04/07(木) 09:26:48.28 ID:r1JxjqMx.net]
- NextWorkdayOfPreviousDay
NextWorkdayOfPreviousWorkday どっちも可
- 233 名前:デフォルトの名無しさん mailto:sage [2016/04/07(木) 09:31:12.58 ID:l/IcW8J2.net]
- どっちもクソッタレすぎんだろなんだそりゃ
- 234 名前:デフォルトの名無しさん mailto:sage [2016/04/07(木) 10:34:14.65 ID:r1JxjqMx.net]
- >>231
すばらしい「命名」案、よろしく
- 235 名前:デフォルトの名無しさん mailto:sage [2016/04/07(木) 14:13:07.95 ID:vaOim5IM.net]
- 逆切れする前にそれ訳してみろよ
- 236 名前:デフォルトの名無しさん mailto:sage [2016/04/07(木) 22:00:31.37 ID:5mQTJZzR.net]
- FindNextWorkDayFrom(date)
指定した日付以降の最も近いWorkDayを検索 FindPrevWorkDayFrom(date) 指定した日付以前の最も近いWorkDayを検索 共に基準となる日付を含むからその日が日曜祭日なら次(前)を検索する こんな感じかな? 正直なところ、>>229が分かり易いと思う
- 237 名前:デフォルトの名無しさん [2016/04/07(木) 23:20:39.90 ID:bJ8hF4FM.net]
- AsIfOnWeekdaysReturnsTheWeekdayOfTheFollowingIfSaturdaysSundaysAndHolidays
|

|