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

レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん (ワッチョイ 2b02-+i0H)2021/03/23(火) 12:58:24.10ID:ACoFzk2L0
!extend:checked:vvvvv:1000:512
次スレを立てる時は↑を2行冒頭に書くこと(1行分は消えて表示されない為)

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

■前スレ
ふらっと C#,C♯,C#(初心者用) Part149
http://mevius.5ch.net/test/read.cgi/tech/1608085775/
■関連スレ
C#, C♯, C#相談室 Part94
https://mevius.5ch.net/test/read.cgi/tech/1553075856/
■コードを貼る場合は↓を使いましょう。
http://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
http://referencesource.microsoft.com/
・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
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured

0952デフォルトの名無しさん (ワッチョイ aba7-4lYq)2021/05/14(金) 14:10:10.14ID:xt/CNvYd0
ぶっちゃけ客先のカスタマイズできない環境で文字ちっちゃくて見にくいときあるからイラネ

0953デフォルトの名無しさん (アウアウウー Sa1d-JrGs)2021/05/14(金) 14:16:07.40ID:E7dr4uiDa
しかし、_でプリフィクスしとくとインテリセンスでフィールドが一覧できて便利だよ、
ってコメントは泣けてくるねw

普通逆じゃないかw
インテリセンスの候補に登場して欲しくない奴を_でプリフィクスするのが普通のセンスだと思うけど。

0954デフォルトの名無しさん (ワッチョイ 1fb0-sort)2021/05/14(金) 14:36:58.65ID:idb/Si4k0
>>953
そのコメントどこに書いてある?


ところで別の話なんだけど、
とあるデータの集計や加工をメソッドチェーンで書きたい考えと、その集計や加工をデータとは別のクラスかつステートレスで書きたい考えって両立できるのかな?
拡張メソッド使うくらい?

0955デフォルトの名無しさん (ワッチョイ ff01-vB/y)2021/05/14(金) 16:32:10.35ID:0kdm8qdh0
>>954
コンテナ(データ).加工(…).集計(…)

インスタンスメソッドは暗黙的にthisを使ってるのでステートレスじゃないってことなら拡張メソッドも同じじゃない?

0956デフォルトの名無しさん (ワッチョイ cb68-gSvD)2021/05/14(金) 19:49:54.05ID:xeRYEvYS0
オセロのプログラム作っています。
オセロが盤面にの上にくると影を描きたいのですが
これはフォームアプリでできますか?

0957デフォルトの名無しさん (ワッチョイ f1da-Wdz7)2021/05/14(金) 20:01:11.64ID:7GBYwo1U0
>>946
publicなメンバ変数って一般的か?

0958デフォルトの名無しさん (ブーイモ MMe1-6eZC)2021/05/14(金) 20:03:38.54ID:7vyBBBSUM
>>956
半透明の影を書き込んだ画像と影なしの画像の2種類を用意しといて切り替えたらいい
それ以上を求めるならFormsなんか捨ててちゃんとゲーム作りとしてUnityとかに再入門した方がいいよ

0959デフォルトの名無しさん (スププ Sdd7-Ratl)2021/05/14(金) 20:38:27.45ID:8fzMB91td
>>956
あくまでもWinFormでやるならGDI+っていう機能を調べて、
円をキャンバスに描けばオセロ程度のアプリケーションを作るのは楽かもね。
そりゃあ本気でゲーム作るならUnityだろうけど、
オセロの内容にこだわるなら、コンソールで十分なんだけど。

0960デフォルトの名無しさん (ワッチョイ 03da-as9D)2021/05/14(金) 20:41:16.98ID:95pD/4XI0
WPFならDropShadowEffectで一発

0961デフォルトの名無しさん (ワッチョイ 3bad-z8Fo)2021/05/14(金) 21:13:06.87ID:VM2FDDZI0
>>946
いや、そもそもそんなコーディングガイドラインは存在しなかった。各ツールやライブラリごとに好き勝手やってる
あと、privateだけじゃなくてinternalもな

0962デフォルトの名無しさん (アウアウウー Sa1d-JrGs)2021/05/14(金) 21:29:52.56ID:d3AihMu6a
>>956
「オセロが盤面にの上にくる」っていうのがどういう状況かよく分からんのだけど、
プレーヤーが置いた位置まで石が移動するアニメーション的な演出をしたいってこと?

0963デフォルトの名無しさん (オッペケ Sr6f-Adon)2021/05/14(金) 21:45:19.42ID:Hk5V+gvwr
m_とかアンダースコアつけるとかは原始人に見えてしまう

0964デフォルトの名無しさん (アウアウウー Sa1d-JrGs)2021/05/14(金) 21:49:55.96ID:d3AihMu6a
フィールドにmつけるのは割とそんな悪い習慣じゃないと思うけどアンダースコアは要らんね
mFooでいい。m_Fooにする意味が分からん

0965デフォルトの名無しさん (オッペケ Sr6f-Adon)2021/05/14(金) 21:50:54.76ID:Hk5V+gvwr
そっちの方が原始人度が高いとおもうがw

0966デフォルトの名無しさん (オッペケ Sr6f-Adon)2021/05/14(金) 21:51:52.40ID:Hk5V+gvwr
フィールドにメンバーのmをつけるのもどうなのかとw

0967デフォルトの名無しさん (ワッチョイ eb0c-0qpL)2021/05/14(金) 21:54:28.98ID:2Onmey4o0
プロジェクトで統一されてりゃなんでもええよ
センスだのなんだのは個人の信仰でしかあらへんのじゃ

0968デフォルトの名無しさん (ブーイモ MM5b-1bOW)2021/05/14(金) 21:56:28.53ID:et+gRElJM
一般的な流儀はキャメルmFooかスネークm_fooのどちらか

0969デフォルトの名無しさん (ワッチョイ d978-sort)2021/05/14(金) 22:00:45.23ID:krSfg/SG0
てめぇの流儀を勝手に一般化するな

0970デフォルトの名無しさん (アウアウウー Sa1d-JrGs)2021/05/14(金) 22:05:44.68ID:d3AihMu6a
>>968
キャメルとスネークの差異は単語の区切り方にあると思うけど、フィールド(メンバー)にmつけるのは
ハンガリアンだと思うので本来はちょっと別物だよね。

>>967
確かに人間には適応能力があるので基本的にはその通りだけど、
それでも優劣の差がないというのも欺瞞だとは思う
あるとしてもどうでもいい程度の差だろ?はいその通りですw

0971デフォルトの名無しさん (オッペケ Sr6f-Adon)2021/05/14(金) 22:20:25.04ID:Hk5V+gvwr
>>957
Xamlで

0972デフォルトの名無しさん (ワッチョイ 1301-tI/9)2021/05/14(金) 23:16:17.86ID:ijV+D4Iw0
>>969
そういうゴタクはキャメルとスネークより一般的な流儀出してから言いなよ

>>954>>953が書いてるコメントって
https://docs.microsoft.com/ja-jp/dotnet/csharp/programming-guide/inside-a-program/coding-conventions
のヒントのことか・・・・・公式ドキュメントでお墨付きつけてるのはちょっと酷いような

VS2019標準のLintでアンダースコア始まり変数名って許容されてたっけ?
最近VSCodeでしか書いてないから分からん

0974デフォルトの名無しさん (ワッチョイ aba7-4lYq)2021/05/15(土) 10:11:49.42ID:I4FgZZwl0
作ってるやつがゴミカスなんだな
昔のインド人は頭が良かったということで

0975デフォルトの名無しさん (ワッチョイ 1fb0-sort)2021/05/15(土) 13:01:38.70ID:K7/xaqOQ0
複数ルール混在するのが一番面倒なので、mでもm_でも_でもいいから統一してくれればいいかなあ
そんで_に統一しませんかって事か

0976デフォルトの名無しさん (アウアウエー Sa93-PbQN)2021/05/15(土) 13:35:41.44ID:u3bkv4kna
クラス内で揃ってればどうでもいい

0977デフォルトの名無しさん (エアペラ SD5b-f+4d)2021/05/15(土) 13:39:10.32ID:X2M8i/YMD
>>976
これ

0978デフォルトの名無しさん (ラクッペペ MM17-JFKK)2021/05/15(土) 13:45:45.41ID:Q8PHpDoBM
すまん

0979デフォルトの名無しさん (ワッチョイ 6d87-9scZ)2021/05/15(土) 16:04:03.86ID:k7UiOGH90
ほんまそれなんやが
アホな中華は1クラス1万ステップとか作ってくるからめちゃくちゃになるんや

0980デフォルトの名無しさん (ワッチョイ 3fac-v+G2)2021/05/15(土) 16:17:10.56ID:/1WA0n4U0
パフォーマンスどうなんそれ

0981デフォルトの名無しさん (ワッチョイ 895f-/DSF)2021/05/15(土) 18:21:31.59ID:aVMlO2Jw0
c#のprivateメンバー変数にアンダースコア付けろだと…
これが今後のルールになるのかな?

0982デフォルトの名無しさん (オッペケ Sr99-Adon)2021/05/15(土) 19:22:05.87ID:En4kpP4hr
ゴミみたいなルールで泣けてくる

0983デフォルトの名無しさん (ワッチョイ aba7-4lYq)2021/05/15(土) 19:28:07.03ID:I4FgZZwl0
ゴミカスが普段組んでもいないのにいいと思って考えちゃったクソルール

0984デフォルトの名無しさん (オッペケ Sr99-Adon)2021/05/15(土) 19:53:08.40ID:En4kpP4hr
これはひどい…

https://www.sejuku.net/blog/102559

0985デフォルトの名無しさん (ワッチョイ f1da-Wdz7)2021/05/15(土) 20:00:50.49ID:x5z5lzlG0
一般的にって根拠を示しにくいけど、Microsoft公認のコーディングルールって言うとStylecopが示しているキャメルケースしかありえないんだよな
mHogeやm_Hogeは論外で今回の更新によって_Hogeが台頭したけど

0986デフォルトの名無しさん (ワッチョイ 7363-sort)2021/05/15(土) 20:14:20.26ID:tihXB0Cj0
hogの意味を辞書で引く

>>985
_Hogeじゃなくて_hogeな
MS自身が書くコードでは昔から一般的に使われてるルールなんで、そんなに驚くほどのことでもない
意識高いとこだとわりと採用されてるよ

0988デフォルトの名無しさん (ワッチョイ 6dda-gSvD)2021/05/15(土) 21:55:57.08ID:P/ScDIg90
いま入門書で勉強中の初心者です
コードは基本的に上から下に処理されていくと理解しているのですが
本に出てくるサンプルコードは呼び出す側のあとに呼び出される側のコードが書かれていることが多くてしっくりきません
何か理由があるのでしょうか?

0989デフォルトの名無しさん (ワッチョイ 9fda-3Xtj)2021/05/15(土) 21:57:54.60ID:Cs9vHg9X0
ないよ

0990デフォルトの名無しさん (ワッチョイ 03da-as9D)2021/05/15(土) 22:00:38.14ID:18pqJB1E0
そんなん言うたら、呼び出すメソッドが別ファイルの別クラスにあるのはいいんか?っちゅう話だよな。

0991デフォルトの名無しさん (ワッチョイ 3bad-z8Fo)2021/05/15(土) 22:03:52.54ID:t/RrGLho0
>>987
さすがにs_を標準にしちゃうのはかなり疑問だけどね

0992デフォルトの名無しさん (ワッチョイ ff01-vB/y)2021/05/15(土) 22:23:45.04ID:kOi9a7N70
>>988
多くの場合「全体 -> 部分」の順で理解したほうが
「部分 -> 全体」の順で理解するよりも圧倒的に脳にやさしいので
コードの構造もそれに合わせることで読みやすくしてる

0993デフォルトの名無しさん (アウアウエー Sa93-PbQN)2021/05/15(土) 22:39:14.46ID:Tm9lZ4XLa
>>988
呼び出し元を上から下に進んで
呼び出し先に亜空間ワープして
呼び出し先を上から下に進んで
呼び出し先が終わったらまた亜空間ワープで呼び出し元に戻って
呼び出し元をまた上から下に進む

0994デフォルトの名無しさん (ワッチョイ 7363-sort)2021/05/15(土) 23:03:58.43ID:tihXB0Cj0
関数など邪道

0995デフォルトの名無しさん (ワッチョイ 9fda-3Xtj)2021/05/15(土) 23:08:38.70ID:Cs9vHg9X0
全てasyncとlinqで実装

0996デフォルトの名無しさん (ワッチョイ f1da-Wdz7)2021/05/16(日) 01:12:40.73ID:cPyU4P820
>>988
昔のC言語は呼び出す前に関数宣言しておくか関数を定義しないとエラーだったから考え方は正しいよ
単にプログラム言語としての利便性が上がっただけ

0997デフォルトの名無しさん (アウアウウー Sa1d-gSvD)2021/05/16(日) 02:38:29.44ID:sFLeX0L5a
前方参照が不可でプロトタイプ宣言が必要だったのは単に当時の技術的な制約に過ぎず
本質的な物じゃないと思うよw

メソッドのソースコード上の位置(どのファイルの何行目にあるか?)は
「技術的には」何の意味も持たない、と言うのが正しい。

一か所からしか呼ばれないメソッドがあるとき、呼ばれる側のメソッドを呼ぶ側より上の行に
書きたがる人がいるし気持ちは分からんでもないけど、そんなのあくまで好みの問題。どーでもいいよそんなの、が正解。

0998デフォルトの名無しさん (ワッチョイ 8925-fy9k)2021/05/16(日) 05:34:08.17ID:fcFZ09AZ0
最近の言語だとどこでも関数宣言できるし、かと言って関数内だと一番下で宣言した関数を上で使えるって訳でもない場合もあるからね
トップレベルの処理は言語仕様によって分けられていることを理解するのは最初は結構大変なもんだ

0999デフォルトの名無しさん (ワッチョイ 1301-tI/9)2021/05/16(日) 09:15:56.70ID:RjyUN9Py0
>>988
呼び出される側のあとに呼び出す側のコードが書かれていても
> コードは基本的に上から下に処理されていくと理解しているのですが
ならしっくり来なくね?
Pythonみたいに動的に関数定義したいということかな?

1000デフォルトの名無しさん (ワッチョイ 1301-tI/9)2021/05/16(日) 09:16:15.77ID:RjyUN9Py0
>>996
それ逆やぞ

10011001Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 53日 20時間 17分 52秒

10021002Over 1000Thread
5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/

▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php

レス数が1000を超えています。これ以上書き込みはできません。