ふらっと C#,C♯,C#(初心者用) Part160

■ このスレッドは過去ログ倉庫に格納されています
2024/02/11(日) 09:17:20.44ID:8k78Qd14M
!extend:checked:vvvvv:1000:512
!extend:checked:vvvvv:1000:512
次スレを立てる時は↑を3行冒頭に書くこと(1行分は消えて表示されない為、もう1行は予備)
「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、質問者自身なんだか意味がよく分からない質問、ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスや酔っぱらいレスはやめてください。見かけたらNGしましょう。相手してしまったらあなたも荒らしです
>>980を踏んだ人は新スレを建てて下さい。>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。
■前スレ
ふらっと C#,C♯,C#(初心者用) Part159
http://mevius.5ch.net/test/read.cgi/tech/1691454079/
■関連スレ
C#, C♯, C#相談室 Part97
https://mevius.5ch.net/test/read.cgi/tech/1671585518/
■コードを貼る場合は↓を使いましょう。
https://ideone.com/
https://dotnetfiddle.net/
初心者はまずVisual Studioを使いましょう。なおVisual Studioの使い方などに関しては各バージョンで違うので専用スレでお願いします
http://www.visualstudio.com/downloads/
■情報源
https://learn.microsoft.com/ja-jp/dotnet/standard/class-libraries
https://learn.microsoft.com/ja-jp/dotnet/csharp/language-reference/
https://learn.microsoft.com/en-us/dotnet/standard/class-libraries
https://referencesource.microsoft.com/
https://source.dot.net/
・Insider.NET > .NET TIPS - @IT
https://www.atmarkit.co.jp/ait/subtop/features/dotnet/dotnettips_index.html
・DOBON.NET .NET Tips
https://dobon.net/vb/dotnet/index.html
++C++; // 未確認飛行 C
https://ufcpp.net/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
463デフォルトの名無しさん (ワッチョイ 071c-vs7G)
垢版 |
2024/06/30(日) 19:19:30.38ID:zHIUQlb90
>>462
x しれっと
o ひそかに
o ちゃっかり

存在しない日本語使うな
464デフォルトの名無しさん (ワッチョイ 071c-vs7G)
垢版 |
2024/06/30(日) 19:20:23.51ID:zHIUQlb90
o 平然と
2024/06/30(日) 23:06:03.42ID:SllLBnm30
>存在しない日本語使うな
もしかしてお前が日本語不自由なのでは
って突っ込んで欲しかったのか
いまどきそんな事に突っ込む暇なやつ俺ぐらいしかおらんから感謝せんといかんよな
2024/06/30(日) 23:22:11.12ID:u6Lvu7fp0
>>463
しれっと

《副・ス自》
何事もなかったように、平気を装うさま。
?「―した顔」
2024/07/01(月) 00:55:00.12ID:gDPQnc3yM
>>462
補数の意味がわからないなら出てこなくていい
468デフォルトの名無しさん (ワッチョイ 7b4d-EXgL)
垢版 |
2024/07/01(月) 05:51:43.00ID:D/wxxrcg0
犯人不明ボイス・トォ・スカル被害者にしている者皆判明
AIで被害者が苦しんでいる映像を作成してそれで喜んでいる脳細胞を読み取れば使用しているかの判定
AIで自分が高みの見物ができるかどうかも判定
あとは下記を参考にして行えばよい

いじめで殺害したかも判明するので迷宮入り事件犯人を絞り込める
隠しカメラの場所も判明

忘れた記憶を再び思い出せるようにする脳細胞を発見!
2024.06.28
「あなたの一番古い記憶は?」人は覚えていても2歳以前の記憶にアクセスできなくなっている
2023.11.30
なぜ私たちは起こってもいない間違った記憶をしてしまうのか?
2023.11.27
自分でも気づいていない「記憶の間違い」を脳波で判断できると判明
2023.10.19
富山大、睡眠中の脳で行われている推論の演算を神経細胞レベルで解明
2024/06/26
サイコパスはためらわない?−−嘘つきの脳のメカニズム
2019/09/26

脳を刺激して特定の記憶を呼び戻す技術「記憶プロテーゼ」を開発
2024/02/21

「0」を”思う”ときの脳活動は「1」に近い!捕食者への恐怖がゼロの根幹だった?
2024.03.07
>>MEGを使うと、脳内でわずかに発生する磁場変化をとらえて、脳活動を記録することが可能です。
>>(※脳波計が脳の電気活動を読み取るのに対して、脳磁計は脳の磁気活動を読み取ります)

東工大、磁束集中器を用いない高感度「ダイヤモンド量子センサ」を開発
2024/06/07
>>日常的な検診や脳機能のより詳しい研究や、ブレイン・マシン・インタフェースの研究などへ大きく貢献できると期待されている。
2024/07/01(月) 08:44:17.63ID:JpspCpKB0
>>463
しれっと大嘘を吐くなよ
2024/07/01(月) 08:47:08.34ID:ZRvAHBwU0
>>463
「知らない」と「存在しない」は別の概念
2024/07/01(月) 08:57:40.89ID:XJiom0gip
安い辞書には載って無かったんじゃね?
2024/07/01(月) 11:30:46.34ID:fDiPSacqa
Androidエミュレータでリズムゲームを動かして
画面の状態を認識してタップしたり擦ったりのメッセージを送信するソフトって作れる?
https://i.imgur.com/QAYid7E.jpeg

ランダムでわざと失敗させて上手下手の具合を調整出来る感じで
2024/07/01(月) 13:24:33.45ID:GNvo4zaz0
頑張ればやれるんじゃない?
画像認識せずに特定座標の複数のドットの色を見るだけにして
操作は何かメッセージ送ってみるとか試行錯誤だろうね
2024/07/01(月) 15:21:57.75ID:CrkDUddc0
boter乙 の一言ですむ話じゃね?
2024/07/01(月) 16:44:29.94ID:8PXBHjex0
>>462>>467もやり合うならもうちょい具体的な例を出しながらやったら?
2024/07/01(月) 16:49:14.87ID:zu9ygCcc0
バカはバカだから具体的な指摘ができずバカとしか言わない
よくいるだろ煽り文句だけ言って勝った気になってるアホ
2024/07/01(月) 17:56:45.47ID:v6IEo+HRd
思うに>>459の1行目が「2の補数は好きなようにフォーマットできる」と言ってるように解釈できるのがあかんのじゃないかね

>>462もそう解釈をしたうえでのツッコミではなかろうか
2024/07/01(月) 18:10:29.84ID:eOUN0giVH
補数って言葉は数学的に定義された用語だからなあ
https://e-words.jp/w/%E8%A3%9C%E6%95%B0.html
とか
https://ja.m.wikipedia.org/wiki/%E8%A3%9C%E6%95%B0
とかをる見る限りは、数学的素養が薄い俺でも
>>459の言ってることはデタラメだと思う
2024/07/01(月) 18:51:40.97ID:59AoZbO70
マイナス表現に2の補数を使用するかどうかは自由
と読めなくもない
2024/07/01(月) 19:03:26.06ID:v6IEo+HRd
たぶん言いたいのはそれだと思うのよね
2024/07/01(月) 19:20:04.45ID:v6IEo+HRd
ただ話の流れとしては2の補数が主題だったからそれだといきなり感があるなと
2024/07/01(月) 20:17:30.41ID:KGbdpGVYM
2の補数やnの補数は定義がある
けどそれをどのようなビット表現にするかは自由なので好きなようにフォーマットできる

それでビット反転してプラス1すると確実に2の補数になるわけではない
判りやすいのは浮動小数点やBCDなどの変数
483463 (ワッチョイ e39e-vs7G)
垢版 |
2024/07/01(月) 20:22:00.31ID:Q7AEJ3je0
オレが高卒までに耳にしなかった語は日本語として認めない。
大学は東京の一流大卒だが地方がいっぱい人が集まってたので新語に対する耐性はあるがその理由はそれが方言だと知ってるから。
なので「しれなんとか」という語は一切日本語として認めない。高卒までに周りで使ってる人や文献に存在しないのだから。

類語に
・まるっと
・ほぼほぼ
などなど多数あり。
2024/07/01(月) 21:11:49.72ID:v6IEo+HRd
>>482
意訳すると
コンピュータが数値をどう内部表現するかは自由であって
ある値をビット反転してプラス1すると2の補数になる型(整数型)とそうでない型(浮動小数点やBCD)がある
ってことでいいのかな?
2024/07/01(月) 21:15:22.15ID:Y4jiQu2P0
量子化INT8もけ?
2024/07/01(月) 22:05:34.21ID:nOSOydF90
>>482
>けどそれをどのようなビット表現にするかは自由なので好きなようにフォーマットできる
この一文だけで救いようのないバカだと分かる
相手にするだけ時間の無駄
2024/07/01(月) 22:34:52.83ID:KGbdpGVYM
最初の最初からそう書いてるだろ
勝手に変な意味に捉えて間違っていると書いた人たちがレベルが低い!数学的素養がない!等とは決して言わないけどw

それとわざわざレスしてまで考えるのを放棄する必要はないな

数学的定義は多分ないと思う
JISでは補数は与えられた数を,ある決められた数から引くことによって得られる数。とだけ書いてある

特定の表記法で特定の操作を行うと2の補数や1の補数が得られるだけ
純粋な自然数の数学の方では足して存在しない最大桁で桁あふれしてその結果0になるなんてないだろう
2024/07/01(月) 22:51:00.53ID:2CRpLpYvd
>>487
>>484へのレスと判断して書くけど
>>459が文脈と文法的に「そう書いてる」のが伝わりにくいって話だよ
2024/07/01(月) 22:56:07.04ID:KGbdpGVYM
対象のレスをずらしてレスバしても無駄だよ

整数に対して全加算器しかないCPUで引き算するには負の数を作って加算するんだよ
単純な桁上がりする二進数の負の表現ではそれが一番楽だからそうなってるだけで数の本質などとは関係ない
2024/07/01(月) 23:01:37.77ID:2CRpLpYvd
いや、これをレスバと捉えられても困る
ID:v6IEo+HRdで検索して読んでくれ
>>462がなんでそういうレスをしたか考察してるだけよ
2024/07/01(月) 23:05:11.06ID:HMCZlSRwH
>>483にとっての一流大は亜細亜大とか帝京国士舘くらいっぽいな
本人だけ頭いいつもりなんだろう
2024/07/01(月) 23:23:21.80ID:yeeSYccVH
こりゃ真面目に相手するだけ時間の無駄こ
>489本人が開き直ってそう言ってるんだから
2024/07/01(月) 23:30:02.54ID:KGbdpGVYM
自分の書いたことを3割でも理解しているか疑問だな

彼の言う通りで時間の無駄こ

そう時間の無駄こ(意味不明だけど)
2024/07/01(月) 23:34:10.94ID:2CRpLpYvd
>>493
>>490は納得してくれた?
2024/07/01(月) 23:46:09.40ID:imqhKWVf0
>>482 は大嘘とは言わんが
すくなくとも
>2の補数はマイナス表現をビットでどのように表現するか
は大嘘と言われても仕方ない
496デフォルトの名無しさん (アウアウエー Sa82-viZ1)
垢版 |
2024/07/02(火) 09:01:12.18ID:LnXo4/R2a
嘘は良くない
chatGPTωが間違って覚えたらどうするんだ
2024/07/02(火) 09:40:07.27ID:WIZ4/2em0
ChatGPTおいなりさん
2024/07/02(火) 10:52:02.92ID:GZ1mhppOp
楕円関数だからなぁ
2024/07/02(火) 12:13:02.92ID:EHfwrvV90
お、これがc#のスレかぁ~
c#の話題が活発に交わされているなぁ(スレ違いだバカ)
2024/07/02(火) 19:37:11.61ID:mKInkvGeM
負け犬の遠吠えがしつこいな

> >2の補数はマイナス表現をビットでどのように表現するか
> は大嘘と言われても仕方ない

定義だけ見て実際に点と点がつながらない人なのだろう
PC関連で2の補数が一般的に何で使われているか思い浮かべてみたらいいよ
他でなにに使ってんの?

CPUの中の全加算器(フルアダー)を使って引き算を行える
その仕組みを使えて便利だから整数型の負の表現として使われる

浮動小数点の仮数部は別に便利な符号化方式があるので使ってない
で符号ビットが別にある
2024/07/02(火) 20:06:01.00ID:EPJGy6/Hd
>>494に言及がないってことはそこには異論がないってことでいいのかね
2024/07/02(火) 20:15:14.44ID:mKInkvGeM
時間の無駄こ
2024/07/02(火) 20:35:40.14ID:EPJGy6/Hd
ごめん、はいかいいえで答えて
2024/07/02(火) 20:53:31.65ID:4r5elc9V0
オイコラミネオ MM96-62Sl
スプッッ Sd4a-RqL6
2024/07/03(水) 00:15:48.22ID:IhB9Q3xj0
定義の話と実例の区別のつかない人か
2024/07/03(水) 15:51:01.90ID:O6aOCvk30
結局のところ>>459の文章が曖昧なのが問題なのであって
いくら長文で俺の知識はどうだ!正しいだろ!ってやったところで意味ないのよね
オイコラはそこに気づいてないのか意図的に話をそらしてるのか
507デフォルトの名無しさん (ワッチョイ a3b1-YEd2)
垢版 |
2024/07/04(木) 09:20:13.32ID:/f5UZ1a30
話をぶったぎってすみません。
C#で質問です。
関数内のローカル変数の定義ですが、下のどちらも同じ効果となりましたが、正解はどちらでしょうか?
byte[] bin = { 0x00, 0x0c, 0x00, 0x00, 0xff, 0xfc, 0x00, 0x00, 0xff, 0xff, 0xdf, 0xff, 0x00, 0x37 };
byte[] bin = new byte[] { 0x00, 0x0c, 0x00, 0x00, 0xff, 0xfc, 0x00, 0x00, 0xff, 0xff, 0xdf, 0xff, 0x00, 0x37 };
2024/07/04(木) 09:27:04.95ID:7WHO1Maz0
どっちも同じ
省略記法なだけでコンパイラがnew byte[]を補完してくれる
2024/07/04(木) 09:46:57.96ID:RZgNR8dh0
前者は初期からあるC伝統の記法で、今のC#ではかなり特異な存在
省略したいなら var bin = new byte[] { もしくは byte[] bin = new { の方が今時
2024/07/04(木) 09:52:19.54ID:EkexM7al0
今時いうなら、C#12のコレクション式使う方が
2024/07/04(木) 10:12:01.67ID:8Qf93cVSp
newが形式的な意味しか無いかと思えばそうじゃ無いものもあったり、紛らわしいよな
512デフォルトの名無しさん (ワッチョイ a3b1-YEd2)
垢版 |
2024/07/04(木) 10:22:31.63ID:/f5UZ1a30
みなさん、ありがとうございます。
513デフォルトの名無しさん (ワッチョイ ffc4-EXgL)
垢版 |
2024/07/04(木) 12:04:37.12ID:H9yTt2xy0
話を分断してすみません。C#で質問があります。
C#の入門本の説明に以下のように書かれています。
私が行番号を追記しました。

1: Value x;
2: x = new Value();
3: x.value = 1;
4: Value y;
5: y = new Value();
6: y.value = 10;
7: Console.Writeline("xが参照するインスタントのvalue値:" + x.value );
8: Console.Writeline("yが参照するインスタントのvalue値:" + y.value );
9: class Value{
10:   public int value;
11: }

実行結果
xが参照するインスタントのvalue値:10
yが参照するインスタントのvalue値:10

そしてこのすぐ下に以下のような説明があります。
「C# 9.0以降のコンソールアプリケーションでは、
クラスの定義などの型の宣言は
トップレベルのステートメントより
あとに記述する決まりになっています。
実際に処理を行うコードよりも先に書い てしまうと
エラーになるので注意してください。」

この場合の
a) トップレベルのステートメント とは、何を示すのでしょうか?
b) 実際に処理を行うコード    とは、何を示すのでしょうか?
2024/07/04(木) 12:18:17.88ID:EkexM7al0
>>513
ものすごく雑に説明すると、C#の文法として元々は
class Program
{
 static void Main()
 {
  Console.WriteLine("Hello");
 }
}
と書いていたのを

Console.WriteLine("Hello");

だけでもOK(Programクラス等が自動生成される)となった
これがトップレベルステートメント
詳細はぐぐるなりして調べてね
で、「実際の処理」はこのMain()に含まれる部分のことを指していると思う
該当の入門書持ってないからしらんけど
2024/07/04(木) 12:34:10.76ID:tYZmQY+E0
横からだけど、そんなことできるなんて知らなかったわ
Mainの中に書いてたものをむき出しにできるので、他のクラス定義は(Mainのなかのコードと間違われないように)後ろに書けってことなのね
でも誰が嬉しいんだろう、こんな書き方できて
2024/07/04(木) 12:44:12.87ID:zdhS8+CYM
Windowsに入っているcscで出来りゃあバッチの代わり的に使えるかもだけど
2024/07/04(木) 12:47:42.63ID:OVu+RlmV0
pythonマンセーの人がいるんじゃないの?しらんけど
2024/07/04(木) 13:00:00.07ID:CI/MzMhG0
C#9.0(.NET5の時)にできるようになったな
519デフォルトの名無しさん (ワッチョイ 877c-5+Ml)
垢版 |
2024/07/04(木) 13:02:17.69ID:A5xueLBi0
Main関数をasync出来るようになったのも良いよね
2024/07/04(木) 14:39:49.72ID:7OcD9IAKp
C#はまんまWindowsで実行出来るからなぁ
2024/07/04(木) 15:17:21.31ID:E/vbSsbX0
Windowsじゃなくてもまんま実行できるけど?
2024/07/04(木) 16:16:34.13ID:7WHO1Maz0
c♯をスクリプトとしても使えるようにしたからトップレベルステートメントにしたんじゃないの
2024/07/04(木) 18:24:08.74ID:yD1XDVhBM
多分.Net6の途中でVSのコンソールアプリのデフォルトテンプレートがトップレベルステートメントのみになってて
ざわついてたんだけどその後従来のテンプレートも再び選択できるようになった

MSは突拍子もないことをする
2024/07/04(木) 19:11:22.26ID:rLEfqFA70
CSスクリプトは2015年だし、関係ないんじゃないかなぁ
2024/07/04(木) 22:00:11.85ID:rs4PbJUZd
https://learn.microsoft.com/en-us/dotnet/csharp/fundamentals/program-structure/top-level-statements
にある通り、Azure FunctionsとGitHub Actionsで使うんだよ
ぶっちゃけ糞Azure Functionsなんかほとんど使われてないしGitHub ActionsのアクションをC#で作ってるのなんて当のMSくらいのもんだが
2024/07/04(木) 22:18:12.37ID:12ygtIZi0
GitHub Actionsはそれ自体がC#で作られたサービスだから、MS自身の視点から見ればアクションもC#で書くのは自然なことなのだろう
とはいえWeb系の方面で広く利用されているサービスなのでC#でアクション作ってる物好きはまず居ないだろうな
2024/07/05(金) 02:20:23.30ID:bUAYo+H80
宣言を後に書かせるようにしたのは作った奴がただのアホだった証左
528デフォルトの名無しさん (ワッチョイ 6ad6-EXgL)
垢版 |
2024/07/05(金) 08:36:05.16ID:GQkuHNKI0
銀河英雄伝説で考えるセキュリティ--将来の「帝国の双璧」が陥った罠とセキュリティ業界
https://japan.zdnet.com/article/35220819/
2024/07/06(土) 17:46:02.34ID:VE2x0Lw00
azure functionsは普通に使うだろ
flex従量課金でやっとlambdaに並んだ
2024/07/06(土) 22:26:07.62ID:AGwoxytw0
AzureのマネージドサービスはEntraIDみたいな情シス向けのを除けば基本的に地雷だからなあ
AWSやGCPに比べて品質が低すぎるし、後からFunctions v2みたいな全面刷新版出してきて初期のゴミを無かったことにしやがるのほんと糞
Azureはエンプラが主戦場だから基本的に技術選定をする人間と開発する人間が別である場合が多く、実際には使い物にならないレベルでも
とにかく機能の頭数揃えといて機能比較表に◯付けてもらえるようにしとくことが重要なんだろうな
2024/07/06(土) 22:47:04.05ID:ByFHXa3/d
最近のAzureはAIやデータ関連のサービスを乱発してるがヤバすぎる品質
これをVSを作ったMSが出しているとは俄かに信じられないレベル
2024/07/07(日) 00:46:55.00ID:0nvg/+8Aa
具体例がないのではぁ、そっすかとしか思えん
M$とか言って揶揄してる脳内の時間が20年前で止まってる人かな
533デフォルトの名無しさん (ワッチョイ cb8e-xVBv)
垢版 |
2024/07/07(日) 04:47:32.20ID:S68hfEFp0
未だにMacのマウスのボタンは1個だけだと言いふらす人もいるし
2024/07/07(日) 06:07:39.76ID:a0g7Uh4H0
> M$とか言って揶揄してる
お前じゃんw
2024/07/15(月) 20:06:43.83ID:s4Fc+aZD0
2つの文字列を比較して、指定文字数以内の違いは同じ物とみなす
あいまいな比較方法ってありますか
2024/07/15(月) 20:16:10.09ID:2IRpGFbx0
>>535
2つの文字列間のレーベンシュタイン距離やジャロ・ウィンクラー距離を計算するといい
537デフォルトの名無しさん (ワッチョイ 99da-mHxf)
垢版 |
2024/07/29(月) 02:37:13.47ID:3Zyyd6Ul0
>>535
AIで
2024/07/30(火) 19:59:54.73ID:DL4H/rwkM
以前ここでドメイン駆動設計について質問させていただいた者です
ドメイン駆動設計入門を読み終わり、多少理解が進んだと思うのでまた質問させてください
・仕様パターンどドメインサービスの違いについて
 この二つの違いが良く分らないのですが、仕様パターンはドメインサービスのうち、評価とフィルタの処理に特化したものと考えていいですか?
・ドメイン層について
 ドメイン層はクラス外と繋がる部分をDIで差し替えれるようにするものという認識です
 例えばパケット送受信などの実装もドメイン層として問題ないですか?
 本やネットでは、DBを扱う層となっているので気になりました

すみませんが、ご回答のほどよろしくお願いいたします
2024/07/31(水) 00:13:39.43ID:nGj2F3MrM
本を本当に読んだのか疑問なんだけど…
2024/07/31(水) 00:13:54.84ID:oPR9EZgr0
仕様パターンはエンティティや値オブジェクトの特定の条件やルールを評価するための小さな部品。

ドメインサービスは複数のエンティティや値オブジェクトを使って、ビジネスロジック全体を実行するための大きな単位。
2024/07/31(水) 01:00:17.43ID:KCF4OHMl0
>>540
ありがとうございます
ドメインサービスって特定のドメインオブジェクトに属さないビジネスロジックを記述しますよね?
それが仕様パターンととても似ていると思うんです

あと・2つ目ですが、ドメイン層でなくインフラストラクチャ層(リポジトリ)の間違いでした
失礼しました
2024/07/31(水) 10:14:08.49ID:oPR9EZgr0
>>541
どちらもビジネスロジックであるという点が似ていると感じるのかも

仕様パターン
・あるエンティティが特定の条件を満たすかどうかを判定したい場合に使う
→ スコープが特定の条件に特化
・ビジネスルールをシンプルに表現する
・他のロジックとの組み合わせて使う
・戻り値がboolやenumが多い

ドメインサービス
・複数のエンティティや値オブジェクトを操作する複雑なビジネスロジックで使う
→ スコープが広範囲なドメインをカバー
・シンプルではなくドメインを詳細に使う
・複雑なビジネスロジックをカプセル化して使う
・戻り値が新しいオブジェクトなど様々
2024/07/31(水) 10:16:31.37ID:sIvSYuPwp
なんだ、石ころと地球の違いか
2024/07/31(水) 13:24:29.59ID:XI+xJQyb0
>>541
DDD用語でのドメインオブジェクトというのは一般的にエンティティかValueオブジェクトのこと
Specificationはビジネスルールを別個のValueオブジェクトに切り出したものでドメインオブジェクトの一つ
2024/07/31(水) 17:36:25.49ID:1vJRJk9QM
仕様パターンはデザインパターンのようなオブジェクト指向のパターン
便利だからそれをDDDに効果的に導入している

概念が違う

〇 ○○は仕様パターンで実装されている
× ○○は仕様パターンである
2024/07/31(水) 21:36:07.63ID:YTodh+4/0
以上IT言葉遊びでした
2024/07/31(水) 22:14:42.70ID:1vJRJk9QM
DDD以外の開発手法に行っても仕様パターンは仕様パターン
ドメインサービスはDDDの固有のものだからコードが同じでも違う呼ばれ方をする違う概念のものとして扱われることになるだろう

DDDには他にもデザインパターンが使われている
上に書かれているインストラクション層ではリポジトリパターンが使われている
2024/07/31(水) 22:20:55.13ID:1vJRJk9QM
インフラストラクチャ層だ
思いっきりミスってる
2024/08/01(木) 22:53:01.56ID:1SK5hkX5d
DDDは生成AIとの相性が悪いからオワコン
時代はSQLよ
2024/08/02(金) 01:59:59.79ID:eog8kicV0
仕様パターンとドメインサービスは概念が違うもの、というのがとてもしっくりできました
皆さんありがとうございました

>>538でもう一つ質問していますが、(ドメイン層でなくインフラストラクチャ層の間違いでした)インフラストラクチャ層にパケット送受信など記述するのはおかしいですか?
インフラストラクチャ層はDB永続化の目的だけに使うべきですか?
2024/08/02(金) 15:43:21.42ID:Wqkb4RjVd
裏側の仕組みがどうであれ、それを集約としてモデリングできるなら何の問題もない
できないならDDDの範疇外だからDDD的にはお好きにどうぞとしか言えない
2024/08/03(土) 14:59:13.44ID:oR+oLHPm0
>>550みたいな新卒や未経験レベルが学ぼうとしても前提知識が多すぎて全く理解が及ばない事が容易に推測できるのがDDDのデメリット
手を出すならもっと経験を積んでからだよ最後にC#関係ねーだろカス
2024/08/03(土) 21:44:08.94ID:03V3Nqz30
DDDの肝はアプリケーションサービスだの値オブジェクトだのといったテクニックではなく、
ユーザーと要件を詰めてビジネスドメインをオブジェクト指向モデルに落とし込む部分
それ以外は全てオマケと言っても差し支えない
誤った抽象化によりドメインエキスパートのコミュニケーションに支障をきたすようなモデルになってしまっていたら、
いかにDDDの「オマケ」を正しく使いこなした美しい設計であろうともそれはゴミなんだよ
2024/08/03(土) 22:45:02.84ID:goAr6v/C0
DDDの勉強の前にまず就職しないと業務というものがわからんだろう
2024/08/03(土) 23:14:52.27ID:uvB3fHLUM
なんだかあまり意味のない話を書かれても

個人が自分のために開発するならそのドメインエキスパートは誰なのかと考えなくてもわかるだろう
2024/08/03(土) 23:47:05.89ID:03V3Nqz30
DDDはそもそも開発者とドメインエキスパートが別の人間であることが前提
恋愛術を自分自身に対して実践しても仕方ないだろう?
2024/08/16(金) 12:11:24.60ID:WN4UyUwy0
address.PropertyChanged += (s, e) => {
switch (e.PropertyName) {
case "Address":
//処理の中身
break;
} };
となっているところをもっと簡素化した書き方ってできるのでしょうか?
2024/08/16(金) 12:39:59.89ID:97HjWwrx0
君が定義する簡素化とは?
2024/08/16(金) 14:30:07.59ID:2yB7JRN+0
>>557
簡素化?とは関係ないけど
nameof使った方がいいかも
2024/08/16(金) 15:16:11.70ID:hHzMpXQ60
プロパティ名を実行時に文字列値比較するのはプログラム的に美しくない
PropertyNameがAddressの時だけに呼び出されるハンドラを定義できればベター
できなければその言語は発展途上かな
2024/08/16(金) 15:28:45.14ID:wseuDHkQ0
言語というかフレームワークの問題
別に今ならソースジェネレーターもあるのだから言語機能としては楽に実装できる訳だからな
まあ原始的に文字列比較するのは他の言語のGUIフレームワークでも往々にしてあるけど
2024/08/16(金) 16:59:52.55ID:1NlBn56K0
>>560
>PropertyNameがAddressの時だけに呼び出されるハンドラを定義できればベター
言語的には普通にできるよ

できるけどプロパティ別のイベントとハンドラを使わずに
汎用的なイベントとハンドラが一般的に使われるのは
フレームワークがINotifyPropertyChangedインターフェースと
そこに定義されてる汎用的なPropertyChangedイベントを前提としてるから
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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