「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、
質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスはやめてください
>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。
■関連スレ
C#, C♯, C#相談室 Part93
https://mevius.5ch.net/test/read.cgi/tech/1492818720/
■前スレ
ふらっと C#,C♯,C#(初心者用) Part137
https://mevius.5ch.net/test/read.cgi/tech/1523004019/
■コードを貼る場合は↓を使いましょう。
http://ideone.com/
https://dotnetfiddle.net/
■情報源
https://msdn.microsoft.com/ja-jp/library/gg145045.aspx
https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/index
https://msdn.microsoft.com/en-us/library/gg145045.aspx
http://referencesource.microsoft.com/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured
探検
ふらっと C#,C♯,C#(初心者用) Part138
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 369a-msj4)
2018/06/05(火) 19:32:42.28ID:70UTtyrn0503デフォルトの名無しさん (ワッチョイ 7f81-YWjz)
2018/07/08(日) 00:27:29.44ID:7kODHcAp0 >>501
linqの古いコードって、例えばどんなん?ラムダ使ってない奴のことかな?
linqの古いコードって、例えばどんなん?ラムダ使ってない奴のことかな?
504デフォルトの名無しさん (ワッチョイ 5fd2-ONL2)
2018/07/08(日) 00:45:39.18ID:ijnRC5hf0 >>503
日本語
日本語
505デフォルトの名無しさん (ワッチョイ 7f81-xhgQ)
2018/07/08(日) 02:13:34.73ID:8SSmHvWN0 性懲りもなくよう相手にするなあこのクサレ脳みそども
506デフォルトの名無しさん (アウアウウー Sa0b-sule)
2018/07/08(日) 11:15:40.05ID:YcDPlOAza 他のスレでデザパタと略す奴は例外なくクソって言う風潮があるから
その略称は使わないほうがいいw
その略称は使わないほうがいいw
507デフォルトの名無しさん (オイコラミネオ MM4f-FpIe)
2018/07/09(月) 15:36:56.63ID:Uwu2BFrsM LinqというかDBアクセス系のパターンの事ならリポジトリパターンやイベントソーシング・CQRSあたりかな
MSの黒本 C#実践開発手法 はどうだろう
あとRxも押さえとけば
MSの黒本 C#実践開発手法 はどうだろう
あとRxも押さえとけば
508デフォルトの名無しさん (ワッチョイ 7fed-sule)
2018/07/09(月) 23:28:49.95ID:8W0J0prF0 名前付きパイプでプロセス間通信するとき、できるだけ遅延を小さくするためにすべきこと、したほうがいいことがありますか?
509デフォルトの名無しさん (ワッチョイ 5f8a-a75z)
2018/07/10(火) 03:23:37.00ID:LdlDw2V90 ポータブルなASP.NET実行環境はありますか?
勝手にソフトインストール出来ない環境で使いたい為、Tomcatのように、設定ファイルで設定してexe起動するだけのタイプを探しています。
勝手にソフトインストール出来ない環境で使いたい為、Tomcatのように、設定ファイルで設定してexe起動するだけのタイプを探しています。
510デフォルトの名無しさん (アウアウウー Sa0b-SJYg)
2018/07/10(火) 03:44:47.11ID:wzF2q8B9a511デフォルトの名無しさん (スプッッ Sdff-jgrZ)
2018/07/10(火) 07:07:05.03ID:1Wfv3KWad formが3つがあってそれぞれ仮にa,b,cとして、a,b,cの中にコンボボックスがいくつかあってaのコンボボックスの一つにエクセルをdbで読み取って?コンボボックスに値を入れました。
以降もコンボボックスに入れてくんですけど、違いがブック名とシート名でコードをまとめたい時はどこにどのように書けばいいですか?
今はform aのloadに一つ書いてます。
以降もコンボボックスに入れてくんですけど、違いがブック名とシート名でコードをまとめたい時はどこにどのように書けばいいですか?
今はform aのloadに一つ書いてます。
512デフォルトの名無しさん (アウアウウー Sa0b-1qXk)
2018/07/10(火) 08:43:35.96ID:wzF2q8B9a class Configurations { 各コンボボックスに入れるべき値をそれぞれプロパティとして定義 }
interface IConfigurationsSource { Configurations GetConfigurations(); }
class ExcelConfigurationsSource : IConfigurationsSource {
private readonly string book;
private readonly string sheet;
public ConfigurationsSource(string book, string sheet) { this.book = book; this.sheet = sheet; }
public Configurations GetConfigurations() { return Excelシートから読み取ってConfigurationsに詰めて返す(book, sheet); }
}
こういうのを作って使い回す
interface IConfigurationsSource { Configurations GetConfigurations(); }
class ExcelConfigurationsSource : IConfigurationsSource {
private readonly string book;
private readonly string sheet;
public ConfigurationsSource(string book, string sheet) { this.book = book; this.sheet = sheet; }
public Configurations GetConfigurations() { return Excelシートから読み取ってConfigurationsに詰めて返す(book, sheet); }
}
こういうのを作って使い回す
513デフォルトの名無しさん (ワッチョイ 4775-xyRp)
2018/07/10(火) 10:08:29.34ID:DQNNzOip0 クラスを継承して機能を共通化するのとインターフェースで共通化するのと何が違いますか?
514デフォルトの名無しさん (オイコラミネオ MM4f-FpIe)
2018/07/10(火) 10:27:34.35ID:u496riIwM いろいろなレベルでの回答があるが
インターフェースはMIX可能
継承の濫用は保守困難になりがち
インターフェース意識した方が設計的にスマートな事が多い
c#8で事情は大きく変わるが
インターフェースはMIX可能
継承の濫用は保守困難になりがち
インターフェース意識した方が設計的にスマートな事が多い
c#8で事情は大きく変わるが
515デフォルトの名無しさん (ササクッテロル Sp3b-AA7a)
2018/07/10(火) 13:38:42.06ID:vEF725PNp クラス継承は切り離せないが、インターフェースなら切り離せる。
516デフォルトの名無しさん (ワッチョイ e7d2-gqST)
2018/07/10(火) 15:17:35.18ID:ptn/0Y0d0517デフォルトの名無しさん (ワッチョイ 7fe8-UVFs)
2018/07/10(火) 15:18:53.33ID:6gd4tcDd0 え、8ってどうなるん・・・
518デフォルトの名無しさん (ワッチョイ 87bb-xhgQ)
2018/07/10(火) 15:59:38.63ID:lFSMnKMw0 そらもうアレよ
519デフォルトの名無しさん (スップ Sd7f-w8Cw)
2018/07/10(火) 17:43:22.36ID:pIJZecgId おジャ魔女どれみc#
520デフォルトの名無しさん (スプッッ Sdff-jgrZ)
2018/07/10(火) 19:00:19.81ID:1Wfv3KWad521デフォルトの名無しさん (ワッチョイ 5f5d-bAjg)
2018/07/10(火) 19:04:58.17ID:WX+x+qIF0 >>514
> c#8で事情は大きく変わるが
C#8ではnull非許容が標準になるという噂は聞いたことがあるのですが、
この話は検索してみてもなんのことを仰っているのか分かりませんでした
とても興味があるので、ぜひ詳しく教えていただけないでしょうか
> c#8で事情は大きく変わるが
C#8ではnull非許容が標準になるという噂は聞いたことがあるのですが、
この話は検索してみてもなんのことを仰っているのか分かりませんでした
とても興味があるので、ぜひ詳しく教えていただけないでしょうか
522デフォルトの名無しさん (ワッチョイ 5f7f-CJRd)
2018/07/10(火) 21:19:40.32ID:vJrIcc2p0523デフォルトの名無しさん (ワッチョイ 5f5d-bAjg)
2018/07/10(火) 21:45:00.39ID:WX+x+qIF0 >>522
レスありがとうございます!
ただこれだけを聞くとC#8でインターフェースの価値が更に上がるように思うのですが、
>>514さんはインターフェースの価値を説かれた上で
「c#8で事情は大きく変わる」と仰っていているので、他の機能に拡充が図られるなどで
インターフェースの価値が相対的に下がると仰っしゃりたいように感じました
実際にはそういうわけではないのでしょうか?
いずれにしても、インターフェースのデフォルト実装は便利そうで楽しみです
あと、それほどいろいろと手を入れるなら、
IList<T>が共変なIReadOnlyList<out T>と反変なIWriteOnlyList<in T>を
継承するようにするとか、そういう変更もあると嬉しいな〜と素人ながら思ってみたりw
レスありがとうございます!
ただこれだけを聞くとC#8でインターフェースの価値が更に上がるように思うのですが、
>>514さんはインターフェースの価値を説かれた上で
「c#8で事情は大きく変わる」と仰っていているので、他の機能に拡充が図られるなどで
インターフェースの価値が相対的に下がると仰っしゃりたいように感じました
実際にはそういうわけではないのでしょうか?
いずれにしても、インターフェースのデフォルト実装は便利そうで楽しみです
あと、それほどいろいろと手を入れるなら、
IList<T>が共変なIReadOnlyList<out T>と反変なIWriteOnlyList<in T>を
継承するようにするとか、そういう変更もあると嬉しいな〜と素人ながら思ってみたりw
524デフォルトの名無しさん (ワッチョイ c730-xyRp)
2018/07/10(火) 22:52:33.99ID:uwEab9SB0 めっちゃ詳しいw
525デフォルトの名無しさん (ワッチョイ 5f7f-CJRd)
2018/07/10(火) 23:47:58.27ID:vJrIcc2p0526デフォルトの名無しさん (アウアウウー Sa0b-SJYg)
2018/07/11(水) 00:12:23.28ID:08+HRZoYa >>525
既にList<>はIReadOnlyList<>を実装してるんだから今更だろ。
IList<>がIReadOnlyList<>を継承できない理由は、インターフェイスメンバの明示的実装を壊すから
IList<>に宣言されてたメンバのうちIReadOnlyList<>と被るものを全部削除したとしたら、IList<>のメンバを明示的実装している既存のクラスが全滅する
既にList<>はIReadOnlyList<>を実装してるんだから今更だろ。
IList<>がIReadOnlyList<>を継承できない理由は、インターフェイスメンバの明示的実装を壊すから
IList<>に宣言されてたメンバのうちIReadOnlyList<>と被るものを全部削除したとしたら、IList<>のメンバを明示的実装している既存のクラスが全滅する
527デフォルトの名無しさん (ワッチョイ bf93-FpIe)
2018/07/11(水) 00:40:08.40ID:OI/RESej0 誤解を与えてすまん
c#8でインターフェースのデフォルト実装がサポートされるので価値は高まるという認識でok
null不許容も含めて大きく変わるねえ
c#8でインターフェースのデフォルト実装がサポートされるので価値は高まるという認識でok
null不許容も含めて大きく変わるねえ
528デフォルトの名無しさん (ワッチョイ bf93-FpIe)
2018/07/11(水) 00:50:36.62ID:OI/RESej0 null非許容を乱暴に説明すると
参照型の変数にnullが入らないのがデフォになる。よって多くのシナリオでnull落ちになるケースが激減する。基本的にプログラミングが楽になる。
変数にnull許可する場合には明示的に宣言が必要になる。
既存のソースに対しては破壊的変更になるからコンパイルオプションとかになるんじゃないかな。
参照型の変数にnullが入らないのがデフォになる。よって多くのシナリオでnull落ちになるケースが激減する。基本的にプログラミングが楽になる。
変数にnull許可する場合には明示的に宣言が必要になる。
既存のソースに対しては破壊的変更になるからコンパイルオプションとかになるんじゃないかな。
529デフォルトの名無しさん (ワントンキン MM3f-JP/P)
2018/07/11(水) 01:02:22.00ID:veaNU89qM OOP的にも綺麗でテーブルが正規化されてればnull非許容は受け入れられるかもね
業務システムではあまり役に立たなそうだ
業務システムではあまり役に立たなそうだ
530デフォルトの名無しさん (アウアウエー Sa1f-z1ya)
2018/07/11(水) 01:04:51.55ID:zbj7oPBja >よって多くのシナリオでnull落ちになるケースが激減する。基本的にプログラミングが楽になる。
岩永氏の例の記事にもそう書いてあるが、何度考えてもこれは逆だと思うなw
いわゆる「例外を握りつぶす」筋悪コードと同じ弊害をもたらすだけだろう
岩永氏の例の記事にもそう書いてあるが、何度考えてもこれは逆だと思うなw
いわゆる「例外を握りつぶす」筋悪コードと同じ弊害をもたらすだけだろう
531デフォルトの名無しさん (ワントンキン MM3f-JP/P)
2018/07/11(水) 01:08:15.17ID:veaNU89qM 凄まじい列数でほとんどがnullのテーブル
あれをなんとかしないとアプリケーションからnullを排除することは難しい
インフラの問題だからホスト言語のちょっとした改善でどうにかなるものじゃない
あれをなんとかしないとアプリケーションからnullを排除することは難しい
インフラの問題だからホスト言語のちょっとした改善でどうにかなるものじゃない
532デフォルトの名無しさん (ワッチョイ bf93-FpIe)
2018/07/11(水) 01:22:37.10ID:OI/RESej0 最近の言語がそういう流れだからだろうね
DB絡みに外部結合やORM、既存ライブラリやサービスがある以上、null考慮は回避できないだろうから使い分けになるだろうね
nullまみれのテーブルも いまだにみかけるし
新規コードでサクサク組んでいくには便利やと思う
DB絡みに外部結合やORM、既存ライブラリやサービスがある以上、null考慮は回避できないだろうから使い分けになるだろうね
nullまみれのテーブルも いまだにみかけるし
新規コードでサクサク組んでいくには便利やと思う
533デフォルトの名無しさん (ワッチョイ 5f5d-bAjg)
2018/07/11(水) 01:24:04.27ID:mrqtDgK70 >>525
レスありがとうございます
確かに、ReadOnlyという言葉がIReadOnlyList<>を継承するものにかかっていると考えると
IList<>がIReadOnlyList<>を継承するのは妙な感じですね
ただ現実として、>>526でも指摘していただいているようにList<>はIReadOnlyList<>を
実装していますので、ReadOnlyという言葉はあくまでIReadOnlyList<>自身にかかっていると
とらえてしまってもいいのかなと考えています
その現状の言葉遣いが間違っているのだから直すべきだというご主張なら、
実現可能性は私には難しくて分かりませんが、とても興味深いご意見だと思います
>>526
レスありがとうございます
書いていただいた文章を読むと、インターフェースは継承元のインターフェースと
同じ名前のメソッドを持てない、もしくはインターフェースの明示的実装に悪影響があると
考えていらっしゃるように見受けられたのですが、この部分がよく理解できなかったので
申し訳ないのですが詳しくご説明していただけるとありがたいです
>>527-528
レスありがとうございます
私の方こそ、変な深読みをしてしまい失礼しました
私は初学者なので機能の増強は単純に楽しみなのですが、
既存のソースを多くお持ちの方にとっては大幅な変更はいいことばかりでもないのですね
>>528-531
興味深いお話をどうもありがとうございます
自分からnull非許容の話を出しておいて恥ずかしいのですが、
実はこれが具体的にどういうものなのかほとんど理解できていないのです
var a = new string[1]; は許されるのか?とか、許されるならそれは
var a = new string[1] { string.Empty }; と同じ意味なのか?とか、
もしそれが正しいなら、クラス毎に Empty 的なものを用意しないといけないのか?とか
疑問は膨らむばかりです
レスありがとうございます
確かに、ReadOnlyという言葉がIReadOnlyList<>を継承するものにかかっていると考えると
IList<>がIReadOnlyList<>を継承するのは妙な感じですね
ただ現実として、>>526でも指摘していただいているようにList<>はIReadOnlyList<>を
実装していますので、ReadOnlyという言葉はあくまでIReadOnlyList<>自身にかかっていると
とらえてしまってもいいのかなと考えています
その現状の言葉遣いが間違っているのだから直すべきだというご主張なら、
実現可能性は私には難しくて分かりませんが、とても興味深いご意見だと思います
>>526
レスありがとうございます
書いていただいた文章を読むと、インターフェースは継承元のインターフェースと
同じ名前のメソッドを持てない、もしくはインターフェースの明示的実装に悪影響があると
考えていらっしゃるように見受けられたのですが、この部分がよく理解できなかったので
申し訳ないのですが詳しくご説明していただけるとありがたいです
>>527-528
レスありがとうございます
私の方こそ、変な深読みをしてしまい失礼しました
私は初学者なので機能の増強は単純に楽しみなのですが、
既存のソースを多くお持ちの方にとっては大幅な変更はいいことばかりでもないのですね
>>528-531
興味深いお話をどうもありがとうございます
自分からnull非許容の話を出しておいて恥ずかしいのですが、
実はこれが具体的にどういうものなのかほとんど理解できていないのです
var a = new string[1]; は許されるのか?とか、許されるならそれは
var a = new string[1] { string.Empty }; と同じ意味なのか?とか、
もしそれが正しいなら、クラス毎に Empty 的なものを用意しないといけないのか?とか
疑問は膨らむばかりです
534デフォルトの名無しさん (ワッチョイ bf93-FpIe)
2018/07/11(水) 01:52:22.43ID:OI/RESej0 シンプルなコードで良い疑問やなあ
実際導入されたら混乱しそう…
右辺のArrayがnullを許さないからコンパイラに怒られそう
初期値入れたらいけそう
もし仮にstringの規定値がemptyになる仕様になれば初期化無しでもコンパイルとおるかも
c#7系以前と同じ挙動にするなら
var a = new string[1]?;
という記述になるはず
List系使うから配列を生で使う機会は減ったけどね
実際導入されたら混乱しそう…
右辺のArrayがnullを許さないからコンパイラに怒られそう
初期値入れたらいけそう
もし仮にstringの規定値がemptyになる仕様になれば初期化無しでもコンパイルとおるかも
c#7系以前と同じ挙動にするなら
var a = new string[1]?;
という記述になるはず
List系使うから配列を生で使う機会は減ったけどね
535デフォルトの名無しさん (ワッチョイ bf93-FpIe)
2018/07/11(水) 01:53:31.50ID:OI/RESej0 恐ろしい子!
536デフォルトの名無しさん (ワッチョイ 7fe8-UVFs)
2018/07/11(水) 04:05:50.95ID:xb7b/JPY0 C#の話じゃないかもしれませんが、
LAN上の他のPCと通信するにはTCPorUDPしかないですかね?
ポート開けようとすると管理者のパスワード要求されるので
そういうのに影響されない方法があれば教えてください
サーバー上にファイル作って共有しようかとも思ったのですが
ロックとか速度とかちょっと使いにくいので
LAN上の他のPCと通信するにはTCPorUDPしかないですかね?
ポート開けようとすると管理者のパスワード要求されるので
そういうのに影響されない方法があれば教えてください
サーバー上にファイル作って共有しようかとも思ったのですが
ロックとか速度とかちょっと使いにくいので
537デフォルトの名無しさん (アウアウウー Sa0b-SJYg)
2018/07/11(水) 07:45:57.48ID:08+HRZoYa インターネットに出れるんならAWSでSQSかKinesisでも使えば
538デフォルトの名無しさん (ワンミングク MM3f-K9rx)
2018/07/11(水) 08:15:13.05ID:RuBHX//DM >>536
RAWなら好きなもの送れるでしょ
RAWなら好きなもの送れるでしょ
539デフォルトの名無しさん (ブーイモ MM7f-Ro9v)
2018/07/11(水) 08:54:54.59ID:NAmdOA29M ネットワークプログラミングの定石学びたいっす
540デフォルトの名無しさん (ワンミングク MM3f-K9rx)
2018/07/11(水) 09:14:18.75ID:RuBHX//DM レイヤー無視なら
Multi-object Multi-lingual Document Intermediary の仕様書でも
Multi-object Multi-lingual Document Intermediary の仕様書でも
541デフォルトの名無しさん (ササクッテロル Sp3b-AA7a)
2018/07/11(水) 09:42:14.12ID:DD+vdWYvp >>536
TCPやUDPじゃないと関所を通れないからなぁ
TCPやUDPじゃないと関所を通れないからなぁ
542デフォルトの名無しさん (スッップ Sd7f-h/fi)
2018/07/11(水) 10:03:35.37ID:/J4Azv5gd ポート開けたくないな、名前付きパイプのRemotingは?
sambaのポートが開いてりゃ疎通できた気がする。
sambaのポートが開いてりゃ疎通できた気がする。
543デフォルトの名無しさん (スッップ Sd7f-h/fi)
2018/07/11(水) 10:03:54.68ID:/J4Azv5gd ないな→ないなら
544デフォルトの名無しさん (ドコグロ MM1b-C8Iw)
2018/07/11(水) 12:51:43.31ID:vn5tWIshM545デフォルトの名無しさん (ワッチョイ 87bb-xhgQ)
2018/07/11(水) 12:56:39.30ID:fg0dx/vD0 アホか
くだらないことを書き込む前に少しは推敲しろ
くだらないことを書き込む前に少しは推敲しろ
546デフォルトの名無しさん (スププ Sd7f-cr2R)
2018/07/11(水) 13:59:27.90ID:cb0VPk/Kd >>544
aho
aho
547デフォルトの名無しさん (ワッチョイ 7fe8-hRO/)
2018/07/11(水) 16:51:29.67ID:xb7b/JPY0 ありがとうございます
まずは名前付きパイプを調べてみます
まずは名前付きパイプを調べてみます
548デフォルトの名無しさん (ササクッテロル Sp3b-AA7a)
2018/07/11(水) 16:58:41.62ID:DD+vdWYvp バイブにたかしとかりょうとか名前付けて愛用してんのかなぁ…
549デフォルトの名無しさん (ワッチョイ 5f51-bAjg)
2018/07/11(水) 17:39:37.83ID:kzvuO0/N0 >>534
レスありがとうございます
>右辺のArrayがnullを許さないからコンパイラに怒られそう
>初期値入れたらいけそう
確かにそんな気がしますね
でもそうなると大きな配列とは相性が悪そう・・・
>もし仮にstringの規定値がemptyになる仕様になれば初期化無しでもコンパイルとおるかも
それが一番わかりやすそうですね
ただ、stringはともかくStringBuilderの規定値とかどうすればいいのかさっぱり見当がつきません
>c#7系以前と同じ挙動にするなら
>var a = new string[1]?;
>という記述になるはず
?の位置は[1]の前ですか?
まあ書き方はともかく、もしvar a = new StringBuilder[100];とすると
自動的に100個のStringBuilderのインスタンスが作られるなら、
そのような動作を望まなければ配列の要素の型はnull許容にしたほうが良さそうですね
そうすると、例えばジェネリック型を使うときにはstringのような型とStringBuilderのような型の
区別をつけたくなることもありそうですし、ジェネリック型制約に新しく
where T : immutable(intやstringは許すけどStringBuilderは許さない)が
追加されたり・・・とか妄想してみましたw
レスありがとうございます
>右辺のArrayがnullを許さないからコンパイラに怒られそう
>初期値入れたらいけそう
確かにそんな気がしますね
でもそうなると大きな配列とは相性が悪そう・・・
>もし仮にstringの規定値がemptyになる仕様になれば初期化無しでもコンパイルとおるかも
それが一番わかりやすそうですね
ただ、stringはともかくStringBuilderの規定値とかどうすればいいのかさっぱり見当がつきません
>c#7系以前と同じ挙動にするなら
>var a = new string[1]?;
>という記述になるはず
?の位置は[1]の前ですか?
まあ書き方はともかく、もしvar a = new StringBuilder[100];とすると
自動的に100個のStringBuilderのインスタンスが作られるなら、
そのような動作を望まなければ配列の要素の型はnull許容にしたほうが良さそうですね
そうすると、例えばジェネリック型を使うときにはstringのような型とStringBuilderのような型の
区別をつけたくなることもありそうですし、ジェネリック型制約に新しく
where T : immutable(intやstringは許すけどStringBuilderは許さない)が
追加されたり・・・とか妄想してみましたw
550デフォルトの名無しさん (バットンキン MMfb-thxO)
2018/07/11(水) 17:57:29.81ID:g/mYMck9M プログラム素人で恐縮ですが、for文のスコープの中に変数を宣言するとメモリの無駄使いになるでしょうか?
for(;;) int hoge =1;
のような書き方です
for文に入る前に宣言した方が作法的に良いのであればそうしたいと思い
for(;;) int hoge =1;
のような書き方です
for文に入る前に宣言した方が作法的に良いのであればそうしたいと思い
551デフォルトの名無しさん (ワッチョイ a79e-l9EE)
2018/07/11(水) 18:16:12.97ID:I//Y0R5O0 コンパイラが最適化するのじゃないか?
初心者は、そんな事を考えずに、なるべく狭いスコープで宣言した方が良い。
処理に、10秒以上掛かるのなら、その時に考えても良いけど
「Effective 何々」などの本を読むと、書いてあるかも知れないけど
初心者は、そんな事を考えずに、なるべく狭いスコープで宣言した方が良い。
処理に、10秒以上掛かるのなら、その時に考えても良いけど
「Effective 何々」などの本を読むと、書いてあるかも知れないけど
552デフォルトの名無しさん (ブーイモ MMcf-SJYg)
2018/07/11(水) 18:20:39.15ID:L0DC21nsM >>550
C系の言語では基本的に一箇所で宣言された変数はメソッド全体で一つしか作られない
C#の場合はクロージャが絡んだりすると変わってくるけど、基本的にはそういう思想で設計されてる
気にせず必要最小限のスコープで宣言せよ
C系の言語では基本的に一箇所で宣言された変数はメソッド全体で一つしか作られない
C#の場合はクロージャが絡んだりすると変わってくるけど、基本的にはそういう思想で設計されてる
気にせず必要最小限のスコープで宣言せよ
553デフォルトの名無しさん (ドコグロ MM1b-C8Iw)
2018/07/11(水) 18:31:22.94ID:vn5tWIshM >>545-546
そんなレスしかできないからお前は🙅なんだよ w
そんなレスしかできないからお前は🙅なんだよ w
554デフォルトの名無しさん (ワッチョイ e717-UVFs)
2018/07/11(水) 18:40:26.95ID:sApF7MBC0 >>550
IL見ればあなたの悩みは全て解決しますよ
IL見ればあなたの悩みは全て解決しますよ
555デフォルトの名無しさん (ササクッテロル Sp3b-AA7a)
2018/07/11(水) 20:26:56.12ID:DD+vdWYvp あーでも>>550みたいな書き方すると突っ返されるメーカーあるよな。
無駄な作業させてるって自覚無いんだろうかなぁ
無駄な作業させてるって自覚無いんだろうかなぁ
556デフォルトの名無しさん (ブーイモ MMcf-SJYg)
2018/07/11(水) 20:31:34.49ID:L0DC21nsM >>550みたいな書き方してるコードってたいてい他の部分もクッソ汚いから、とりあえず突き返すのはわりと賢明なやり方
557デフォルトの名無しさん (ササクッテロル Sp3b-AA7a)
2018/07/11(水) 20:35:01.60ID:DD+vdWYvp スコープ毎にスタック操作なんかしないし、汚くてもオプティマイズされたら面影も無いし、イジメでしか無い罠
558デフォルトの名無しさん (ワッチョイ c716-xyRp)
2018/07/11(水) 20:39:44.95ID:sCxl2UHN0 >>549
このレスからにじみ出る頭のよさ
このレスからにじみ出る頭のよさ
559デフォルトの名無しさん (ワッチョイ 66c9-LQig)
2018/07/12(木) 00:31:45.14ID:07VYm5500 var すら毛嫌いされちゃうとこなのでコードレビューなんかやったらストレスで禿げるわ
560デフォルトの名無しさん (ワッチョイ 5e3b-C8NM)
2018/07/12(木) 01:31:48.84ID:Mt10qC0c0 それぞれのコーディング規約に従えばいいんじゃないですか
561デフォルトの名無しさん (ワッチョイ 6a9d-kMcx)
2018/07/12(木) 02:20:50.58ID:uvVknaw70562デフォルトの名無しさん (ワッチョイ 79e9-LQig)
2018/07/12(木) 05:53:25.42ID:ddTdn7l60 C#8のデフォルトインターフェースメソッドって、
インターフェースでほぼコーディングを終わらせてしまうことも可能、
って解釈で良いのかな。
インターフェースでほぼコーディングを終わらせてしまうことも可能、
って解釈で良いのかな。
563デフォルトの名無しさん (ワッチョイ ea8a-Y7YF)
2018/07/12(木) 06:34:40.79ID:0C7UQQhF0 クエリとlinqとlinqToXmlの違いがなにかよくわからないです
これらはなんですか
クエリはfromやselectとか思ってたのですが
"from a 〜 select a"も "XXXXXX.Select(〜)" の両方ともクエリ?
linqの中にクエリがある感じですか?
用語の違いを知りたいです
これらはなんですか
クエリはfromやselectとか思ってたのですが
"from a 〜 select a"も "XXXXXX.Select(〜)" の両方ともクエリ?
linqの中にクエリがある感じですか?
用語の違いを知りたいです
564デフォルトの名無しさん (バットンキン MM69-0TUM)
2018/07/12(木) 06:53:16.73ID:TSQ/qQegM565デフォルトの名無しさん (スッップ Sd0a-zHc1)
2018/07/12(木) 07:09:00.83ID:8dshyEbGd >>563
メソッド式とクエリ式でググれ
メソッド式とクエリ式でググれ
566デフォルトの名無しさん (JP 0Hc9-+kVx)
2018/07/12(木) 07:38:41.95ID:VF8Jnm1rH NumericUpDownで、ホイール下回転で値をUpさせる方法ないですか?
567デフォルトの名無しさん (ワントンキン MM7a-ZTCE)
2018/07/12(木) 08:08:47.97ID:CB78gZS5M568デフォルトの名無しさん (ワッチョイ 6a11-w0lO)
2018/07/12(木) 09:04:57.23ID:FtAr8eR70 >>553
管理者のパスワードって、単なるスーパーユーザーのパスワードのことだろきっと
管理者のパスワードって、単なるスーパーユーザーのパスワードのことだろきっと
569デフォルトの名無しさん (ワッチョイ 6d8f-PdR6)
2018/07/12(木) 12:49:07.46ID:96DaRN210 だったらなんなんだよ
570デフォルトの名無しさん (ワッチョイ 11a5-kMcx)
2018/07/12(木) 15:12:12.67ID:iIGcGb6Z0 久しぶりにまたC#勉強してみようかと思ってるんだけど
最近の動向ってどうなの?雑誌でもあまり見かけなくなったけど
最近の動向ってどうなの?雑誌でもあまり見かけなくなったけど
571デフォルトの名無しさん (スププ Sd0a-C8NM)
2018/07/12(木) 15:52:53.09ID:Yg7MNvpld さあ、プログラミングの雑誌読んでる奴は最近少ないでしょ
プログラミング情報は基本ネットだからな
プログラミング情報は基本ネットだからな
572デフォルトの名無しさん (ワッチョイ 89d3-Y8gp)
2018/07/12(木) 16:16:23.83ID:S+gZjDN60 >>570
マイクロソフトはAndroidのアプリC#で作る環境起こしたり結構力入れてる
マイクロソフトはAndroidのアプリC#で作る環境起こしたり結構力入れてる
573デフォルトの名無しさん (ワッチョイ 11a5-kMcx)
2018/07/12(木) 16:37:53.91ID:iIGcGb6Z0574デフォルトの名無しさん (ワッチョイ 11a5-kMcx)
2018/07/12(木) 16:40:31.97ID:iIGcGb6Z0 そういえばWindowsフォンとかいうのもあったね
575デフォルトの名無しさん (ワッチョイ 5e3b-C8NM)
2018/07/12(木) 16:45:06.48ID:Mt10qC0c0 >>572
iOSもな
iOSもな
576デフォルトの名無しさん (スププ Sd0a-7tX6)
2018/07/12(木) 17:23:36.80ID:S4vKnl6/d 雑誌とか書籍とか、本屋の棚を見てると勢力図が判るね。
Python強い。
Python強い。
577デフォルトの名無しさん (バットンキン MM15-0TUM)
2018/07/12(木) 17:25:15.60ID:PtJZmudoM MVC使ってるんですが、アルゴリズムをSQLに書くのは邪道でしょうか?
Modelを用意している時点でC♯でアルゴリズムを書くのが正攻法なのかなという気がして
でもクエリにある程度書いた方がパフォーマンスは良さそうで悩んでいます
Modelを用意している時点でC♯でアルゴリズムを書くのが正攻法なのかなという気がして
でもクエリにある程度書いた方がパフォーマンスは良さそうで悩んでいます
578デフォルトの名無しさん (ワッチョイ 669a-iomh)
2018/07/12(木) 19:07:16.04ID:MbhSnhO70 >>566
NumericUpDownの派生コントロールを作ってOnMouseWheelを書き換える
方法 : 既存の Windows フォーム コントロールから継承する
https://docs.microsoft.com/ja-jp/dotnet/framework/winforms/controls/how-to-inherit-from-existing-windows-forms-controls
コード例
public class NumericUpDownEX : NumericUpDown
{
protected override void OnMouseWheel(MouseEventArgs e)
{
if (null == e) return;
decimal m = this.Value;
int a = e.Delta > 0 ? -1 : 1;
m += a * this.Increment;
m = m > this.Maximum ? this.Maximum : m;
m = m < this.Minimum ? this.Minimum : m;
this.Value = m;
}
}
NumericUpDownの派生コントロールを作ってOnMouseWheelを書き換える
方法 : 既存の Windows フォーム コントロールから継承する
https://docs.microsoft.com/ja-jp/dotnet/framework/winforms/controls/how-to-inherit-from-existing-windows-forms-controls
コード例
public class NumericUpDownEX : NumericUpDown
{
protected override void OnMouseWheel(MouseEventArgs e)
{
if (null == e) return;
decimal m = this.Value;
int a = e.Delta > 0 ? -1 : 1;
m += a * this.Increment;
m = m > this.Maximum ? this.Maximum : m;
m = m < this.Minimum ? this.Minimum : m;
this.Value = m;
}
}
579デフォルトの名無しさん (ワッチョイ 6917-LQig)
2018/07/12(木) 19:39:16.71ID:5nesTxgP0 どうでもいいことだけどEventArgsがnullで渡ってくるケースってあるの?
580デフォルトの名無しさん (ワンミングク MM7a-ZTCE)
2018/07/12(木) 20:09:54.21ID:yTzbc7hIM581デフォルトの名無しさん (ワッチョイ 6a9d-X7oo)
2018/07/12(木) 21:06:22.46ID:uvVknaw70 そのSQLはどこに書かれているのだね
582デフォルトの名無しさん (バットンキン MM69-0TUM)
2018/07/13(金) 06:58:05.36ID:DDbEgWasM SQLはクエリ管理クラスでC♯で管理してます
ストアドで書かれてたらC♯がどうこういう話では無いですね
つかストアドは世間様の開発では一般的なのでしょうか
改修に弱そうなイメージがありシステム構成の検討任されたら自分なら選択しなさそうですけど
ストアドで書かれてたらC♯がどうこういう話では無いですね
つかストアドは世間様の開発では一般的なのでしょうか
改修に弱そうなイメージがありシステム構成の検討任されたら自分なら選択しなさそうですけど
583デフォルトの名無しさん (ブーイモ MM8e-3rXz)
2018/07/13(金) 08:21:33.93ID:KJTjy0eMM ビジネスロジックをストアドに集めるってのは
見たことあるなぁ。
既存言語はFEP構築だけに使う。
どちらかに徹底してりゃ良いんじゃね。鼻ホジ
見たことあるなぁ。
既存言語はFEP構築だけに使う。
どちらかに徹底してりゃ良いんじゃね。鼻ホジ
584デフォルトの名無しさん (ペラペラ SD12-0TUM)
2018/07/13(金) 12:34:59.94ID:p9f6lddDD585デフォルトの名無しさん (ワッチョイ 6a9d-X7oo)
2018/07/13(金) 14:43:56.67ID:0KYXvOut0 DBのバージョンアップじゃなくてリプレイスで
システムをリプレイスしない案件なんてほぼ考えられん
システムをリプレイスしない案件なんてほぼ考えられん
586デフォルトの名無しさん (ブーイモ MMc9-FUtQ)
2018/07/13(金) 15:22:59.85ID:r56MKyepM 可能な限り全部SQLでいいよ
多くの場合SQLの方が圧倒的に簡潔だしテストも容易だし
ストアドは管理が面倒だし見通しも悪いからソースに書きたいが
多くの場合SQLの方が圧倒的に簡潔だしテストも容易だし
ストアドは管理が面倒だし見通しも悪いからソースに書きたいが
587デフォルトの名無しさん (ワンミングク MM7a-ZTCE)
2018/07/13(金) 16:31:35.87ID:JMEmIQPoM SQLに書いてもいいけどシステムが死ぬまで面倒を見て、他のメンテナーに迷惑をかけないでくださいね
588デフォルトの名無しさん (オッペケ Srbd-mxjo)
2018/07/14(土) 14:54:07.96ID:pS7j55swr データベースにSQLite使ってるんだけど、データ量が増えたらSELECTがクッソ重くて無反応になる
無料でもっとまともなDBってないかな?
無料でもっとまともなDBってないかな?
589デフォルトの名無しさん (ワッチョイ 5e93-4MXr)
2018/07/14(土) 14:57:09.03ID:8JxBJ14s0 そもそもインデックスとか
ちゃんと使ってるのかね
ちゃんと使ってるのかね
590デフォルトの名無しさん (オッペケ Srbd-mxjo)
2018/07/14(土) 15:00:44.83ID:pS7j55swr もちろん
591デフォルトの名無しさん (ブーイモ MMc9-FUtQ)
2018/07/14(土) 15:02:50.58ID:LIsDU/xsM PostgreSQLだな
592デフォルトの名無しさん (ワッチョイ 6917-LQig)
2018/07/14(土) 15:06:32.58ID:EtwCAyCb0 C#から使うならSQLServerでしょ
593デフォルトの名無しさん (オッペケ Srbd-mxjo)
2018/07/14(土) 15:26:32.37ID:pS7j55swr どちらも無料なの?
594デフォルトの名無しさん (アウアウカー Sa55-tlpx)
2018/07/14(土) 15:40:56.72ID:jYJ6FXN8a >>579
nullで渡すと
nullで渡すと
595デフォルトの名無しさん (ワッチョイ 5d75-PdR6)
2018/07/14(土) 15:44:26.58ID:3U2LRmJo0 標準ライブラリのことでは?
596デフォルトの名無しさん (ワントンキン MM7a-ZTCE)
2018/07/14(土) 16:03:24.84ID:DkLuqI8LM プライベートの開発ではpostgresql一択
597デフォルトの名無しさん (ワッチョイ 66c9-LQig)
2018/07/14(土) 16:12:40.69ID:XotIEGF50598デフォルトの名無しさん (オッペケ Srbd-mxjo)
2018/07/14(土) 16:56:06.37ID:pS7j55swr599デフォルトの名無しさん (アウアウウー Sa21-FUtQ)
2018/07/14(土) 16:57:19.10ID:pGWO+29la 無料ならSQLServerはかなり制限がある
PostgreSQLは完全に無料で、性能・機能とも圧倒的に上
SQL ServerはWin上でGUIでお手軽に運用できるしMS製品で完結するのでドカタには愛されてる
PostgreSQLは完全に無料で、性能・機能とも圧倒的に上
SQL ServerはWin上でGUIでお手軽に運用できるしMS製品で完結するのでドカタには愛されてる
600デフォルトの名無しさん (ワッチョイ 5d75-PdR6)
2018/07/14(土) 16:59:28.09ID:3U2LRmJo0 俺はデータをカテゴリに分けてそれぞれに専用のテーブルを用意して振り分けて高速化したことある
601デフォルトの名無しさん (ワッチョイ b5b3-qWm8)
2018/07/14(土) 17:06:29.29ID:zT+O/n6K0 PostgreとMySQL比べるとどんな感じ?
602デフォルトの名無しさん (ワッチョイ 6681-38gj)
2018/07/14(土) 17:06:52.80ID:bK14KKak0 >>599
かなりって例えば?
ストアドも使えるしDBサイズも10GBまで使えるし基本問題ないっしょ。サイズ超えそうになったらバックアップDBとしてアーカイブすりゃいいしね。C#ならSQLServerがいいよ
かなりって例えば?
ストアドも使えるしDBサイズも10GBまで使えるし基本問題ないっしょ。サイズ超えそうになったらバックアップDBとしてアーカイブすりゃいいしね。C#ならSQLServerがいいよ
603デフォルトの名無しさん (ワッチョイ b5b3-qWm8)
2018/07/14(土) 17:09:02.22ID:zT+O/n6K0 俺もSQLServer使ってたけど10GB制限がキツイし全てのレコードを読めないと不都合だから別のDB探してたけどMySQL使おうかと思ってたところだった
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【サッカー】U-17日本代表、激闘PK戦制す 北朝鮮撃破で6大会ぶり8強入り U17W杯 [久太郎★]
- 「国民の憤りを引き起こした」中国側“高市首相発言の撤回改めて要求” [どどん★]
- 【インバウンド】中国からの“渡航自粛”…ツアー1000人分の直前キャンセル「キャンセル料は免除してくれ」 ことしいっぱいキャンセルに [1ゲットロボ★]
- 【芸能】日中関係悪化でエンタメ業界に大ダメージ… JO1の中国でのイベント中止、邦画は公開延期、STARTOアイドルへの影響も [冬月記者★]
- XやChatGPTで広範囲の通信障害 投稿や閲覧できず [蚤の市★]
- 【サッカー】日本代表、ボリビアに3発快勝 森保監督通算100試合目を飾る…鎌田、町野、中村がゴール [久太郎★]
- Perfume・あ~ちゃんの結婚相手の一般男性、吉田カバンの社長と判明 [977261419]
- 地球から無限km先の場所ってどうなっているの?
- 自民党議員「高市は先人が築き上げた日中関係を壊した。外務省が謝罪に言ってるが自分で責任を取れ」 [834922174]
- 日本、高市のお陰で破滅に近づくwwwwwwww
- AIアーティストだけど作品公開する
- 岡田克也「軽々しく存立危機事態とか言うべきじゃない」高市早苗「台湾で武力攻撃が発生したらどう考えても日本の存立危機事態」 [931948549]
