C#, C♯, C#相談室 Part98 (518レス)
C#, C♯, C#相談室 Part98 http://mevius.5ch.net/test/read.cgi/tech/1719656321/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
221: デフォルトの名無しさん (ワッチョイ df2b-2fXw) [sage] 2024/12/12(木) 22:49:28.08 ID:cbjQHW3y0 そもそも そんな鳥のプログラムなんか一般的じゃねーし http://mevius.5ch.net/test/read.cgi/tech/1719656321/221
222: デフォルトの名無しさん (ワッチョイ 474b-Ahcx) [] 2024/12/12(木) 22:59:54.30 ID:m/Fq7DtI0 >>220 「クライアントが『泳ぐ、飛ぶ、もしくは走る動物』として使うことを想定するのなら、そのインターフェースであるIAnimalにその情報を含めるのは適切」ということですかね class Penguin としては Fly や Run などのメソッドの実装はノイズに思えるけど、IAnimalとして使われるなら、その契約に従えという感じかな (それだと後から「道具を使う」がIAnimalに追加された際に Penguine もメソッド追加が必要で、そこがモヤモヤしてる) こういう場合にアダプタ (ラッパー?) を使うのって適切? 純粋に Penguine としての機能を提供するクラスと、それを IAnimal として使うためのアダプタみたいなの それだと更に複雑さを増すだけ? OOP難しい…… http://mevius.5ch.net/test/read.cgi/tech/1719656321/222
223: デフォルトの名無しさん (ワッチョイ df2b-2fXw) [sage] 2024/12/12(木) 23:02:07.06 ID:cbjQHW3y0 適切とか とりあえず作ればよくね? 適切かどうかなんてエグゼにしたら関係なくね? それとも論点だけ考えて実際のプログラム作らないの? それ何したいの http://mevius.5ch.net/test/read.cgi/tech/1719656321/223
224: デフォルトの名無しさん (ワッチョイ df6a-B4jd) [sage] 2024/12/12(木) 23:31:52.39 ID:RbZTiiBk0 例が不適切だから混乱してるだけにしか見えないなぁ http://mevius.5ch.net/test/read.cgi/tech/1719656321/224
225: デフォルトの名無しさん (ワッチョイ ff70-Ahcx) [] 2024/12/12(木) 23:50:28.74 ID:cAk5An+50 SOLIDが現実のコードで使われなかったり、「オブジェクト指向は問題を複雑にするだけ」みたいなことを言われる原因 http://mevius.5ch.net/test/read.cgi/tech/1719656321/225
226: デフォルトの名無しさん (ワッチョイ 6714-oAsD) [sage] 2024/12/13(金) 01:16:53.76 ID:sFncMVeV0 >>203 インターフェース分離の原則は「クラスが必要としないメソッドを実装しない」ってだけ ペンギンのような飛べない鳥が IFlyable を実装しないのは正しい あとは「飛べる鳥」をインターフェースで分かるようにしてやればいい isを使う羽目になったのは飛べるかどうかわからない IBirdをListにしてるから --- interface IBird { string Name { get; } } interface IFlyable : IBird { void Fly(); } // ペンギンは飛べない class Penguin : IBird { public string Name => "Penguin"; } // ワシは飛べる class Eagle : IFlyable { public string Name => "Eagle"; public void Fly() => Console.WriteLine($"{Name} is flying!"); } // 飛べる鳥だけを扱うリストを作る List<IFlyable> flyableBirds = new List<IFlyable> { new Eagle() }; foreach (var bird in flyableBirds) { bird.Fly(); // 明示的に飛べる鳥しか扱わない } http://mevius.5ch.net/test/read.cgi/tech/1719656321/226
227: デフォルトの名無しさん (ワッチョイ e701-5/pq) [sage] 2024/12/13(金) 01:54:21.75 ID:aJRVKPMX0 こいつら病気なんか http://mevius.5ch.net/test/read.cgi/tech/1719656321/227
228: デフォルトの名無しさん (ワッチョイ df2b-2fXw) [sage] 2024/12/13(金) 01:55:37.37 ID:0Vp4NoOf0 だね http://mevius.5ch.net/test/read.cgi/tech/1719656321/228
229: デフォルトの名無しさん (ワッチョイ 7f10-InQL) [sage] 2024/12/13(金) 06:18:42.75 ID:ooVm180t0 SOLIDにしても所詮理想論であって現場に即してるわけじゃないしなぁ http://mevius.5ch.net/test/read.cgi/tech/1719656321/229
230: デフォルトの名無しさん (ブーイモ MMff-RQnm) [sage] 2024/12/13(金) 07:39:08.04 ID:WeveN3pQM せやな http://mevius.5ch.net/test/read.cgi/tech/1719656321/230
231: デフォルトの名無しさん (ワッチョイ 27a0-tB0+) [] 2024/12/13(金) 17:30:15.58 ID:LAtQrsJV0 サイコパスの脳の違いを発見。一般の人に比べ線条体が大きいことが判明 karapaia.com/archives/52313287.html http://mevius.5ch.net/test/read.cgi/tech/1719656321/231
232: デフォルトの名無しさん (スププ Sdff-AHQg) [sage] 2024/12/13(金) 20:28:57.37 ID:DLDRNjlrd 関数型がいいんだね! http://mevius.5ch.net/test/read.cgi/tech/1719656321/232
233: デフォルトの名無しさん (ワッチョイ 7f6e-VwYf) [sage] 2024/12/14(土) 09:23:37.03 ID:9hmM95L70 後から増えた「道具を使う」には何かいい感じにデフォルト実装つけとけば既存のクラスには影響しないんじゃない http://mevius.5ch.net/test/read.cgi/tech/1719656321/233
234: デフォルトの名無しさん (ワッチョイ bfe7-AHQg) [sage] 2024/12/14(土) 12:26:32.43 ID:vNNE6Utb0 それを派生というのでは? http://mevius.5ch.net/test/read.cgi/tech/1719656321/234
235: デフォルトの名無しさん (ワッチョイ 4783-Ahcx) [] 2024/12/14(土) 12:52:03.62 ID:/3oGIJ400 C# 8 からはインターフェースのデフォルト実装が使える http://mevius.5ch.net/test/read.cgi/tech/1719656321/235
236: デフォルトの名無しさん (ワッチョイ bf79-/9Tr) [sage] 2024/12/14(土) 14:27:07.29 ID:TQJHLK8K0 Win10や11のOS付属のpowershell5.1でインラインで書けるC#ってバージョンちょっと古くね できれば新しいRoslynのC#をpowershellから使いたいのだが なんか昔の記事しか見つからん http://mevius.5ch.net/test/read.cgi/tech/1719656321/236
237: デフォルトの名無しさん (ワッチョイ bf19-xj7L) [sage] 2024/12/14(土) 15:05:36.28 ID:uE892PPx0 どうせ別に入れる必要があるならPowerShell 7入れれば良くね http://mevius.5ch.net/test/read.cgi/tech/1719656321/237
238: デフォルトの名無しさん (ワッチョイ a78e-4Hmg) [] 2024/12/14(土) 16:09:38.02 ID:SXm2TFHi0 >>236 起動時に出て来るメッセージすら読めないのか http://mevius.5ch.net/test/read.cgi/tech/1719656321/238
239: デフォルトの名無しさん (ワッチョイ 2679-qWVo) [sage] 2024/12/15(日) 03:52:31.32 ID:c6iml+qS0 >>238 お前はこれでも読んどけ https://learn.microsoft.com/ja-jp/powershell/scripting/whats-new/differences-from-windows-powershell?view=powershell-7.4 Roslyn単体で使うだけならビルドツール拾ってくるだけだが Powershell上げるとなると仕様も大幅に変わってたりして無理だし俺が出した要件の解にもなってない http://mevius.5ch.net/test/read.cgi/tech/1719656321/239
240: デフォルトの名無しさん (ワッチョイ db8e-Dyog) [] 2024/12/15(日) 04:43:36.26 ID:OuaeEhke0 >>239 馬鹿が必死に調べただけの浅い知識で言い訳してる http://mevius.5ch.net/test/read.cgi/tech/1719656321/240
241: デフォルトの名無しさん (オイコラミネオ MM8f-Xxs2) [sage] 2024/12/15(日) 09:22:53.93 ID:6s9C3wLNM 今のところ互換性の為に残してあるんだろう それを変えちゃうと問題が起こる可能性があるしMS側のメンテがめんどうなので 変えたい人は7とセットで入れろということなんだろう http://mevius.5ch.net/test/read.cgi/tech/1719656321/241
242: デフォルトの名無しさん (ワッチョイ fa12-/DxF) [sage] 2024/12/15(日) 13:32:12.27 ID:1H80RXIX0 >>239 バカの相手はしなくていいわ その情報はありがたいが http://mevius.5ch.net/test/read.cgi/tech/1719656321/242
243: デフォルトの名無しさん (ワッチョイ fb50-Nme3) [sage] 2024/12/16(月) 00:02:44.03 ID:jraeIOUM0 PowerShellは完全に袋小路だからもう諦めた方がいい 6以降は事実上Azure専用 http://mevius.5ch.net/test/read.cgi/tech/1719656321/243
244: デフォルトの名無しさん (ワッチョイ db8e-Dyog) [] 2024/12/16(月) 03:32:32.19 ID:B9vFRMjT0 >>242 うわっ 自分の言い訳コメントに自作自演で恥ずかしい馬鹿発見 http://mevius.5ch.net/test/read.cgi/tech/1719656321/244
245: デフォルトの名無しさん (ワッチョイ 7e90-3k2I) [] 2024/12/16(月) 04:36:14.08 ID:M2IkaScH0 なんで作っては捨ててくスタイルなんかなMicrosoftは http://mevius.5ch.net/test/read.cgi/tech/1719656321/245
246: デフォルトの名無しさん (ワッチョイ 4a2b-bCeE) [sage] 2024/12/16(月) 06:57:26.47 ID:xj9X4IbW0 作ってないやろ 買収してるだけ http://mevius.5ch.net/test/read.cgi/tech/1719656321/246
247: デフォルトの名無しさん (ワッチョイ be10-Xxs2) [sage] 2024/12/16(月) 08:17:45.85 ID:d6I1DTY60 PSはMSが作ってるが http://mevius.5ch.net/test/read.cgi/tech/1719656321/247
248: デフォルトの名無しさん (ワッチョイ 0bff-iztn) [sage] 2024/12/16(月) 09:42:40.38 ID:WomMb93i0 Windowsに標準搭載されてる.NET Frameworkと今の.NETの時点で互換性ないのに なんで.NETアプリであるPowerShellが叩かれるのか http://mevius.5ch.net/test/read.cgi/tech/1719656321/248
249: デフォルトの名無しさん (ワッチョイ 0fd7-Xxs2) [sage] 2024/12/16(月) 12:31:10.08 ID:zYOmJNRT0 標準搭載されてるPowerShellは.NETアプリじゃなくて.NET Frameworkアプリだからね http://mevius.5ch.net/test/read.cgi/tech/1719656321/249
250: デフォルトの名無しさん (ワッチョイ 2344-/DxF) [sage] 2024/12/16(月) 13:18:44.44 ID:ZxGHnTET0 >>245 MSの社内政治に敗れたチームのプロダクトはそうなりがち 社内政治うまくやってると微妙なやつも長生きする http://mevius.5ch.net/test/read.cgi/tech/1719656321/250
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 268 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.011s