プログラマは
こちらで雑談してください。
ユーザ、SEが馬鹿過ぎる、
上司が陰険だからもう辞めたい、
もう少しまともな仕事に転職したい、
彼女が欲しい、
などなど愚痴、妬み、妄想などなんでもどうぞ。
拘り押付け系ガイジ
(else禁止、継承不要、設計書不要ガイジ)、
コピペガイジは出入書込禁止
※前スレ
プログラマの雑談部屋 ★19
http://medaka.2ch.net/test/read.cgi/prog/1509711456/
プログラマの雑談部屋 ★20
http://medaka.2ch.net/test/read.cgi/prog/1510833848/
プログラマの雑談部屋 ★21
http://medaka.2ch.net/test/read.cgi/prog/1512205653/
プログラマの雑談部屋 ★22
http://medaka.2ch.net/test/read.cgi/prog/1513600297/
プログラマの雑談部屋 ★23
http://medaka.2ch.net/test/read.cgi/prog/1514877593/
探検
プログラマの雑談部屋 ★24
■ このスレッドは過去ログ倉庫に格納されています
1仕様書無しさん
2018/01/15(月) 03:10:30.672018/01/15(月) 07:11:26.78
VB.netって糞言語なの?
2018/01/15(月) 08:15:15.80
クソ言語だけど、それ故にc#に無いhandles句とか言う謎文法が便利よ
2018/01/15(月) 09:49:07.73
今の現場の作業分担やりづらい
2018/01/15(月) 10:04:24.40
ちょい相談させて
少し前に入った外注さんの書くソースが独特で困惑してる
ソースが汚い訳でもバクがある訳でも無いし動作としては問題はない
ないんだけどロジックの組み立て方とかがうちのプロジェクトの常識?と違うから悪目立ちしてる
他のメンバーにも聞いてみたけどその人の書いてるコードは読みづらいって思ってるみたい
マネージャーに相談したんだけど
「ちゃんと動くならそれでいい」みたいなこと言うんだけど、こっちとしては流用元に使う事もあるから困ってる
ただ、改修してもらうにしても明確なルールがある訳じゃないから何をどうお願いしたらいいのか難しいところ
こういうのってどうしたら良いと思う?
こっちが慣れるしかないのかね
少し前に入った外注さんの書くソースが独特で困惑してる
ソースが汚い訳でもバクがある訳でも無いし動作としては問題はない
ないんだけどロジックの組み立て方とかがうちのプロジェクトの常識?と違うから悪目立ちしてる
他のメンバーにも聞いてみたけどその人の書いてるコードは読みづらいって思ってるみたい
マネージャーに相談したんだけど
「ちゃんと動くならそれでいい」みたいなこと言うんだけど、こっちとしては流用元に使う事もあるから困ってる
ただ、改修してもらうにしても明確なルールがある訳じゃないから何をどうお願いしたらいいのか難しいところ
こういうのってどうしたら良いと思う?
こっちが慣れるしかないのかね
9仕様書無しさん
2018/01/15(月) 10:33:42.1110仕様書無しさん
2018/01/15(月) 10:38:09.82 >>9
マネージャーは自分でプログラムを書かない事もあってか、要件通りにプログラムが動けばいいって感じの人だからコードレビューとかにコストをかけないんだよね
マネージャーは自分でプログラムを書かない事もあってか、要件通りにプログラムが動けばいいって感じの人だからコードレビューとかにコストをかけないんだよね
11仕様書無しさん
2018/01/15(月) 10:43:27.95 >>7
補足すると、一度しか使わない構造体とかクラスとかラッパーとかを大量に作る感じと言えばいいのかな
処理を分割する為にプライベートで作るのは分かるけどすごく小さい単位で作るからデバッグ時とかにすごく追いかけづらいんだよね
補足すると、一度しか使わない構造体とかクラスとかラッパーとかを大量に作る感じと言えばいいのかな
処理を分割する為にプライベートで作るのは分かるけどすごく小さい単位で作るからデバッグ時とかにすごく追いかけづらいんだよね
12仕様書無しさん
2018/01/15(月) 11:19:40.94 >>11
設計書書かせないからだね
そういう奴に設計書書かせると
途端にクラスを作らなくなる
書くの面倒だからw
結局自分だって把握できない量の
おしっこを大量に散布して
自分しか触れないようにする手法
名付けて犬のしょんべん作戦
設計書書かせないからだね
そういう奴に設計書書かせると
途端にクラスを作らなくなる
書くの面倒だからw
結局自分だって把握できない量の
おしっこを大量に散布して
自分しか触れないようにする手法
名付けて犬のしょんべん作戦
13仕様書無しさん
2018/01/15(月) 11:37:20.57 >>7
そもそもお前が未熟だからいけない
いい設計とは何か?
答えられないだろ?
そいつの書くソースは明らかにそこから逸脱しているから読みにくい
でも言葉でお前はそれを表現できないから指摘できない
参考までに俺のいい設計の
定義を書くと
何の機能のどの処理が
ソースのどこに書いてるか
誰にでもわかること
これがわかんねーから
そいつのソースは読みにくい
そもそもお前が未熟だからいけない
いい設計とは何か?
答えられないだろ?
そいつの書くソースは明らかにそこから逸脱しているから読みにくい
でも言葉でお前はそれを表現できないから指摘できない
参考までに俺のいい設計の
定義を書くと
何の機能のどの処理が
ソースのどこに書いてるか
誰にでもわかること
これがわかんねーから
そいつのソースは読みにくい
14仕様書無しさん
2018/01/15(月) 12:20:31.1015仕様書無しさん
2018/01/15(月) 12:20:37.4916仕様書無しさん
2018/01/15(月) 12:32:03.13 >>12
ションベン撒き散らした挙句に条件良いところがあるとさっさとトンズラ、PMはツベコベ言わず引き継げバグ修正しろの一点張りでデスマの後に故障退場までがテンプレート
ションベン撒き散らした挙句に条件良いところがあるとさっさとトンズラ、PMはツベコベ言わず引き継げバグ修正しろの一点張りでデスマの後に故障退場までがテンプレート
17仕様書無しさん
2018/01/15(月) 12:38:12.92 外注したとこのコードなんて見なくていいだろ
外部に繋がってるとこだけ見りゃいいじゃん
外部に繋がってるとこだけ見りゃいいじゃん
19仕様書無しさん
2018/01/15(月) 13:52:58.85 >>11
実際に見てみないと、
外注が独りよがりか現場のクラス不慣れかわからん
YAGNIとかKISSとかよく言われるんで、
そこら辺で妥当かどうか相談してみたら?
ただ最初に上がってきた段階で相談してない時点で、
若干手遅れ感
実際に見てみないと、
外注が独りよがりか現場のクラス不慣れかわからん
YAGNIとかKISSとかよく言われるんで、
そこら辺で妥当かどうか相談してみたら?
ただ最初に上がってきた段階で相談してない時点で、
若干手遅れ感
20仕様書無しさん
2018/01/15(月) 14:38:22.54 >>19
あーそんな感じかも
機能を小さく単純にする事は大切だけど、1機能単体では何を目的としてるのかが分からなくなるまで細分化しちゃってる感じかな?
普通は相談とかしながら仕事になれていくうちにさじ加減を覚えるものだと思うけと、そういうのが出来ない人だから相談とかもせずに好き勝手にやっちゃうんだろうな
あーそんな感じかも
機能を小さく単純にする事は大切だけど、1機能単体では何を目的としてるのかが分からなくなるまで細分化しちゃってる感じかな?
普通は相談とかしながら仕事になれていくうちにさじ加減を覚えるものだと思うけと、そういうのが出来ない人だから相談とかもせずに好き勝手にやっちゃうんだろうな
21仕様書無しさん
2018/01/15(月) 15:34:54.61 才能のあるプログラマーの書いたコードを読めない低脳文系が才能ある人を潰す好例だな
24仕様書無しさん
2018/01/15(月) 15:38:59.93 コミュ障はこんなところでも邪魔だな
25仕様書無しさん
2018/01/15(月) 15:39:01.99 金もらってやるんだから、歓迎すべきでないのは素人レベルの奴
27仕様書無しさん
2018/01/15(月) 17:02:36.8628仕様書無しさん
2018/01/15(月) 17:19:27.62 >>27
このケースみたいに周りに合わせられないタイプは、我が強いか、周囲に関心が無いんだと思う
改修を依頼した所で、
我が強いなら「今までこうやって来た!」って反発するし、
周囲に関心がないならそもそも周りがどういうコードを書いてるのか知らない
結果、指示した所だけ直して終わり
明日からも汚いコードを書き続けることになる
要するに空気が読めないアスペ
病気だから諦めるしかないよ
このケースみたいに周りに合わせられないタイプは、我が強いか、周囲に関心が無いんだと思う
改修を依頼した所で、
我が強いなら「今までこうやって来た!」って反発するし、
周囲に関心がないならそもそも周りがどういうコードを書いてるのか知らない
結果、指示した所だけ直して終わり
明日からも汚いコードを書き続けることになる
要するに空気が読めないアスペ
病気だから諦めるしかないよ
29仕様書無しさん
2018/01/15(月) 17:44:44.24 >>7
自分と同じ書き方でないと読めないとか日曜プログラマに転職した方がいいんじゃないか
バグフィックスする時とかその人の書き方に合わせてやるぞ
あと流用ってコピペだろそういう設計が問題
それを譲っても元になる大事なとこなら外注に任せないだろ
まあパラダイムの世代が違うとかだと問題だが
自分と同じ書き方でないと読めないとか日曜プログラマに転職した方がいいんじゃないか
バグフィックスする時とかその人の書き方に合わせてやるぞ
あと流用ってコピペだろそういう設計が問題
それを譲っても元になる大事なとこなら外注に任せないだろ
まあパラダイムの世代が違うとかだと問題だが
30仕様書無しさん
2018/01/15(月) 18:16:54.61 >>29
横からだけど、
流用を前提とした設計が良くないって言ってるように聞こえるけど何が問題なの?
というか時々ここで流用を否定してる奴がいるけどそれお前か?
流用を前提とした設計なり開発なんて基本中の基本だと思うんだけどその辺り詳しく教えてくれない?
横からだけど、
流用を前提とした設計が良くないって言ってるように聞こえるけど何が問題なの?
というか時々ここで流用を否定してる奴がいるけどそれお前か?
流用を前提とした設計なり開発なんて基本中の基本だと思うんだけどその辺り詳しく教えてくれない?
31仕様書無しさん
2018/01/15(月) 18:19:53.02 うーん、でもどんなコードかなんとなくわかるなぁ
ステータス1つにクラス1つ割り当てちゃうような作り方
ステータス1つにクラス1つ割り当てちゃうような作り方
32仕様書無しさん
2018/01/15(月) 18:21:58.8933仕様書無しさん
2018/01/15(月) 18:22:18.13 既存コードがクソ過ぎるパターンもあるからな
古いやり方が手入れたとこだけ直してあるから真似したらアカンやつとか
古いやり方が手入れたとこだけ直してあるから真似したらアカンやつとか
34仕様書無しさん
2018/01/15(月) 19:17:28.13 周りに合わせるとか全体主義かよ!
みなさんこれがジャップランド文化です
みなさんこれがジャップランド文化です
35仕様書無しさん
2018/01/15(月) 19:20:06.54 設計の本質がわかりやすいコードであれば
人に合わせる技術が無ければ設計能力が低いと見られても仕方がない
人に合わせる技術が無ければ設計能力が低いと見られても仕方がない
36仕様書無しさん
2018/01/15(月) 19:20:48.58 コミュ障はどこでも役に立たないなw
37仕様書無しさん
2018/01/15(月) 19:43:58.10 素材関係の大卒は理数系で良いの?
関数が理解できずにプログラムから離れた人が居たけど理数系ならAIエンジンくらい作れと思った
関数が理解できずにプログラムから離れた人が居たけど理数系ならAIエンジンくらい作れと思った
38仕様書無しさん
2018/01/15(月) 19:45:32.06 毎回周囲に合わせると心に誓ってるのに
気が付いたらマイルールだらけになってる
がまんできない
気が付いたらマイルールだらけになってる
がまんできない
40仕様書無しさん
2018/01/15(月) 19:53:15.72 閏年のプログラムは取りあえず4で割れば良いよね?
次の特例は2100年。
知らねーよwww
次の特例は2100年。
知らねーよwww
42仕様書無しさん
2018/01/15(月) 20:22:21.3343仕様書無しさん
2018/01/15(月) 20:40:30.24 >>11
単純に脳みそのパラダイムが違うだけだろ
そいつは一人だけOOPの世界に生きてるけど、他の連中はそうではない
OOPできる奴とできない奴は絶対にチームを分けなきゃいかんのだが、PMが素人じゃしょうがねえか
単純に脳みそのパラダイムが違うだけだろ
そいつは一人だけOOPの世界に生きてるけど、他の連中はそうではない
OOPできる奴とできない奴は絶対にチームを分けなきゃいかんのだが、PMが素人じゃしょうがねえか
45仕様書無しさん
2018/01/15(月) 20:52:19.29 周りに合わせてスタイルを変えるってそうとう難しいよ
普通に将棋を指せる人間が全くのドシロウトの打ち筋を模倣してくださいつっても無理でしょ?
プログラムもそれと同じ
ある程度のスキル差があると下手なコードは書きたくても書けなくなる
5重にネストした分岐
10パターンを超えるスイッチ
100行を超えるメソッド
全く関連性のないビジネスがミックスインされた正体不明のクラス
正規化とは無縁のデータベース
模倣しろって言われてもどうすりゃいいんだって頭抱えるしかないよこんなの
普通に将棋を指せる人間が全くのドシロウトの打ち筋を模倣してくださいつっても無理でしょ?
プログラムもそれと同じ
ある程度のスキル差があると下手なコードは書きたくても書けなくなる
5重にネストした分岐
10パターンを超えるスイッチ
100行を超えるメソッド
全く関連性のないビジネスがミックスインされた正体不明のクラス
正規化とは無縁のデータベース
模倣しろって言われてもどうすりゃいいんだって頭抱えるしかないよこんなの
46仕様書無しさん
2018/01/15(月) 21:02:23.1347仕様書無しさん
2018/01/15(月) 21:09:21.47 無能集団が多数決で有能を潰す村社会日本
48仕様書無しさん
2018/01/15(月) 21:13:46.51 空気読んだら同じ給料もらえるならいいけどな
もらえねえんだろうな
もらえねえんだろうな
49仕様書無しさん
2018/01/15(月) 21:22:01.47 問題はそのうち1か所だけ修正入れたいってなったときだ
51仕様書無しさん
2018/01/15(月) 21:31:42.53 そのメソッドは新規モジュールだから
コピペならなおしたとこだけテストすればいいが
共通化してあると新規部分として丸々テストしないといけない
コピペならなおしたとこだけテストすればいいが
共通化してあると新規部分として丸々テストしないといけない
52仕様書無しさん
2018/01/15(月) 21:35:40.64 >>51
修正箇所とそれに依存するコードのテスト
新規作成箇所とそれに依存するコードのテスト
影響範囲は同じ
モジュール化してあればテストそのものが容易になるので低コスト
コピペじゃテストの範囲や仕方を考えるだけで絶望的
修正箇所とそれに依存するコードのテスト
新規作成箇所とそれに依存するコードのテスト
影響範囲は同じ
モジュール化してあればテストそのものが容易になるので低コスト
コピペじゃテストの範囲や仕方を考えるだけで絶望的
53仕様書無しさん
2018/01/15(月) 21:48:00.27 影響範囲が同じでも
新規作成と一部修正じゃ
必要なテストケースの数がちがう
モジュール化でテストしやすくなるなら
部分ごとに同じモジュールを配置したっていい
新規作成と一部修正じゃ
必要なテストケースの数がちがう
モジュール化でテストしやすくなるなら
部分ごとに同じモジュールを配置したっていい
54仕様書無しさん
2018/01/15(月) 21:53:38.21 たとえ一箇所でしか使わないモジュールでも、
モジュールとしての意味構造を持たせようと努力する
ただ、なんでもかんでもデザパタでどうでもいいインターフェースを挟むのは、異論があるかもしれないね、コストもゼロではないし
モジュールとしての意味構造を持たせようと努力する
ただ、なんでもかんでもデザパタでどうでもいいインターフェースを挟むのは、異論があるかもしれないね、コストもゼロではないし
55仕様書無しさん
2018/01/15(月) 21:55:42.23 わからねえかなぁ
根本的に必要なテストボリュームは変わらない
どこをどうやってテストするのかがはっきりわかって簡単なのがモジュール
どこをどうテストするかはっきりせずテストそのものも難しいのがコピペ
これ常識
コピペするってことはその処理が別の処理に埋め込まれてしまうってこと
そうなると本来修正したかったことだけを分離してテストすることができないからテストの手間がめちゃくちゃ増える
根本的に必要なテストボリュームは変わらない
どこをどうやってテストするのかがはっきりわかって簡単なのがモジュール
どこをどうテストするかはっきりせずテストそのものも難しいのがコピペ
これ常識
コピペするってことはその処理が別の処理に埋め込まれてしまうってこと
そうなると本来修正したかったことだけを分離してテストすることができないからテストの手間がめちゃくちゃ増える
56仕様書無しさん
2018/01/15(月) 21:56:49.45 関数ごとコピペしたら?
57仕様書無しさん
2018/01/15(月) 22:11:55.77 元の内容から遠い話題なら議論はやめようぜ
60仕様書無しさん
2018/01/15(月) 22:25:45.45 コピペもモジュール化もどっちもわかるんだよね
モジュールったって今回に使えるようになってる保証もないし
必要もない既存部分をいじってぶっ壊して文句言われるのは場所によっては最悪だ
一発で信用を失って終了の可能性もある
とするとこの環境でモジュール化の選択肢はない
コピペはまあ言わずもがなの問題が起きるが
範囲がコピペ部分に限定できるし
既存部分を壊すことはない
ってメリットもある
どっちもトレードオフの問題で
どちらを選択する可能性がある
って結論以外ねーだろこれ
議論にならない
モジュールったって今回に使えるようになってる保証もないし
必要もない既存部分をいじってぶっ壊して文句言われるのは場所によっては最悪だ
一発で信用を失って終了の可能性もある
とするとこの環境でモジュール化の選択肢はない
コピペはまあ言わずもがなの問題が起きるが
範囲がコピペ部分に限定できるし
既存部分を壊すことはない
ってメリットもある
どっちもトレードオフの問題で
どちらを選択する可能性がある
って結論以外ねーだろこれ
議論にならない
62仕様書無しさん
2018/01/15(月) 22:30:23.08 >範囲がコピペ部分に限定できるし
>既存部分を壊すことはない
ダウト
>既存部分を壊すことはない
ダウト
63仕様書無しさん
2018/01/15(月) 22:31:33.39 >>58
やたらすげー勢いでラッパ作るソース見たことねぇ?
クラスも小粒でプロパティ1つ増やすのにクラス1個作っててそれが何の為かどこにも書いてなくてキレる
明らかに脳みそに異常がある奴のクラスの作り方
クラス図書かせたら回路図みてーになった
DBからデータ取ってくるだけなのに不思議
やたらすげー勢いでラッパ作るソース見たことねぇ?
クラスも小粒でプロパティ1つ増やすのにクラス1個作っててそれが何の為かどこにも書いてなくてキレる
明らかに脳みそに異常がある奴のクラスの作り方
クラス図書かせたら回路図みてーになった
DBからデータ取ってくるだけなのに不思議
66仕様書無しさん
2018/01/15(月) 22:35:24.25 JUnitやってると
コピペの圧力と関数化の欲求の間で悶え死ぬ
コピペの圧力と関数化の欲求の間で悶え死ぬ
70仕様書無しさん
2018/01/15(月) 22:41:55.97 ValueObjectめんどい
アンラップしないといろんな演算子とかメソッドが使えなくなるし
それなりに便利にしようとおもったら
使うかどうかもわかんないメソッドいっぱいつくらないといけない
個人用に作るには重すぎる
アンラップしないといろんな演算子とかメソッドが使えなくなるし
それなりに便利にしようとおもったら
使うかどうかもわかんないメソッドいっぱいつくらないといけない
個人用に作るには重すぎる
71仕様書無しさん
2018/01/15(月) 22:48:50.3272仕様書無しさん
2018/01/15(月) 22:50:37.06 ValueObjectで頭をかかえる私大文系w
意味のある固まりで構造化された美しさが分からない
日本人の曖昧文化では抽象性の高いプログラミングに適正がないんだろうな
ジャップランドではこんな馬鹿が上に立っているんだw
意味のある固まりで構造化された美しさが分からない
日本人の曖昧文化では抽象性の高いプログラミングに適正がないんだろうな
ジャップランドではこんな馬鹿が上に立っているんだw
73仕様書無しさん
2018/01/15(月) 22:54:52.91 >>71
は?
でもソース読むときクラスはクラスなんだからクラス図に書けや
んでこのクラスはゴミクラスだから重要なクラスはこれとこれとこれですって説明しろよカス
あんまり細かいクラスを作っちゃうから粒度がわからない
これやっても詳細設計書が整備されてれば問題は起きない
問題はなんの資料も書かないくせにこれやるとどこで何やってるのかさっぱりわからない
は?
でもソース読むときクラスはクラスなんだからクラス図に書けや
んでこのクラスはゴミクラスだから重要なクラスはこれとこれとこれですって説明しろよカス
あんまり細かいクラスを作っちゃうから粒度がわからない
これやっても詳細設計書が整備されてれば問題は起きない
問題はなんの資料も書かないくせにこれやるとどこで何やってるのかさっぱりわからない
74仕様書無しさん
2018/01/15(月) 22:57:35.74 日銭をかせぐのにあくせくしているので
高邁な美しさにまで心を配る余裕がないのです
ライブラリ設計者になれたらそういうの作りまくってやるのに
現実は雇われ土方
扱うのはBeanばっかりで
凝集度の高いオブジェクトの自作とは縁がありません
高邁な美しさにまで心を配る余裕がないのです
ライブラリ設計者になれたらそういうの作りまくってやるのに
現実は雇われ土方
扱うのはBeanばっかりで
凝集度の高いオブジェクトの自作とは縁がありません
75仕様書無しさん
2018/01/15(月) 22:57:40.2376仕様書無しさん
2018/01/15(月) 23:01:00.62 >>73
この手のOOPをまったく理解してない残念な人ってやけに設計書を崇拝するよね
おそらくプログラムに構造らしい構造が全く無いから設計書で情報を水増し冗長化しないと理解できないんだろうな
ということを考えるとやっぱり設計書不要論は正解なんだろうな
OOPが設計の本質ってことを理解できない人がついてこれないだけでさ
この手のOOPをまったく理解してない残念な人ってやけに設計書を崇拝するよね
おそらくプログラムに構造らしい構造が全く無いから設計書で情報を水増し冗長化しないと理解できないんだろうな
ということを考えるとやっぱり設計書不要論は正解なんだろうな
OOPが設計の本質ってことを理解できない人がついてこれないだけでさ
77仕様書無しさん
2018/01/15(月) 23:05:08.82 C#の構造体はクラス図に書かなくていいぞ
クラスじゃないからな
クラスじゃないからな
78仕様書無しさん
2018/01/15(月) 23:17:26.94 >>75
世界中で使われて安定性が実証されてどこでも使える言語の基本クラスと
どこの馬の骨がつくったかわからん思い付きクラスを一緒にしていいわけあるか
バグったらまず疑わなきゃいけないし
改修するとき影響範囲を見なきゃいけないし
世界中で使われて安定性が実証されてどこでも使える言語の基本クラスと
どこの馬の骨がつくったかわからん思い付きクラスを一緒にしていいわけあるか
バグったらまず疑わなきゃいけないし
改修するとき影響範囲を見なきゃいけないし
80仕様書無しさん
2018/01/15(月) 23:29:06.38 おまえはちがうのか?
85仕様書無しさん
2018/01/15(月) 23:42:23.93 役目は個々のクラス名から明らか
粒度はエンティティの構成要素
わかりやすすぎわろた
粒度はエンティティの構成要素
わかりやすすぎわろた
89仕様書無しさん
2018/01/15(月) 23:50:52.5890仕様書無しさん
2018/01/15(月) 23:52:43.99 例えば本来ならその仕組みを入れるべきところに入れてない箇所があったとしたら
俺にそれが判断できる明確な線引きはあるの?
俺にそれが判断できる明確な線引きはあるの?
91仕様書無しさん
2018/01/15(月) 23:54:31.35 匿名クラスとか使えない言語なのかな
92仕様書無しさん
2018/01/16(火) 00:01:29.20 >>89
責務を明確にしてカプセル化で防御する
オブジェクト指向の基本だ
stringじゃ何でも表現出来すぎて責務が曖昧すぎる
stringには注文番号でも従業員名でもなんでも入ってしまう
これじゃそいつの正体がまったくわからないし何をやりたいのかも曖昧だ
そいつに適用可能なオペレーションも多すぎて利用者は簡単に間違える
注文番号オブジェクト.substring(1, 5)果たしてこれは注文番号にとって正しいオペレーションなのか? わからない…
一方で
class OrderNo {
private string asText;
... (略)
}
class EmployeeName {
private string asText;
... (略)
}
といったValueObjectを使えばそれが注文番号や従業員名であることが明確になる
適用可能なオペレーションはクラスのメソッドとして厳格に定義されるので利用者が間違えることもない
注文番号オブジェクト.substring(1, 5)が注文番号にとって正しくないオペレーションなら実行することはおろかビルドすらできない
もし仮に正しいオペレーションならIDEが補完をしてくれるドキュメントコメントで説明を表示してくれる
実にエレガントだ
美しい世界へようこそ
責務を明確にしてカプセル化で防御する
オブジェクト指向の基本だ
stringじゃ何でも表現出来すぎて責務が曖昧すぎる
stringには注文番号でも従業員名でもなんでも入ってしまう
これじゃそいつの正体がまったくわからないし何をやりたいのかも曖昧だ
そいつに適用可能なオペレーションも多すぎて利用者は簡単に間違える
注文番号オブジェクト.substring(1, 5)果たしてこれは注文番号にとって正しいオペレーションなのか? わからない…
一方で
class OrderNo {
private string asText;
... (略)
}
class EmployeeName {
private string asText;
... (略)
}
といったValueObjectを使えばそれが注文番号や従業員名であることが明確になる
適用可能なオペレーションはクラスのメソッドとして厳格に定義されるので利用者が間違えることもない
注文番号オブジェクト.substring(1, 5)が注文番号にとって正しくないオペレーションなら実行することはおろかビルドすらできない
もし仮に正しいオペレーションならIDEが補完をしてくれるドキュメントコメントで説明を表示してくれる
実にエレガントだ
美しい世界へようこそ
93仕様書無しさん
2018/01/16(火) 00:05:44.74 OrderNoはフォーマットとか桁数とかあるからまだわからんでもない
EmployeeNameてw
EmployeeNameてw
94仕様書無しさん
2018/01/16(火) 00:15:49.74 >>93
従業員名の最大長はint maxなのか?
従業員名に任意のシンボルを含んでも問題ない?
ファーストネームとラストネームの区別はない?
ロケールによって文字列表現を変更したりしない?
思考停止しないでもう少し考えようぜ
たかが従業員名でも君が考えている以上にドメイン知識は隠れてるものだよ
従業員名の最大長はint maxなのか?
従業員名に任意のシンボルを含んでも問題ない?
ファーストネームとラストネームの区別はない?
ロケールによって文字列表現を変更したりしない?
思考停止しないでもう少し考えようぜ
たかが従業員名でも君が考えている以上にドメイン知識は隠れてるものだよ
96仕様書無しさん
2018/01/16(火) 00:22:13.40 誰を対象にしてソースに対策を入れてるのかわからない
なんも知らん奴がソースをいじることを想定してガードを入れてるバカに見える
なんも知らん奴がソースをいじることを想定してガードを入れてるバカに見える
97仕様書無しさん
2018/01/16(火) 00:24:36.0198仕様書無しさん
2018/01/16(火) 00:27:57.85 >なんも知らん奴がソースをいじることを想定してガードを入れてるバカに見える
まったく違う
すべてを完全に理解して絶対に間違えない人間だけでチームが構成されているわけではないという前提でガードしてるんだよ
というか文字通り何も知らない新規要員が途中参加することもあるってことを想定できないって仕事で開発したことないのかな?
まったく違う
すべてを完全に理解して絶対に間違えない人間だけでチームが構成されているわけではないという前提でガードしてるんだよ
というか文字通り何も知らない新規要員が途中参加することもあるってことを想定できないって仕事で開発したことないのかな?
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【速報】山上徹也被告に無期懲役を求刑 ★6 [Hitzeschleier★]
- 官邸幹部「日本は核兵器保有すべき」 政権内の議論は「ない」と説明 [どどん★]
- 年収の壁で総理と玉木代表が合意 178万円まで引き上げ 年収665万円以下が対象 ★2 [どどん★]
- 中国外務省「日本への渡航を控えて」→高市内閣の支持率はとくに下がらず…なぜ日本国民がこれほど「高市内閣」を応援するのか★4 [♪♪♪★]
- 胸を強調した女性アニメキャラをファミレスがコラボ企画で起用。「この表現はどうなのか」SNSで疑問の声 ★2 [少考さん★]
- 【赤坂“サウナ火災”30代夫婦死亡】サウナストーンでドア割ろうとした可能性 非常ボタン作動しなかったか ★5 [ぐれ★]
- 【超特大悲報】中国さん完全孤立決定…米両院が日本支持を明言🏡
- 北海道新幹線の延伸、建設費1.2兆円増、最大3兆5千億円に、札幌への延伸、30年度末から38年度末に遅れる、建設資材や人件費が高騰 [943688309]
- 現役JKのお茶会スレ( ¨̮ )︎︎𖠚ᐝ185
- 有名だけど生で見たことないもの
- 【俳優】すでに亡くなった人で、演技が上手かった日本の俳優👈誰を思いつく?? [839143615]
- 高市早苗「中国製ソーラーパネル頼みはやめろ」日本発ペロブスカイト推進へ [834922174]
