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

■ このスレッドは過去ログ倉庫に格納されています
2022/06/17(金) 08:42:12.88ID:CPX9Pfyj0
!extend:checked:vvvvv:1000:512
次スレを立てる時は↑を2行冒頭に書くこと(1行分は消えて表示されない為)

「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスや酔っぱらいレスはやめてください
>>980を踏んだ人は新スレを建てて下さい。>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。

■前スレ
ふらっと C#,C♯,C#(初心者用) Part154
https://mevius.5ch.net/test/read.cgi/tech/1644416019/
■関連スレ
C#, C♯, C#相談室 Part96
https://mevius.5ch.net/test/read.cgi/tech/1639965805/
■コードを貼る場合は↓を使いましょう。
https://ideone.com/
https://dotnetfiddle.net/
■情報源
https://docs.microsoft.com/ja-jp/dotnet/standard/class-libraries/
https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/
https://docs.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
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
2022/07/07(木) 08:45:46.37ID:gjoYu6DS0
Linuxってファイルにバージョンみたいなメタデータ持たせてんだっけ
AssemblyオブジェクトからGetCustomAttribute<AssemblyFileVersionAttribute>()すればいいんじゃない
GetExecutingAssembly()が失敗するならtypeof(適当なクラス).Assemblyで
2022/07/07(木) 10:43:10.21ID:HZWhR94l0
>>199
コンテンツが表示し切れなかったらスクロールするようにしとけば
204デフォルトの名無しさん (ワッチョイ 035f-A/OY)
垢版 |
2022/07/08(金) 01:18:26.52ID:2uhV5uBf0
grepとかした時に、static変数と、staticメソッドの見分けが簡単につかないのは言語的に欠陥だと思ってるんだけど、皆さんどう思います?
2022/07/08(金) 08:34:52.99ID:skMpW7pT0
Visual Studio内で完結するからgrep要らないだろ
Visual Studioなきゃ何もできない言語って意味では欠陥だらけだが
206デフォルトの名無しさん (スップ Sdaa-UfCW)
垢版 |
2022/07/08(金) 10:06:43.45ID:0Bd0SGWId
grep -E 'static[^=]+\('
2022/07/08(金) 11:15:41.90ID:N2+ntTX1M
static 変数

private static int _count = 0;

static メソッド

internal static void Call()
2022/07/08(金) 11:16:19.06ID:N2+ntTX1M
C#だとこのように簡単に見分けがつくけど一体どの言語の話をしてるんだろうか?
2022/07/08(金) 12:37:30.28ID:hiK9rTst0
世界線が違うのかねえ
2022/07/08(金) 12:42:53.65ID:hiK9rTst0
変数は名詞でメソッドは動詞にするのが一般的なのでreadみたいな一部の単語を除けば言語によらず問題にならんだろう
リーダブルコードとか読んできてよ
初心者なら
2022/07/08(金) 12:48:48.83ID:OZjMTx6FM
煽って教えて欲しかったパターンやろ
212デフォルトの名無しさん (ワッチョイ 035f-A/OY)
垢版 |
2022/07/08(金) 14:31:59.45ID:2uhV5uBf0
internal とか void とか判別しやすい例出して、判別できるじゃんと言われてもなぁ
2022/07/08(金) 14:34:05.05ID:G/CdBPp1M
>>212
ガチ馬鹿なのかな?これでも見分けつかんか?

static 変数

static int _count = 0;

static メソッド

static void Call()
2022/07/08(金) 14:34:31.26ID:G/CdBPp1M
間違えた

static 変数

static int _count = 0;

static メソッド

static int Call()
2022/07/08(金) 14:35:03.78ID:3SGLIVmR0
>>212
どこ見てるんだよw
()の有無だろ
2022/07/08(金) 14:43:00.23ID:G/CdBPp1M
rustを使うと馬鹿になるんだよな
2022/07/08(金) 15:11:15.93ID:ejQ2E0qh0
頭の欠陥の方だったか
218デフォルトの名無しさん (ワッチョイ 9ebb-rOZM)
垢版 |
2022/07/08(金) 16:42:05.44ID:AegC83dn0
新興言語では、急激にOOPとの結びつきが弱まっていて、代わりに特別な指向を持っていてさ
そっちを学習した後にOOPベースの言語に戻ってくると、ほんと感覚が狂う
2022/07/08(金) 16:43:39.21ID:PiqGkGWC0
OOPS
2022/07/08(金) 17:45:25.22ID:G/CdBPp1M
>>218
static変数か関数か区別できないって相当おかしいけど
2022/07/08(金) 19:59:03.56ID:lD1r+WGYM
>>212
話を続けたいなら、逆にどの言語のgrep-abilityが理想的だと感じるか教えてくれんか
何を求めてるかはっきりしないから、括弧の有無で分かるだろタワケ以上の回答は得られないように思う
222デフォルトの名無しさん (ワッチョイ 9ebb-rOZM)
垢版 |
2022/07/08(金) 22:39:50.35ID:AegC83dn0
>>220
そういや、大文字か小文字かってのもちょっと狂うね
まあそんな表面的な違いは大したことはないんだけど
2022/07/10(日) 08:41:58.66ID:Ofnz2Mf40
vb.netとc#はセットでコードを載せてるwebサイト多いから同じ言語だな
2022/07/10(日) 09:17:42.49ID:2lWNRyj/0
>>223
まだ言うか
2022/07/10(日) 09:41:35.46ID:dRGk1maa0
文の書き方に違いがあるだけで、使ってる語句は同じだ。
2022/07/10(日) 10:04:57.88ID:X/cjUhFp0
同じに見えるのは病気ですよ
2022/07/10(日) 18:53:49.82ID:K6zNp1si0
まーたこいつか
SNSにでも垂れ流してろ
2022/07/10(日) 22:22:55.10ID:wMqDENwq0
c#はc++を発展させた言語であるかのように欺いたvbである。
2022/07/10(日) 22:27:43.20ID:XBuHMFXV0
C# も VB.NET も .NET を人向けにプログラム言語にしたもの
2022/07/10(日) 23:21:25.85ID:za66V9r/0
同じマンまだおったんか
231デフォルトの名無しさん (ワッチョイ cbbb-TLTf)
垢版 |
2022/07/11(月) 00:28:27.54ID:CCGmUSBS0
いずれC#も廃れるだろうが、みんなVBおじさんみたいにはならんようにしような
2022/07/11(月) 01:27:39.35ID:HIY5g3Yw0
ここは人格攻撃をする場と思ってんのか
2022/07/11(月) 05:54:55.27ID:L4tB3bvp0
VBの事を騙るスレでは無いな
2022/07/11(月) 06:46:54.81ID:GGvKul+ur
実際、c#って人気ないからな
人気はあるのかもしれないが使われていない
大規模システムはほぼJavaだし
簡単なWinFormくらいだろう
有名なシステムでこれといってc#が使われているということを聞いたことがない
2022/07/11(月) 07:48:56.03ID:iksZ9aQE0
いきなり2行で矛盾やめろw
2022/07/11(月) 10:01:05.18ID:lOE9m3Ds0
wwww
まぁ、Unityが無ければそこまで覚えたいと思えるものではないかもな
今だとWindowsアプリ作ったりする人も減ってるだろうし
サーバーサイドでの採用率も低そうだし
237デフォルトの名無しさん (アウアウウー Sa09-2HoA)
垢版 |
2022/07/11(月) 10:35:46.98ID:1W23UOpta
それなりに使われてるが
どうせ下請け孫請けなので
守秘義務で外に出て来ないだけ
2022/07/11(月) 11:55:44.49ID:5PTk/FF60
C#で作成したライブラリを他者に使われないようにする方法はありますか?
難読化しても呼び出すクラスやメソッドが分かれば、利用する事ができてしまうものでしょうか?
2022/07/11(月) 12:12:35.97ID:Mu0Fq/b9M
難読化ってどこまでやってくれんだろうね
引数の数もメソッド名もぐちゃぐちゃにするなら、不可能では無いにせよ現実的に難しいと思うけど
2022/07/11(月) 12:28:05.13ID:Mu0Fq/b9M
クラス名や引数そのままなら、普通に推測は出来てしまうと思う
どうしてもってなら、アクティベーションみたいなネットワーク認証しないと使えない仕組み入れるしかない
2022/07/11(月) 12:30:30.12ID:+1/8CWP60
>>238
難読化でライブラリの中のコードが見れないように出来ても、公開しているものを隠すのは無理じゃないか
仮に隠せたら、自分でも利用できないってことに
2022/07/11(月) 12:57:01.67ID:dmn56bqZ0
>>239
自分のソフトを自分で逆コンパイルしてみればわかるよ
2022/07/11(月) 15:59:29.22ID:o+Vp/fL50
>>238
具体的に環境(.NET Core、.NET Framework、Unity…)や制限したい部分にも依るかねぇ?
外部からの参照方法によってはクラスやメソッド名まで変えられはしないだろうし
単にクラスライブラリとして露出させたくなければ共有プロジェクトにする方法も有るけど

Frameworkの単体EXEへ出来ればMatcode comPRESSerでも簡易的にデコンパイル阻止とか
netshrinkとかはDLLもバインドできて…難読化だけよりこういった包括的パッカー向き?
いずれにしても解析を完全阻止するのは不可能であるから、どこら辺を及第点とするか
2022/07/11(月) 17:53:50.74ID:d1RSnGBRM
もう見られたくない処理だけc++で書いてモジュールキックとかでいいんじゃないかな?
245デフォルトの名無しさん (オッペケ Sra1-2twL)
垢版 |
2022/07/11(月) 18:08:22.09ID:Gc8t7u3Xr
JavaオワコンでC#がそろそろ来る
2022/07/11(月) 19:02:02.38ID:5PTk/FF60
>>241
そですよね
>>243のような方法か.NET7のネイティブコンパイラに期待するか、
>>240, 244のように.NET以外で何らかの認証をするくらいしかないようですね
2022/07/12(火) 07:42:04.63ID:d+D22Oihr
>>245
もう10年以上そう言われてるが一向にJavaがオワコンにならずc#がオワコンしてる
2022/07/12(火) 08:10:19.93ID:cwVe/GJo0
https://redmonk.com/sogrady/files/2022/03/lang-rank-0122-wm.png
未だにJava3位なんだな
今どこで使われてんの
2022/07/12(火) 08:12:48.62ID:xes6G2QHp
JavaパイセンはもうCOBOLの域に入ってるやろ
2022/07/12(火) 08:13:01.75ID:I1ttMvVed
サーバーサイド
C#も今ではほとんどがサーバーサイド
2022/07/12(火) 08:22:48.21ID:O8wzjFzNa
>>250
サーバーサイドで使われているか?
2022/07/12(火) 08:28:10.27ID:KuQV4+SIa
10年前はともかくOracleの有料化のインパクトはでかかったからな
新規案件は壊滅したわ
2022/07/12(火) 09:46:46.14ID:w0UtJt4u0
Javaは単価安いし
254デフォルトの名無しさん (アウアウウー Sa09-2HoA)
垢版 |
2022/07/12(火) 10:26:31.62ID:Sm3tO535a
トラブル繰り返してる某みずほ金融なんかは Java ? COBOL ?
2022/07/12(火) 10:52:02.28ID:bC3C9A550
金融とかの規模で言語統一なんて無理やろ
メインフレームは減ったらしいけど、サーバーなんかは数百以上の規模であるんやないか?
2022/07/12(火) 11:05:26.87ID:7D6kUfzj0
同一規格のサーバーで数千台展開したあとに不具合見つかってどうしようもなくなった某国営企業とかあったから
あまり統一しまくってもいいことないよ
2022/07/12(火) 11:58:30.45ID:O8wzjFzNa
JavaはCOBOLの置き換え案件で多いな
2022/07/12(火) 13:29:14.03ID:UDBx8Sz50
YouTube で有名な雑食系エンジニア・KENTA の、
月千円の初心者向けRuby on Rails サロンには、日本6位の3千人が入っている。
(1位は、キングコング西野の数万人)

そのKENTAの天敵が、SES のモロー

2年前のモローの主張は、KENTAがRailsを勧める理由は、
ポートフォリオ制作を長引かせて、サロンで儲けるためであり、
Railsはオワコンで、転職には、PHP, Java を推奨していた

【2022年版】Ruby on Railsの将来性

ところが、モローのYouTube のこの動画では、
日本ではRailsが主流なので、Railsのキャリア相談などをやっているw

PHP, JavaのSES案件は、どうなったの?w
2022/07/12(火) 19:27:59.46ID:OqOLXv5J0
winformsってまだまだ現役なの?いろんな現場行くとあれもこれもwinformsでせめてwpf使おうぜ……って思うんですが
そもそもデスクトップアプリってもう死に体じゃないんですかね。そんな仕事まだいっぱいある気がする
2022/07/12(火) 20:10:31.06ID:cwVe/GJo0
君がWPFの開発手法を広めればいいんじゃないかな
業務用アプリだと見た目大してこだわらないとこ多いし
慣れてる人多いWinFormでってなりがち
2022/07/12(火) 21:05:38.65ID:INSzBWFiM
なんかWPFは普通に組むのもままならない感じ
2022/07/12(火) 21:27:40.52ID:cwVe/GJo0
個人開発で自分一人で作るなら何使っても構わんけど
会社だと引継ぎも考えないといけないから中々そうもいかん
新しい技術導入しようとするなら、現状よりメリットあるのを上に説明して
軌道乗るまで全部自分が面倒見るくらいの気概がないとやれない
2022/07/12(火) 22:06:12.97ID:xb5/kh2z0
新しく入ってきたメンバーがFormsしか使ったことがないとかそもそもC#知らないとか
そういうのがないわけではないし、そういう場合は教育するわな。
2022/07/12(火) 22:37:57.38ID:7D6kUfzj0
>>259
wpfのメリットって何かあるの?
2022/07/12(火) 23:00:05.49ID:c+hHR+kn0
かっちょええ画面が作れる
2022/07/12(火) 23:04:53.21ID:w0UtJt4u0
pant.net はform で作られている。後は判るな?
2022/07/12(火) 23:17:33.70ID:LCOK+7zxp
でもMS内製のPIXはWPFだし
2022/07/12(火) 23:19:17.64ID:OqOLXv5J0
画面レイアウトが崩れないのは本当に大きい
というかUIをXMLの形で読めるという最大のメリットがある
2022/07/12(火) 23:25:28.09ID:6tTlbHbB0
WPFはネイティブコンパイルできれば化けると思う
はよせい
2022/07/12(火) 23:33:27.23ID:w0UtJt4u0
PintaはGTK#で作られている。後は判るな?
2022/07/12(火) 23:42:10.05ID:GM5H0U27p
でもMS製のMSIX Packaging ToolはWPFだし
2022/07/13(水) 00:08:28.23ID:Pn4iWwXT0
たまに居ますね Winformsに親を殺された人
2022/07/13(水) 00:16:22.28ID:UzSTT+o30
Winformsに母屋を取られた人が最近も誰かに発泡酒してたからね
274デフォルトの名無しさん (ワッチョイ 23ad-KWb1)
垢版 |
2022/07/13(水) 02:56:59.27ID:dyEYJovX0
>>264
Winformと比較しての話だけど、
コントロールを何でも入れ子にできる
リサイズに追従したUIが簡単
UIの見た目のカスタマイズが簡単
高dpiモニタ対応が簡単
gitで管理しやすい

あたりがメリットかと
逆にこれらがいらないならWinformでもいい
2022/07/13(水) 06:49:24.41ID:tapB8dwS0
WPFの欠点は素だと面倒臭すぎるから
何らかのツールキットを使う事になる点

で、どれを使うのという争いが始まる
2022/07/13(水) 10:38:20.60ID:KXEqytHsr
WinUI 3のこともたまには思い出してあげてくださいね
277デフォルトの名無しさん (ワッチョイ d501-FjFw)
垢版 |
2022/07/13(水) 11:09:56.32ID:PcPKVcW10
リリースされたんだっけ?
2022/07/13(水) 12:41:53.51ID:0lUZ9jOo0
ベータを脱却してから教えてくれ
2022/07/13(水) 12:44:29.98ID:xT0Do9A+0
MAUI…
2022/07/13(水) 13:54:06.66ID:9C8kcpqG0
UWP・・・
2022/07/13(水) 15:36:04.89ID:Vti+UkSh0
まうい!
2022/07/13(水) 18:27:42.42ID:n1OVHpGm0
うぃにゅい!
2022/07/13(水) 20:30:31.03ID:ng/P0rRL0
高dpi対応とかってフレームワーク変える程の事なの
284デフォルトの名無しさん (ワッチョイ 23ad-KWb1)
垢版 |
2022/07/13(水) 20:53:16.22ID:dyEYJovX0
>>283
WinformからWPFのことなら、フレームワーク変えるまでもない
お互いに入れ子にできるしな
2022/07/14(木) 12:36:38.90ID:LJpGcg2yM
WEBアプリ作ってwebviewで表示。
2022/07/14(木) 16:21:18.28ID:byMNg0Sy0
せめてwebview2にして
2022/07/15(金) 00:51:54.21ID:lF4sBNwn0
webviewとかになると別にC#で作る必要無いんだよねぇ・・・
2022/07/15(金) 13:25:44.04ID:Wgy0KDmed
>>284
でもWPFて専用ツール要るんでしょ?
winformの一部だけWPFにしてる例って示せる?
2022/07/15(金) 13:40:19.64ID:laDvzGYl0
WPFってUI部分をxamlで書いて中身をC#って感じだからWinFormから簡単に以降できるでしょ…
2022/07/15(金) 13:43:28.52ID:w1A0sfi20
>>288
専用ツールは要らない
VSだけで良い
2022/07/15(金) 14:35:32.64ID:8JvUuYmY0
blender わい無能け?
292デフォルトの名無しさん (アウアウウー Sa09-KWb1)
垢版 |
2022/07/15(金) 15:11:28.33ID:oyGbt8u5a
>>288
専用ツールは必要ないよ
例はelementhostでググるといろいろ出てくるよ
2022/07/15(金) 15:40:36.99ID:l4dzAa6fa
>>289
WPFにはこの距離感で正解だろうね
2022/07/15(金) 20:59:06.88ID:xUkWxi720
winformならdatasetで決まりだけど
wpfなら何使えばいい?
2022/07/15(金) 21:02:37.56ID:NwjizpFI0
datasetが使いたいのならwpfででも使ったらいいんでないの?
なにをききたいんかよく分らん
2022/07/15(金) 22:17:23.22ID:tP5MISnn0
現場入ったらDAOなるSQL文字列や接続処理を大量にぶちこんだ数千行の巨大クラス経由でデータベースにアクセスするシステムだったんですがこれはC#でも普通のことなんでしょうか
検索したらjavaの例ばっかだったのであまり一般的ではないのかなと。もしそうならC#ではどういうふうにするのが一般的ですか?
2022/07/15(金) 22:51:43.52ID:8JvUuYmY0
LINQ to SQL
2022/07/15(金) 23:47:25.37ID:IXEhYVNJ0
>>296
RepositoryをEntity Framework使って実装するのが一般的だと思う
各リポジトリは数千行とかには普通ならない
2022/07/16(土) 07:10:20.01ID:QBuuK8Ob0
>>296
現場の設計者がアホなだけ
自分で読んでみてそのクラスの機能が必要充分か一回確認してみれば
2022/07/16(土) 09:42:56.36ID:e0GJPcDwM
DataAdapter使ってORマッピングやバリデーションをベタ書きでやってれば1つの処理だけで数百行にはなるから
古いシステムならそこまで稀有な例ってわけでも無いと思う
2022/07/16(土) 12:13:59.25ID:v3eAMl7Q0
あーやっぱり今はentity framewokですか。そっちは使ったことあったんですが
例えば1処理でかくなったら関数を抽出するとか、各処理の共通部分をやっぱり関数にまとめるとか、そういうことはしないもんなんですかね
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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