C#, C♯, C#相談室 Part95
■ このスレッドは過去ログ倉庫に格納されています
■Visual Studio 2017 Community(無償の統合開発環境)等はこちら
http://www.visualstudio.com/downloads/
■コードを貼る場合はこちら
http://ideone.com/
■前スレ
C#, C♯, C#相談室 Part94
http://mevius.2ch.net/test/read.cgi/tech/1492843013/
■次スレは>>970が建てる事
建てられない場合は他を指定する事。 自分のコード見返してどういう動きなのかはわかるが何を思ってそうしたのか思い出せない時があるなw
こういうときに仕様書書いておけばよかったと思い、そして3分経つと面倒で忘れるw
イベントの依存関係まで考えたら他人のコードの解析なんかやる気にもならない 後で自分のコード見返して分からないってよく言われる話だけど俺はほとんど無いわ
コメントじゃなくてメソッド名や変数名でもいいけど、なるべくコード上に意図を残すように心掛けるのがコツだな
読めないコードを書く奴は大抵コードを製造作業による生成物と考えてる >>27
俺はやる気にもならないって書いているんだし>>23に言ってやれよw
そのリンク先のやつは書く内容がおかしいやつだからどうでもいいが >>28
だからツール使えよって言う話も理解できないバカ乙 w >>29
せっかく教えてやったのにってことか
ありがとうございました >>26
説明的なプログラムは誰にでも書けるものではない
書ける人にとっては当たり前と思うけどそうではないらしい
自社のコードが汚い人になぜ汚いコードを書くのかと聞いて回ったことがある
彼らは動くものを作るので精一杯なんだ 設計書も書かずいきなり書き始めたコードを綺麗も汚いもねぇよ
精々メソッドあたりの行数ぐらいしか評価のポイントがねぇ
書いた設計書に対してのソースがどうよ?って話になって初めて評価が下せる
俺はね >>31
それは確かに感じるね
彼らに共通して言えるのは、思考の抽象度を上げられないんだよな
話してると「そんな細かいことはどうでもいい」と感じることが多いけど、
その「どうでもいい」という感覚を理解させるのが非常に難しい >>33
抽象度とソースの綺麗さになんの関連があるのか説明できるの? >>33
その傾向はあるね
彼らに設計書を書かせると決まって日本語で手続きを書き始める そうやって風が吹けば桶屋が儲かる的なくだんないことを囀ってる限りモノなんか作れないよお前等w >>36
設計書が無いとソースは理解できないと考えるのなら、
君はプログラミングにおける抽象的思考(設計)の重要性を認めてるわけだよね
それなのになぜソースコード自体の抽象度が理解のしやすさに寄与するとは考えないの? >>33
それは言えてる
思考の抽象度
現代的プログラミングのキーワードだよなあ >>37
いや、設計書通りに組んであればええよ
何もなければ評価できん 設計書に従った上で説明的な(ある意味冗長な)コードを保守性のために書くと思ったが違うのかな >>40
それだと設計書に書いてない事は書くなって怒られるんだよね
設計書に書いてないことを書かないとビルドすらできないから無視するしかないんだけど >>37
そもそもなんで設計が抽象的なの?
お前の書いてる設計書漏れてるだけだろ >>42
君の言ってる設計書ってコーディングシートのことじゃないかな まず仕様書と設計書とコーディングシートの定義からやらないとだめな予感 最近のC#スレはマ板行くか首吊って死ね系の話題が多いですね
何かあったの? >>48
用途による
まあEntityFrameworkかDapperだろうけど >>49
linq to sqlってのは今は使わないんですか? >>55
その場合、例えばsql server向けに作ったC#プロジェクトで
DBをmysqlに変更しても大きな変更無く動かせるの? 現実的にはSQLやスキーマの互換性の問題で無理
確実にデスマーチです 今もmysql使ってる人は少ないと思うけど知らない人がいるのかな
時代は変わりました >>57
sqlserverを使うある程度大きなプロジェクトだとefを使うのが一般的ですか?
全く使わないなんてのも有るんでしょうか? >>60
基本的にはEntityFramework、パフォーマンスを求められる箇所はDapper >>61
生のSQLを実行するのは一般的ではないのですか? >>62
普通はストアド作っといて、指示するんじゃね? >>62
Dapperは生SQLだよ
DataReaderやクエリパラメータとオブジェクトの間のマッピングの単純作業を自動でやってくれるだけ >>62
EntityFrameworkでも生のSQLは書ける。書かなくてもパフォーマンスに(考慮しなくちゃいけないほどの)遅延がなければ書かない。 WebRequestを続けて二回同じサーバーに別のオブジェクトで通信したら変なエラーが出るんだがわかる奴いる?
これじゃ情報不足ならそのうち再質問するが。 「変」って何だよ具体的に言えよ
なんで相談室でまでこんな所から始めなければいけないんだ >>65
最近efを覚えて試しているんだけど、
efでusingしてdbに何か書き込むだけでも、なんかレスポンスが悪い気がするんだけど。
気のせい? HTTPレンスポンスの生文字列データを取得する方法ある?レンスポンスにSet-Cookieが何箇所行かにあるやつをWebResponseでSet-Cookieヘッダを取得しても1番始めのしか取得出来ない >>69
何に比べてレスポンスが悪いの?
初回が遅いのはどうしようもない >>69
EFはサーバーで長時間にわたって大量のメモリ食わせて使うもんだ >>81
リクエストオブジェクトにCookieContextオブジェクト入れる&リダイレクトをオフで取れた ASP.NET MVCでControllerの中のソースコードが増えて来て混乱気味なのだが、
どうやって整理すればいいのかな? >>84
モデルって言うのは本来は何を入れるところなの?
細々とした色んな処理を書いてもいいの? >>83
インプットを基にして処理を振り分けて、得た結果をViewに返すだけじゃないの? >>85
モデルにはすべてのロジックを実装するのが正しい
コントローラの役割はリクエストの内容を受け取りモデルに投げて結果をVMに入れて返すだけ ASPって出番ある?みんな仕事の案件でやってるの? WebFormsの案件はドカタだとWinFormsより多いだろ
うちはMVCでSaaSやってる クラスのメンバのプロパティを小文字で始めると
メッセージ IDE1006 名前指定の規則違反: これらの単語は、大文字で始まらなければなりません:
と出るのだが、なんで小文字だとエラーなの?
世の中では、大文字で始める習慣があるの? VS2017ならデフォルトで提案事項になっているがエラーになるのは自分で設定したせいでは で、それはエラーなの?
メッセージが出たら警告だろうが何だろうが全部エラーって言う人も多いけど >>97
自分でいじってないなら初期設定決めたMSの人では class A{
class B{
class C{
}
}
}
みたいに三重くらいになると、自分でもわけ分からなくなって来るんですが、
世間では三重くらいは普通ですか? >>100
内部クラスって表記しやすいだけでそれ以外のメリットあるのかね? javaの人は良く使うけど
スコープの問題だけだから本来は使わないでもよさそう 内部クラスはたまーーーに使うけど3重なんて一度もしたことないな >>100
static classだとよくやるけど
static class My{
static class Hoge{
static class Config{
}
}
}
My.Hoge.Configのように使える
でも3重は使わないな Javaだと1クラス1ファイル
客先の規約で配置できるファイルに制限があると内部クラスを使わざるをえない enum使いにくいから代わりにstatic class乱用してるわ >>109
後で要素増えたら参照先全部ビルドし直さなきゃならんあたり .Net Core 2.0では、だいぶん.NetFrameworkの実装がカバーされたと聞きました。
https://raw.githubusercontent.com/dotnet/standard/master/docs/versions/netstandard2.0_ref.md
これを見る限りでは、System.IO.StreamやSystem.IO.FileInfo、ISerializableなど
もあります。これらをUWPやASP.NET Coreでも使えるようになるという理解でいいでしょうか。 >>113
javaとは思想が違うからな
どうしてもメソッド使いたけりゃ拡張メソッド書けばいいだけのこと enumにメソッドを定義できないとenumスイッチがあちこちに書かれてシステムが汚染される
そんなことになるぐらいならenumは言語機能から追放したほうがいい >>116
メソッドが使えるとスッキリ書けるの?
例を教えて >>112
逆に聞きたいんだけど、どういう理解があると思ったの? >>117
Javaのenumのメソッドはポリモーフィック
なのでステートやストラテジーなど様々な応用が利く enumはどうせ定数に置き換えられるんだから、最初から定数で書いとけばいいな >>107
javaって、内部クラスも1ファイルとして出力されるんじゃなかったっけ? class A,B,C,...が有って
void func<T>(...){...}
みたいな関数を
func<A>(...);
func<B>(...);
func<C>(...);
みたいに順番に実行したい場合、
forループ使って書ける? ■ このスレッドは過去ログ倉庫に格納されています