ふらっと C#,C♯,C#(初心者用) Part157at TECH
ふらっと C#,C♯,C#(初心者用) Part157 - 暇つぶし2ch577:デフォルトの名無しさん
23/02/19 14:53:17.94 d92YoZWa0.net
>>570
でお前は分かんないだろw

578:デフォルトの名無しさん
23/02/19 15:10:05.22 xSIr/CQB0.net
自称低能コンサルトやらがレスつけてて草
顔真っ赤なんだろうなw

579:デフォルトの名無しさん
23/02/19 15:13:47.59 1OiGX+vQd.net
このスレ怖い
レプリケーションとか知らないんだろうな

580:デフォルトの名無しさん (ワッチョイ fd7c-l9W9)
23/02/19 15:32:11.61 d92YoZWa0.net
>>573
お前のせいでスレが馬鹿だらけなの露呈してみんなダンマリやん

581:デフォルトの名無しさん (ワッチョイ cb7b-DN/W)
23/02/19 15:34:34.46 1KcZ6oa00.net
なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスや酔っぱらいレスはやめてください
ワッチョイ fd7c-l9W9
ワッチョイ 1501-rc3u
スップ Sd03-O7MM
ワッチョイ a38e-O7MM
NG推奨

582:デフォルトの名無しさん (ワッチョイ 1501-rc3u)
23/02/19 15:38:44.82 xSIr/CQB0.net
>>573
レプリケーション?
どうせこのあたりの話だろw
URLリンク(social.msdn.microsoft.com)

583:デフォルトの名無しさん (スッップ Sd43-S2bO)
23/02/19 15:50:05.43 1OiGX+vQd.net
そんな掲示板では無くMSのドキュメントとか読めば良いと思いますよ
マスター1台読み取り専用複数台ならそこまで問題になりませんが書き込みまで複数台用意しようと思ったらもう無理ですよ

584:デフォルトの名無しさん
23/02/19 16:12:32.75 nLv8gTKi0.net
>>523
@"D:アカウント.csv" と @"D:\アカウント.csv" は意味が違うから注意。

585:デフォルトの名無しさん
23/02/19 16:20:04.57 xSIr/CQB0.net
>>577
マルチマスタだとそりゃ色々トラップあるわな
別に自動採番に限った話だけじゃ無いだろ

586:デフォルトの名無しさん
23/02/19 16:26:23.46 VC8rtCXn0.net
なんか延びてると思ったら、元質問者ほっぽりだしてレスバ始めるいつもの光景だった

587:デフォルトの名無しさん
23/02/19 16:27:59.51 d92YoZWa0.net
本当にアホやな
だから自動採番じゃ無くてGUID使っておけばその部分は面倒減るやろ
でもって色々有るけど話題が自動採番だったからそこだけに言及した訳やん
でもってマルチマスターなんてそこまでの規模のシステム経験なきゃ知らんやろ
だから大規模システム云々言った訳やん
常に大規模システム前提にしてるのとDB1台で済む仕事してる人じゃ考える事が違うんだよ
>>579
自動採番でお前はどこまで考えられなかったんやろ
何がトラブルになるかも知らない
そりゃ話は並行線よ

588:デフォルトの名無しさん (アウアウウー Sa49-rc3u)
23/02/19 17:46:21.57 bwwdc6fua.net
自動採番使っちゃいけない理由がマルチマスターとか草生えるわ
しかも対策がGUID使うとか小手先にもほどがある
自称大規模システム経験者のくせにこんなことも知らないとか顔真っ赤だろ

キー値にランダムに生成された GUID を使用しており、大量の行を挿入した場合、インデックスにランダムな I/O が取り込まれるため、パフォーマンスが低下する可能性があります。
GUID はさらに、他のデータ型と比較すると比較的大きいものになります。
通常、GUID は、その他のデータ型が適さないような非常に限られた場合にのみ使用することをお勧めします。
URLリンク(learn.microsoft.com)

そもそもマルチマスターなら自動採番だけ対策してもダメで他の項目での衝突とかにも対応しないとダメ
またマルチマスターのために自動採番の開始番号をサイト毎に変えたりすることもできたりする機能があることも知らないのにドヤるのは流石に恥ずかしいわ

589:デフォルトの名無しさん (ワッチョイ fd7c-l9W9)
23/02/19 17:54:44.33 d92YoZWa0.net
現実見ろよ
大規模システムの多くはGUIDでやってる

microsoftだってDynamicsCRMの裏で動いてるDBはGUIDやでw

590:デフォルトの名無しさん (スッップ Sd43-S2bO)
23/02/19 18:00:47.31 1OiGX+vQd.net
CRMだけじゃ無くTeamsとかSharePointとかTFSとかもですよ

591:デフォルトの名無しさん
23/02/19 18:07:24.80 bwwdc6fua.net
> 大規模システムの多くはGUIDでやってる
妄想でないならソースよろしく
まあSharePointとかはセキュリティ上の都合もあるからリンクURLにGUIDは使ってるけど元データの管理に使ってると言うソースね

592:デフォルトの名無しさん
23/02/19 18:09:11.57 d92YoZWa0.net
こりゃたまげたw
オンプレのSharePointとか立てた事が無い?
普通にSQLServerのテーブルのデータなり設計見りゃ良いじゃ無いですかw

593:デフォルトの名無しさん
23/02/19 18:19:37.24 d92YoZWa0.net
何だろクラウドで何でも用意されて便利になったけど弊害なんかねぇ
ある意味“ゆとり”やなぁ
昔はどうだったとかこの業界じゃあまり意味は無いけど他のシステムがどういうデータ構造してるとかテーブル設計してるとか見えないのも勉強の機会を奪うんやな
でもって何でこういう設計になってるんだとか考えないからこのスレの連中みたいになるんだろうな

594:デフォルトの名無しさん
23/02/19 18:26:00.08 owAZbnPUd.net
>>564
馬鹿は自動採番をマスターコードに使うとかしか思ってないのか
こういう馬鹿だからExcel方眼紙を作るのか

595:デフォルトの名無しさん
23/02/19 18:29:42.58 d92YoZWa0.net
>>588
なあ話の流れが何から始まってるか忘れてないか?
そういう事に気付けないから方眼紙作るんじゃねw
レス見りゃ分かるけど俺は方眼紙作るなって言ってる側なんだけどそんな事も判断出来ない?
もう負け犬の遠吠えになって支離滅裂ですよっと

596:デフォルトの名無しさん
23/02/19 19:16:19.57 xSIr/CQB0.net
>>586
> オンプレのSharePointとか立てた事が無い?
SharePointは試行として15年前に立てたけど流石にスキーマまでは見てないわ
で、テーブル名とフィールド名書いてくれ、明日確認するから
あと、大規模システムの多くがGUIDの根拠もよろしくねw
>>589
> もう負け犬の遠吠えになって支離滅裂ですよっと
お前がな

597:デフォルトの名無しさん
23/02/19 19:19:35.69 hrLsCaA7a.net
レスバしか生きがいのなさそうな連中ばっかだね。

598:デフォルトの名無しさん (ワッチョイ fd7c-l9W9)
23/02/19 19:22:35.67 d92YoZWa0.net
>>590 ほぼ全部のテーブルのPKはGuidだから存分に確認してくれ



600:デフォルトの名無しさん (ワッチョイ fd7c-l9W9)
23/02/19 19:23:05.67 d92YoZWa0.net
ああオンプレのDynamiCRMでもいいぞ

601:デフォルトの名無しさん (スッップ Sd43-S2bO)
23/02/19 19:30:57.92 1OiGX+vQd.net
あのぉ…
15年も前に試行で立てたサーバが使われずにそのまま残ってるのってヤバく無いですか?

602:デフォルトの名無しさん (オッペケ Sre1-PBc0)
23/02/19 19:34:46.58 nWzPf4U3r.net
スレに関係ないレスバはそろそろ止めてくれよ
口汚い煽り合い罵り合いは傍から見てて不愉快以外の何物でもない

603:デフォルトの名無しさん (ワッチョイ 1501-rc3u)
23/02/19 19:45:04.21 xSIr/CQB0.net
>>592
いや、具体的なテーブル名とフィールド名頼むよ
まさか出せないわけじゃないだろ?
あと、大規模システムの多くがGUIDの根拠はどうした?

>>594
試行って書いてあるだろ、6ヶ月ぐらいで廃棄したよ
そもそも15年前と今でスキーマ違うだろうし
会社に行けば今のSharePoint使ってるところあるからそこに聞けばわかる

604:デフォルトの名無しさん (ワッチョイ 1501-IrAa)
23/02/19 19:48:01.76 vkCTUlzu0.net
ヤバい人はヤバい人を呼び寄せる

605:デフォルトの名無しさん
23/02/19 20:15:38.86 M1mmtWZV0.net
ここに巣くっていらっしゃる自称有能な人たちの正体がこれだからな。
575 の後にこれだけ続けられるのはすご・・・くないな。

606:デフォルトの名無しさん
23/02/19 21:49:02.09 t9MPar+o0.net
「初心者用」スレでレスバを繰り広げてしまうオジサンの悲哀

607:デフォルトの名無しさん
23/02/19 23:05:23.45 F3sCABek0.net
誰にも構って貰えないからここで憂さ晴らししてるんだろうな

608:デフォルトの名無しさん
23/02/20 02:44:22.58 MgLoeEmh0.net
>>458
これは香ばしい
IDENTITYめっちゃ好き
これのおかげで捗ることは多々ある

609:デフォルトの名無しさん
23/02/20 02:46:24.32 MgLoeEmh0.net
あ、458の人じゃなくて、リンク先の話だよ

610:デフォルトの名無しさん
23/02/20 09:00:16.98 SjajNyyV0.net
日曜の午後いっぱいレスバしてんの草生えるわ

611:デフォルトの名無しさん (ワッチョイ fd49-qSLQ)
23/02/20 10:34:12.59 vEQcsP0U0.net
楽しそうだよなw

612:デフォルトの名無しさん
23/02/21 06:58:00.00 StFh5srV0.net
自動採番でユニークIDあるほうが
データベースは扱いやすい。
IDがないデータベースとか逆に怖い。

613:デフォルトの名無しさん
23/02/21 07:29:06.13 Cm9Gh80c0.net
ユニークIDが無いとか誰も言ってないんやで
そのユニークIDが整数型の自動採番なのかGUID又は文字列型のGUID7日って話
でもって1日以上経ったけどCRMとかのスキーマ確認終わったんかね
まあ確認して違うなら鬼の首取った様に言ってくるはずだから結果は見えてる
息してるんかなアイツ
今頃自分の無能さとキャリアの無さに震えてるのかもしれん

614:デフォルトの名無しさん
23/02/21 07:49:02.78 qASqt4SF0.net
>>606
まだいたのかよw
具体的なテーブル名とフィールド名はまだ出せないの?
待ってるんだけど

615:デフォルトの名無しさん
23/02/21 08:11:09.38 Cm9Gh80c0.net
何の意味もない事を連呼する無能
例えば特定の1テーブルを俺が指定してその通りだったらそれで良いのか?
それ以外は全部自動採番かもよw
普通そう言った作為的な事を避ける為に指定するなんて事は避けるのが“常識”
まさかスキーマ調べるのに全テーブルのリストを一気に出す方法をご存知無い?

616:デフォルトの名無しさん
23/02/21 08:14:21.43 Cm9Gh80c0.net
常識も知らず自らやると言った事もやらない
無能の極みやなw

617:デフォルトの名無しさん
23/02/21 08:26:17.60 qASqt4SF0.net
えっ?
そんな中身のない文章書く暇あるならサクッとテーブル名とフィールド名書けばいいのにw

618:デフォルトの名無しさん
23/02/21 08:30:08.16 PC7NmD+5d.net
もう少し落ち着いてw
スレ的な事で言えばSqlConnectionにGetSchemaが有るのでそれでスキーマ情報は取れるかと思います
その上で各テーブルのPKのフィールド情報とか取れば良いのかと思います
調査してるのに相手に特定の情報を求めるのは流石に>>607が変だと思います
ペネとレーションテストとかだって態々テスト業者にココですよとは言わないです
それと法治国家で有る日本においては疑ってる方がそれは間違いだの嘘だのを証明する必要が有るので日本人としてもおかしいですね
何より情報提供が無ければ調査出来ない事ならともかく調査に関係のない事を要求して待って調査出来てませんは何の言い訳にもなりません
無能は言い過ぎですが仕事は出来ない人の典型です

619:デフォルトの名無しさん
23/02/21 08:31:17.41 Cm9Gh80c0.net
>>610
ブーメランやなw
そんなと事書くとか待つ間に調べりゃ良いのにw

620:デフォルトの名無しさん
23/02/21 08:41:46.66 PC7NmD+5d.net
双方とももう少し大人な対応出来ないんですかね?
クラウド版しか使った事が無いのでググってみました
URLリンク(debajmecrm.com)
これだけじゃ判断できないとかそういう場合は自分達で色々調べてみて下さい
少なくてもGUIDが使われてるという事は間違い無さそうです

621:デフォルトの名無しさん (ワッチョイ 03bd-h1Ka)
23/02/21 08:47:47.87 km8hBiSw0.net
DBのスレでやれ。邪魔。

622:デフォルトの名無しさん (ワッチョイ ed33-47hI)
23/02/21 08:55:36.91 WzHy3E970.net
こんなところでしかイキれないおじさん、かわいそかわいそなのですよ

623:デフォルトの名無しさん
23/02/21 10:32:42.54 rKhaXs3b0.net
他のところでイキるおじさんきたな

624:デフォルトの名無しさん
23/02/21 10:41:54.00 rKhaXs3b0.net
なんかよくわからんけど自動採番の是非で争ってんの?
レプリケーションされる側は自動採番切ればいいんだぞ

625:デフォルトの名無しさん
23/02/21 10:47:26.86 HT5z9Vlv0.net
余所でやれ余所で

626:デフォルトの名無しさん
23/02/21 11:02:55.11 Cm9Gh80c0.net
>>617
マルチマスターが分かってない馬鹿

627:デフォルトの名無しさん
23/02/21 12:02:00.62 lu2mbOR0d.net
CSV→SQLite→ExcelCSV→SQLServer→自動採番→GUID→そして今↓
ワッチョイ fd7c-l9W9
> 大規模システムの多くはGUIDでやってる
> オンプレのSharePointとか
ワッチョイ 1501-rc3u
> テーブル名とフィールド名書いてくれ
スッップ Sd43-S2bO(レプリケーションやマルチマスタを引き合いに出した人)
> ワッチョイ 1501-rc3uが調査すべき

628:デフォルトの名無しさん
23/02/21 12:04:32.00 Aqm2+vwoM.net
商品コードみたいな人間用の識別コードは別途設定する感じですか?

629:デフォルトの名無しさん
23/02/21 12:06:30.73 L+HWZvhn0.net
むしろみんなNG設定にしてないのに驚く

630:デフォルトの名無しさん
23/02/21 12:16:46.92 Cm9Gh80c0.net
>>620
まあ立証責任って奴だよな
俺の言ってることが疑わしい
でも日本じゃ疑わしきは罰せずの原則
俺が本当だって証明する必要は無いけど疑ってる方が嘘だと証明する必要はある
この辺が分からないのは知識が足りないか無能

631:デフォルトの名無しさん
23/02/21 12:23:22.51 Cm9Gh80c0.net
>>621
商品コードが一意ならそのままPKにすりゃ良いんじゃね
何でわざわざ自動採番使うの?無駄でしょ

632:デフォルトの名無しさん
23/02/21 12:35:51.91 SAWbr9f/M.net
技術的な選択に万能なものなんてないんだから
自動採番でもGUIDでもその他の選択肢でも
それぞれの長所短所の両方を理解して状況とトレードオフを判断して使い分けるのが当たり前
特定の選択肢にあたかも短所がないように喧伝する人がいたらそれはエンジニアに求められる最低限の思考ができない人なので相手にするだけ時間の無駄

633:デフォルトの名無しさん
23/02/21 12:40:32.57 Cm9Gh80c0.net
>>625
その通りだよ
だから大規模だと自動採番は問題になる事が多いからGUIDを採用する場合何多いって俺は言ってる訳よ
大規模やった事ないんだろうなっていうのも小規模なら自動採番でも問題になる事は少ないのでそういう経験しか無いんだろうなって言ってるだけ
つまり小規模での自動採番は誰も否定してない
これがお前の言ってる事だと思うんだけどそれすら読み取れないのはやっぱり無能

634:デフォルトの名無しさん (ラクッペペ MMcb-U3RP)
23/02/21 12:48:04.89 Aqm2+vwoM.net
>>535
これか?

635:デフォルトの名無しさん (ワッチョイ 5507-ebfy)
23/02/21 13:23:00.91 rKhaXs3b0.net
>>619
使いこなせないなら使うなよw

636:デフォルトの名無しさん (ワッチョイ 5507-ebfy)
23/02/21 13:24:49.40 rKhaXs3b0.net
マルチマスターガーとか言ってるやつはID以外の二重登録とか考えてもいないんだな

637:デフォルトの名無しさん (ワッチョイ fd49-qSLQ)
23/02/21 14:29:08.82 pbf9sIV80.net
こういうのって前提を後から色々出してくるから、議論にもならないんだよな

マルチマスターとかguiduuidとかパフォーマンスとか
「俺はこうだからこう思ってるんだよ」の「こうだから」が後出しとかね

まあ見てる分には勝手にやってろだけどなw

638:デフォルトの名無しさん (ワッチョイ fd7c-l9W9)
23/02/21 14:36:55.50 Cm9Gh80c0.net
>>630
そりゃ最初は議論するつもりが無いからな

言った様に世の中での大規模システムはそうなってる
やってる奴は知ってる分かってる説明の必要が無い

それを商売にしてるんです書く事は出来ない

更に言えば知る必要も無い
無能は黙って言われたことに従ってれば良い
自分で考えて何でそうなってるか分かった奴が上に行ける
世の中そんなもん

639:デフォルトの名無しさん (ワッチョイ 5507-ebfy)
23/02/21 15:37:45.01 rKhaXs3b0.net
自分で何を言ってるかわかってないやつは上には行けんぞw

640:デフォルトの名無しさん (ワッチョイ ed2f-vQc9)
23/02/21 19:31:04.87 NTFSmz6y0.net
つか、GUIDでオッケーとか言ってる奴は
GUIDは「自動採番」じゃないと思っているのか?
GUIDは衝突しないと思っているのか?

GUID使えば大丈夫みたいな認識で大規模システム語るなよ

641:デフォルトの名無しさん (アウアウエー Sa13-nl9c)
23/02/21 20:13:33.44 0GWHk9pEa.net
ソケットでサーバーからクライアントにメッセージを送るためのにはどうすればいいですか?

642:デフォルトの名無しさん (ワッチョイ fd7c-l9W9)
23/02/21 20:24:18.01 Cm9Gh80c0.net
>>633
衝突したら取り直せば良いだけやん
リトライ処理どうせ書くやん
頭悪すぎでしょ

ああリトライ処理とか書かない糞プログラムしか書かないから想像出来ないか

643:デフォルトの名無しさん (ワッチョイ fd7c-l9W9)
23/02/21 20:27:33.64 Cm9Gh80c0.net
>>634
ググれ
ググれば腐る程サンプルコード出てくる
その上でこうやって実装したんだけど動かないとか質問しろ

644:デフォルトの名無しさん (ワッチョイ 5507-ebfy)
23/02/21 20:29:20.47 rKhaXs3b0.net
>>635
え?もしかして自動採番でも取り直せること知らないの?

645:デフォルトの名無しさん (ワッチョイ ed2f-vQc9)
23/02/21 20:29:36.58 NTFSmz6y0.net
>>635
で、GUIDの何が便利なんだ?

646:デフォルトの名無しさん (ワッチョイ fd7c-l9W9)
23/02/21 20:32:58.33 Cm9Gh80c0.net
便利なんて一言も言ってないけど?
アホ?

デメリットが少ないって言ってるだけ

647:デフォルトの名無しさん (ワッチョイ fd7c-l9W9)
23/02/21 20:37:55.75 Cm9Gh80c0.net
>>637
何か的外れなツッコミだなって今日の書き込み見てみたら全部そうだった

プログラムとか以前に頭悪すぎて草w

648:デフォルトの名無しさん (ワッチョイ fd7c-l9W9)
23/02/21 20:41:49.36 Cm9Gh80c0.net
で肝心のワッチョイ 1501-rc3uはどうしたの?
MS製品がGUID使ってるの分かって恥ずかしくて出てこれない感じ?
今頃釣ってそうw

15年前にオンプレ鯖がどうこう言ってたからそれ以上のキャリアあるんでしょ?
全く意味の無い成長の無い人生だって知ったらもうねw

649:デフォルトの名無しさん (ワッチョイ a34b-0fjh)
23/02/21 20:47:53.58 fesX98uF0.net
>>634
まずは服を脱ぎます

650:デフォルトの名無しさん (ワッチョイ 5507-ebfy)
23/02/21 20:55:21.14 rKhaXs3b0.net
>>640
おう、ズレてることに早く気づくといいな
とりあえず就職してみたら?
想像の世界に生きてたらこういうことになるから

651:デフォルトの名無しさん (ワッチョイ ed2f-vQc9)
23/02/21 21:23:28.00 NTFSmz6y0.net
>>639
デメリットが少ないのは普通、便利だっていうんだけど
具体的にどういうデメリットが解消されるって?
まあ、揚げ足しかとれないで解消しないけど少ないとか言い出しそうだな

652:デフォルトの名無しさん (ワッチョイ fd10-h1Ka)
23/02/21 23:58:30.02 CFQVVPXH0.net
>大規模だと自動採番は問題になる

どういうケースだろ

653:デフォルトの名無しさん (ワッチョイ 1501-IrAa)
23/02/22 00:18:39.14 ywGxgjQk0.net
あんたらまだやってんのかw
擦るねぇ

654:デフォルトの名無しさん (ワッチョイ 03bd-h1Ka)
23/02/22 01:13:55.56 /Tp2qWpP0.net
>>634
acceptした後にそのソケットにsendする。

655:デフォルトの名無しさん (オッペケ Sre1-qSLQ)
23/02/22 07:57:16.18 tnIJ4+SKr.net
「大規模」とやらもふわっとしてる表現だしな

656:デフォルトの名無しさん (ワッチョイ e5e5-/+FQ)
23/02/22 08:44:58.55 OTKNAsqc0.net
>>646
一番真っ赤なのが朝から晩まで常駐しててもうね

657:デフォルトの名無しさん (ワッチョイ fd7c-l9W9)
23/02/22 08:54:22.82 aZ0d5T8Y0.net
何でも良いけどMS製品で大規模に使われるシステムにGUID採用されてるって事に意義は無いって事で良いか?

何んでとか理由まで聞くのはアホ
何でも教えてもらえると思うな
そこからは人月200、300の金が掛かる話や
お前らもそうやって仕事してるんだから理解出来るやろ

658:デフォルトの名無しさん (アウアウウー Sa49-ebfy)
23/02/22 08:58:50.02 Lno1Pw0wa.net
んーと、それぞれの案件によって使い分けるんだぞw
無職は一例を見るとそれが全てと思うの

659:デフォルトの名無しさん (ワッチョイ fd7c-l9W9)
23/02/22 09:14:16.63 aZ0d5T8Y0.net
>>651
んな事は分かってるよw
だから話の流れが分かってない馬鹿って言われるんだよ

MSドキュメントを持ち出して来たから実例として出しただけやん

プログラム能力云々じゃ無くて基本的無能だな

660:デフォルトの名無しさん (ワッチョイ cbbb-u8a6)
23/02/22 09:16:32.62 dnPnfK4u0.net
スレタイも読めない人たちの基本的能力ってw

661:デフォルトの名無しさん (ワッチョイ fd7c-l9W9)
23/02/22 09:31:51.16 aZ0d5T8Y0.net
C#からDB使う場合の話やろ
スレタイ通りやな

662:デフォルトの名無しさん
23/02/22 09:54:29.60 Lno1Pw0wa.net
言うことがいちいちズレてるなw
しかもそれに気づかないから相手がズレてると思い込んでて結果これだよ

663:デフォルトの名無しさん
23/02/22 09:55:33.85 CwX7PCEJp.net
おまえらDBこねくり回すしか仕事無いのかよw

664:デフォルトの名無しさん
23/02/22 10:17:37.51 gJ0zE94R0.net
最近AWSのインフラ構築をC#で書いてみたけど、別にC#じゃなくてもいいね。
型が厳密なせいで肩がこる書き方になるし、
型がゆるーいスクリプト言語のほうが向いてる気がする

665:デフォルトの名無しさん
23/02/22 10:21:51.67 CwX7PCEJp.net
むしろ散々型を気にする言語使ってたら、逆に緩い言語使う時に戸惑うよな

666:デフォルトの名無しさん
23/02/22 11:00:04.75 5ZXMwUGv0.net
まあそれは気分だよなあ
緩くてエラーとかになると正反対の気分になるしw

667:デフォルトの名無しさん
23/02/22 11:14:36.15 SqmMPCpZ0.net
MSがGUID使う理由は大体見当つくけど、彼がそれを説明できないのは笑えるね
おそらく上の人にそう言われた程度しか知らないんだろうな

668:デフォルトの名無しさん
23/02/22 12:07:36.36 aZ0d5T8Y0.net
>>660
ブーメランじゃねw
お前も説明してないので同じ事がお前自身に適用される
論法もまともに出来ない無能

669:デフォルトの名無しさん
23/02/22 13:02:30.00 mzxVPNszr.net
相打ちー

670:デフォルトの名無しさん
23/02/22 14:55:05.44 SqmMPCpZ0.net
>>661
自動採番はInsertするまで決定しないからそれをFKで使う関連テーブルの更新が割りと面倒
それくらい気が付かなかったのかな?

671:デフォルトの名無しさん
23/02/22 15:22:17.31 aZ0d5T8Y0.net
>>663
それ大規模で関係ある?
どの規模でも同じだよね

672:デフォルトの名無しさん
23/02/22 15:24:07.64 aZ0d5T8Y0.net
ホント話の流れとか前提とか把握してないのに無駄に突っ込む無能って害悪やな

673:デフォルトの名無しさん
23/02/22 15:36:34.93 SqmMPCpZ0.net
>>664
大規模開発限定なんて君しか言ってないけどw

674:デフォルトの名無しさん
23/02/22 15:54:07.02 MIqUxzeUa.net
>>663
どこが面倒なんだw

675:デフォルトの名無しさん
23/02/22 15:54:34.66 aZ0d5T8Y0.net
>>666
悔しいのは分かるけど意味不明w
俺に説明出来ないだの気付かないだの言っておいてそれはガイジやろw

676:デフォルトの名無しさん
23/02/22 15:55:32.94 aZ0d5T8Y0.net
>>667
その程度で面倒に感じる程度なんやろ

677:デフォルトの名無しさん
23/02/22 16:10:08.18 SqmMPCpZ0.net
>>668
相変わらず自分の見解は無しw
よくそれでマウント取れると思ったな

678:デフォルトの名無しさん
23/02/22 16:15:00.98 aZ0d5T8Y0.net
>>670
書かない理由も既に書いてるけど読めない?
ああ理解出来ないから馬鹿なのかw

679:デフォルトの名無しさん
23/02/22 16:24:33.62 SqmMPCpZ0.net
>>671
661 返信:デフォルトの名無しさん (ワッチョイ fd7c-l9W9)[sage] 投稿日:2023/02/22(水) 12:07:36.36 ID:aZ0d5T8Y0 [4/9]
>>660
ブーメランじゃねw
お前も説明してないので同じ事がお前自身に適用される
論法もまともに出来ない無能
説明していないと自白しているのは確認したw

680:デフォルトの名無しさん
23/02/22 16:55:42.68 aZ0d5T8Y0.net
書けば書くほど馬鹿を晒すなw
俺にブーメラン帰ってないでw

681:デフォルトの名無しさん
23/02/22 18:26:59.39 8fySboC90.net
まあ技術的に返せなくて人格攻撃しかできないような奴のレベルは推して知るべし

682:デフォルトの名無しさん
23/02/22 21:12:15.66 8Lnlg+wO0.net
>>663
それが困る場合は IDENTITY じゃなくてふつうに SEQUENCE 使えばいいんじゃね

683:デフォルトの名無しさん
23/02/22 22:15:34.87 72VrKBx+0.net
UIを作り始めたので非同期処理について調べ始めてみました
なんとなく概念的なものは分かるのですが記事によってこう書くべき/書くべきじゃないというのがバラバラなので基本的な指針がイマイチ掴めません
例えば非同期な関数の中はすべて非同期処理にするべきなのでしょうか?
同期処理を中に混ぜても書けてしまうのですが同期処理と非同期処理はそれぞれ完全に分けて記述するのが一般的ですか?

684:デフォルトの名無しさん
23/02/22 22:27:21.33 lHNZ9uxM0.net
すべて非同期にするような非効率なことしなくていいだろ

685:デフォルトの名無しさん
23/02/22 22:30:00.48 aZ0d5T8Y0.net
具体的なコードを出すべき

686:デフォルトの名無しさん
23/02/22 22:30:04.81 R6q1C2ar0.net
処理が終わるまでに他にすることがないなら同期でUIフリーズさせとけばいい
そのほうがユーザーにもわかりやすい

687:デフォルトの名無しさん
23/02/22 22:31:33.00 aZ0d5T8Y0.net
それって1番ダメなやつやんw

688:デフォルトの名無しさん
23/02/22 22:33:18.05 hKnEsPO40.net
UIでボタン押したあと一回一回終わる処理ならawaitで同期して書く
トリガ受けて常駐する処理なら完全にわける

689:デフォルトの名無しさん
23/02/22 22:34:20.17 aZ0d5T8Y0.net
一般ユーザって馬鹿なんよ
UIフリーズしたら裏でどうこうなんて知らないんだからアプリが重いとか処理が固まったって言うんよ
要は糞アプリ認定

690:デフォルトの名無しさん
23/02/22 22:45:48.29 R6q1C2ar0.net
実際に重いんだから当然だろ
処理を並列化してマルチコア対応するのなら非同期も意味が出てくるからやるといい
出来ないならヤメロ
WindowsはマルチタスクOSなのでエロビデオ見ている間に終わればいい

691:デフォルトの名無しさん
23/02/22 22:48:14.10 hKnEsPO40.net
windowsじゃUIフリーズはOSが応答なしと認識して
殺しますかってダイアログ出してくるから駄目や

692:デフォルトの名無しさん
23/02/22 22:52:53.20 iDIgOzo00.net
>>679
今時UIフリーズは見っともないぞ
1秒とか極短時間ならまぁありだと思うけど

693:デフォルトの名無しさん
23/02/22 22:53:47.40 1bDiXhoP0.net
>>683
UIを軽視するな

694:デフォルトの名無しさん
23/02/22 22:55:04.76 R6q1C2ar0.net
普通なら1秒かからない処理まで非同期にしてエラーメッセージすら出せなくなったWindows11さんのようにならないように気をつけてね

695:デフォルトの名無しさん
23/02/22 23:06:17.46 R6q1C2ar0.net
ま、極論だけどな
wpfならコマンドボタンにAsyncRelayCommandをはめるだけだ
簡単だな
でもめんどうだからウインドウまるごと無効化とかしちゃうよねw

696:デフォルトの名無しさん
23/02/22 23:07:26.87 aZ0d5T8Y0.net
またゴミ屑が混ざってるな

697:デフォルトの名無しさん
23/02/22 23:09:33.79 R6q1C2ar0.net
>>689
めんどくさい上に意味がないんだよ
反論できますか?

698:デフォルトの名無しさん
23/02/22 23:14:45.72 aZ0d5T8Y0.net
>>690
既に馬鹿なユーザによって糞アプリ認定されると書いたけど?
糞アプリ認定ってのは客が誰かによるが業務系アプルなら当然改修しろって言われる
スマホアプリ見たいな奴なら売れない
反論できる?

699:デフォルトの名無しさん
23/02/22 23:17:51.51 aZ0d5T8Y0.net
>>690
お前の言ったエロビデオをPCで見たとしよう
ビデオ閲覧ソフトが面倒だって理由でUIフリーズさせててエロい画面が更新されずってなったら使わんだろ?
お前が言ってるのはそういうことだ
商品や製品レベルじゃ無いんだよ

700:デフォルトの名無しさん
23/02/22 23:19:37.65 iDIgOzo00.net
別にアプリの操作は出来なくても構わないけど、ウィンドウ移動すら出来なくなるはちょっと
今なら大した手間でもないのに

701:デフォルトの名無しさん
23/02/22 23:20:49.12 aZ0d5T8Y0.net
まあ馬鹿には分からないんだろ

702:デフォルトの名無しさん
23/02/22 23:36:22.32 SqmMPCpZ0.net
まあawaitから抜けたタイミングでCancelされたりDisposeが走ったりをいちいちチェックしなくちゃいかんのは面倒ではあるな
ただ、これを怠るとクソアプリになっちまう

703:デフォルトの名無しさん
23/02/22 23:42:53.10 nCkg+nHK0.net
ようわからんかったら全部Task.Runに押し込んでコールバックすればいいよ

704:デフォルトの名無しさん
23/02/23 03:09:48.61 K1P6f92B0.net
たんに非同期とかいうと範囲が広すぎるからな
まあ、非同期は目的じゃなくて手段なんだから、目的をはっきりさせよう
>>676のいう非同期ってのはawaitに限定した話で良いのか?

705:デフォルトの名無しさん
23/02/23 05:45:14.30 d3tkzJuS0.net
>>657
型が厳密なほうが好きだ。
varもなるべく使わないできっちり書く。
スクリプト言語で型がなくて文字列でも整数計算できたりするのはいいのだけど、
Pythonのように型宣言がないのに型がある言語がつらい。
intを入れていた変数の中身がいつの間にかfloatになっていて原因を調べたら、
途中の除算のせいだった。Pythonだとint型/int型=float型。

706:デフォルトの名無しさん
23/02/23 07:24:06.39 +YhBBcDf0.net
どうでもいいけどそれは変数の使い回しも問題じゃないのん?
除算したらもう違う意味のものやろ

707:デフォルトの名無しさん
23/02/23 08:06:33.56 BvhctNj6a.net
「//演算子」を知らないお前が悪いとしか

708:デフォルトの名無しさん
23/02/23 08:39:59.38 O5A4F0mW0.net
右辺でnewしててそのまま扱うだけの時なんかはvarしてるけど
関数の戻り値受ける時とかは型名書いて宣言してるかな

709:デフォルトの名無しさん
23/02/23 08:46:22.62 6eqWydaM0.net
C#はvar使えるけど強力な型推論でコンパイル時点で弾いてくれるから別に使ってもいいかな

710:デフォルトの名無しさん (ワッチョイ cb10-/+FQ)
23/02/23 09:23:07.97 YlmVjB0R0.net
VBだと勝手にキャストされたりするけど、C#はそのへんの制限強いもんね

711:デフォルトの名無しさん (オイコラミネオ MM91-BTrK)
23/02/23 09:43:10.46 U/HQXaW+M.net
C#の型推論は出始めは強力な部類だったけど今はrustとかと比べるとかなり貧弱なんだよな
まあ技術や概念は進歩するんだ

712:デフォルトの名無しさん (ワッチョイ 2302-S2bO)
23/02/23 10:48:24.21 NaebF7tW0.net
呼ばれてないのにRustチョーーーーーン

713:デフォルトの名無しさん (アウアウウー Sa49-ebfy)
23/02/23 12:38:42.14 c775I29ma.net
正直F#並の推論が欲しくなることはある

714:デフォルトの名無しさん
23/02/23 13:17:33.61 d3tkzJuS0.net
>>699
定数変数の倍数に丸めたくて、
hoge = 10
fuga = fuga / hoge * hoge
とかしたんだよ。たしか。
>>700
>>698を書いている時に知った。

715:デフォルトの名無しさん
23/02/23 14:19:59.52 U/HQXaW+M.net
自分はrustは勉強したけど使ってない
C#の方がいいから
外からの刺激は必要だと思うけど全部が全部取り込む必要はない
こんな微妙なタイミングでジェネリックで計算できるようになったのはrustからの刺激が原因だろうけど
今更感がある

716:デフォルトの名無しさん
23/02/23 15:19:02.16 Rcv3zn+Ua.net
ジェネリックで計算できるようにしてほしいという要望は相当前からあったぞ
むしろInt32とかは最初からIArithmeticインターフェイスを実装しかけてコメントアウトで外してる
おそらく実装者の技術的限界で見送り続けてきたのがようやく実装できたんだろ

717:デフォルトの名無しさん
23/02/23 15:28:18.88 U/HQXaW+M.net
一部で要望はあったけどずっとなくても何とかやって来てこの微妙な時期での実装
rustのマクロを駆使した超強烈な実装を見て手法が確立されて実装されたんじゃないかと

718:デフォルトの名無しさん
23/02/23 15:32:55.31 Rcv3zn+Ua.net
まあそう思いたいなら思っとけ
なんでrustとかruby使ってるやつはこんなんばっかなんだ

719:デフォルトの名無しさん
23/02/23 15:35:49.50 D5ClvIDip.net
ジェネリックで計算ってどういうこと?
言語仕様なんて全然追いかけてないからわからない

720:デフォルトの名無しさん
23/02/23 15:35:55.63 U/HQXaW+M.net
だから使ってないって言ってるだろ

721:デフォルトの名無しさん
23/02/23 15:38:21.15 BgVzVA3A0.net
>>712
generic mathでググれ

722:デフォルトの名無しさん
23/02/23 16:13:42.99 ZqbKv2H4r.net
>>710
理屈と膏薬はどこにでもつく

723:デフォルトの名無しさん
23/02/23 16:26:11.54 Rqipt3qxp.net
>>714
ふむふむ、なるほどねー(何もわかってない)

724:デフォルトの名無しさん
23/02/23 18:09:58.93 U/HQXaW+M.net
超簡略して書くと
今まではジェネリックで単純に計算できなかったけど制約付きでできるようになりましたよ

725:デフォルトの名無しさん (ワッチョイ ed68-h1Ka)
23/02/23 20:40:35.46 5afFl0ZD0.net
>>714
ググった。マジすか。
昔から欲しかった数値型制約ってことすか。
待ってて良かったC#

726:デフォルトの名無しさん (ワッチョイ b579-ZKto)
23/02/23 20:43:42.35 1RS70dw+0.net
>>698
俺も書くときはvarが好きで
読むときはvarは嫌い

って思ってたらVSで一発で変換できる機能があったから使ってた

727:デフォルトの名無しさん (ワッチョイ 0d02-/+FQ)
23/02/24 00:34:19.46 LXr7iqjl0.net
面倒くさいからvar使いまくってるわ

728:デフォルトの名無しさん (ワッチョイ 1501-An8R)
23/02/24 01:03:49.83 PeKlM3lq0.net
varってint入れた後、変数再利用でstring入れたりできる?

729:デフォルトの名無しさん (ワッチョイ fd10-j6dJ)
23/02/24 01:23:46.89 Q77HdEB50.net
できない
暗黙なだけで型を持った変数だから
なんでも取れるオブジェクトではない

730:デフォルトの名無しさん (ワッチョイ ed68-h1Ka)
23/02/24 07:39:41.14 5s0A+5N90.net
C#やってるせいか、型宣言しないJavascriptは不安になる。
でも、そっちの人達は逆に冗長に感じるんだろうか。

731:デフォルトの名無しさん (ワッチョイ 5507-ebfy)
23/02/24 08:09:39.64 OehCc09P0.net
JavaScriptの型はこんだけしかないから
URLリンク(developer.mozilla.org)

クラスはなんちゃってクラスでメソッドやプロパティとして使える属性をいくらでも増減できる連想配列でしかないから変数に型を宣言するだけ無駄
それを無理やりやるとTypeScriptになる

732:デフォルトの名無しさん (ワッチョイ 0d02-/+FQ)
23/02/24 08:10:35.46 LXr7iqjl0.net
そもそも変数を再利用しようとするなと
バグの温床だし、新しく変数宣言しろ

733:デフォルトの名無しさん (ワッチョイ 5507-ebfy)
23/02/24 08:14:35.74 OehCc09P0.net
<


734:a href="/test/read.cgi/tech/1669349768/725" target="_blank">>>725 ++とか/=とか使ったことのないタイプかw 今回問題になってるのはPytonで除算に二種類の演算子があって片方を使うと小数点以下が出るということだけなんだよw



735:デフォルトの名無しさん (ワッチョイ 0d02-/+FQ)
23/02/24 08:21:35.39 LXr7iqjl0.net
>>726
さすがにインクリメントとかにはどうこう言わんけど
ここで言う再利用ってのは、別の目的に使いまわすなってことな
わざわざstringにしたいって事は出力等が目的だろうから、それ用に変数作れ

736:デフォルトの名無しさん
23/02/24 09:11:31.26 k+kkC7Nop.net
ref した引数に値を入れなくてもいいけど
out する引数は値を入れないとだめなん?

737:デフォルトの名無しさん
23/02/24 10:07:52.27 zTZFqfcCd.net
ちょうど今GIMPのPythonでint→float→intとやらされて色々と考えさせられるものがあった

738:デフォルトの名無しさん
23/02/24 10:13:00.07 IQGX/86sp.net
pythonって、型変換によって出る数値精度の劣化ってどう思ってんだろって常々疑問に思ってる

739:デフォルトの名無しさん
23/02/24 10:17:03.70 RFzamc280.net
>>728
そういう意味の修飾子だからね

740:デフォルトの名無しさん
23/02/24 14:05:40.83 ccbVR1xk0.net
varならvarで全然いいけど、
一番嫌なのは「なんでここは分かりきってるのにvarじゃないんだよ!」って思わされること
理不尽なストレスが嫌なだけ。VSなら提案されるからそんなにないけどね

741:デフォルトの名無しさん
23/02/24 18:47:14.17 gJNax+MV0.net
自作のコントロールで矢印キー押すと
なんでかフォーカスが移動して入力不能になる現象が発生して悩んでたけど
ProcessDialogKeyをオーバーライドするっていうのやってみたら収まった

742:デフォルトの名無しさん
23/02/24 20:01:44.03 qE9KpEOq0.net
>>732
使用箇所を文字列検索かけたときにvarになってるとヒットしないのが嫌だな
visualstudioならvarから元の型に戻せるから戻しておいてほしい

743:デフォルトの名無しさん
23/02/24 20:09:57.73 X82MwmgO0.net
文字列検索をやめればいいんじゃね
参照箇所の検索でヒットするかしらんけど

744:デフォルトの名無しさん
23/02/24 20:21:44.92 OehCc09P0.net
型名で検索なんかしたことないわ
どんだけ長いメソッド書いてんだ

745:デフォルトの名無しさん
23/02/24 21:06:30.12 KCjnBZl8M.net
VSの便利な機能を知らないから型名で文字列検索してるんだろう
かわいそうに

746:デフォルトの名無しさん
23/02/24 22:42:06.35 xSIwGcb90.net
>>734
文字列検索をする必要がほとんどないのがVSのC#の大きなメリットなのに

747:デフォルトの名無しさん
23/02/25 01:56:33.91 WSoHMtrUd.net
C#の後にC++/CLRで作業するとめっちゃストレス

748:デフォルトの名無しさん
23/02/25 02:13:00.47 W+rTgIxF0.net
C++/CLRなんて必要な場面ある?

749:デフォルトの名無しさん
23/02/25 02:20:29.88 WSoHMtrUd.net
ない

750:デフォルトの名無しさん
23/02/25 02:57:31.15 i9tFdOEb0.net
C++/CLIじゃなくて?
CからC#を呼ぶためのラッパーを作るのに使ってる。
C→C++/CLI→C#
言語としてはカオスすぎると思う。

751:デフォルトの名無しさん
23/02/25 09:01:46.97 Qtv3l3QB0.net
managedな参照や名前空間、それにfinalizerなどが追加されたくらいで構文等も明解だと思うがなあ。
カオスというなら当のC++自身の方がよっぽどカオス。

752:デフォルトの名無しさん
23/02/25 10:18:33.21 5xbVML89M.net
カオスと言うか黒魔術みたいなレベルだし呪文を唱えさせられるのがキモイ

753:デフォルトの名無しさん
23/02/25 10:32:27.39 Qtv3l3QB0.net
SFINAEとかADLとかまさに魔術だよなあ。

754:デフォルトの名無しさん
23/02/25 10:51:49.65 W+rTgIxF0.net
今時C・C++触りたくない
地雷原が多すぎる

755:デフォルトの名無しさん
23/02/25 12:12:03.26 o/Ym2CPC0.net
すごくスレチだけど聞いてみたい。
C・C++ の地雷ってどんなの?

756:デフォルトの名無しさん
23/02/25 12:30:25.26 i9tFdOEb0.net
>>747
メモリ範囲外アクセス

757:デフォルトの名無しさん
23/02/25 12:47:41.33 4hS8Efqpa.net
>>748
その辺なら以前に比べてだいぶマシになってるぞ
生の配列とポインタの代わりにVectorとか使えばいい

758:デフォルトの名無しさん
23/02/25 12:52:47.37 i9tFdOEb0.net
C言語「そんなものはない」

759:デフォルトの名無しさん
23/02/25 14:01:22.71 DPzAUzVtM.net
ほかにも標準と呼べるオープンなドキュメントが無い、環境依存、未定義動作の多さ、文字列操作の貧弱さなどクソ要素挙げるとキリがない
速度だけがメリットだな

760:デフォルトの名無しさん
23/02/25 14:03:00.56 xCsxsaHDp.net
ヌルポ

761:デフォルトの名無しさん
23/02/25 14:06:15.81 lQBV1xBt0.net
勉強すればするほどわからなくなる言語、c++

762:デフォルトの名無しさん
23/02/25 14:10:32.78 TtZ3k42Xp.net
テンプレート多用し出した辺りからおかしくなって
マネージド対応する頃には別言語になってた

763:デフォルトの名無しさん
23/02/25 14:21:54.79 mMXgXQi10.net
子どもの頃にN88から始まってC++/Win32APIでもしっかりもの作って
自分のHP作るのにJavaScriptやPHP書いて、そんで近年はC#してるから
まぁ型宣言あるのも無いのもどっちも受け入れられてるなw

764:デフォルトの名無しさん
23/02/25 14:38:42.47 dAzPm75C0.net
そんなことしなくても大半のやつは受け入れられてる

765:デフォルトの名無しさん
23/02/25 15:40:00.51 wyXcT7/f0.net
読むのにはあったほうがいいのは確実で右クリックメニューで一発変換なので
気がついたら俺がvar消しとくから大丈夫だ

766:デフォルトの名無しさん
23/02/25 16:54:24.41 KRwgMm4X0.net
csprojのImport要素で読み込んだmsbuildタスクの.targetsにて$(IntermediateOutputPath)が機能せずnullなのですが
読み込み元プロジェクトのIntermediateOutputPathを得ることは不可能なのでしょうか?

767:デフォルトの名無しさん
23/02/26 08:45:30.70 2htEN4+y0.net
>>757
何で読むのに型が必要なの?
VSでカーソル合わせりゃ型名分かるやん
VS単体でできたか忘れたけどReShaper使うと型名をグレーで表示してくれるのもあるやん
何よりvarから変換してそのままバージョン管理にコミットしてプッシュするん?
無駄に色んな箇所の修正履歴付いて糞面倒

やっぱり底辺無能プログラマって考え足りないんだなw

768:デフォルトの名無しさん
23/02/26 08:49:23.47 2htEN4+y0.net
別にやるなとは言わんけどある程度状況が落ち着いてから一気にリファクタリングしろよ
そもそもチームやプロジェクトでコーディング規


769:則決めておいてコードフォーマット共有しておいて変換される様にしておけば良い チームやプロジェクトでvar使うルールなら黙って従え 自分の好きなルールにしたけりゃ出世しろ



770:デフォルトの名無しさん
23/02/26 10:18:52.53 PXNtu1caM.net
var使うなってルール聞いたことがない

771:デフォルトの名無しさん
23/02/26 10:29:02.26 OE3X2HvJ0.net
>>759
逆に言うとカーソル合わせないと分かんないじゃん

772:デフォルトの名無しさん
23/02/26 10:30:46.28 OE3X2HvJ0.net
カーソル合わせないと分かんないコードと
見ればわかるコードと
どっちがいいか議論の余地もないですね

773:デフォルトの名無しさん
23/02/26 10:36:48.50 PXNtu1caM.net
>>763
馬鹿が偉そうに

774:デフォルトの名無しさん
23/02/26 10:37:01.47 OE3X2HvJ0.net
URLリンク(learn.microsoft.com)
なんかマイクロソフトさんも
お前らの言う使い方は非推奨じゃない?

775:デフォルトの名無しさん
23/02/26 10:37:53.33 PXNtu1caM.net
そもそもが厳密に型がわからないとコードを理解できない人間がコード書くなと思うが

776:デフォルトの名無しさん
23/02/26 10:40:31.54 2htEN4+y0.net
>>763
だからReShaper使えばいいじゃん
そもそもコード追うのにVS使ってコードジャンプとかも使うじゃん
そうか!
無能だから紙に印刷したコード見てるわけか!
なるほど納得だよw

777:デフォルトの名無しさん
23/02/26 10:40:50.97 OE3X2HvJ0.net
まあ大御所様がループカウンタとか定数以外使ったらぶっ殺すぞって言ってるんだからそれで終わりよ

778:デフォルトの名無しさん
23/02/26 10:41:03.48 PXNtu1caM.net
varが出来た当時は自分も馬鹿だったからvarには否定的だったけど
今はvar使わない人間は真の馬鹿だと思ってる

779:デフォルトの名無しさん
23/02/26 10:45:38.22 2htEN4+y0.net
でも型名にしたところで分かるのは宣言の所やん
コードをスクロールして見ていってこの変数なんだっけってなったら結局カーソル合わせて確認するやん

そうか!
無能だから未だにハンガリアン記法で変数名付けてるんですね!
でもそうなるとvarでも良いんじゃ?
いやぁ無能の考えることは分かりませんなぁw

780:デフォルトの名無しさん
23/02/26 10:45:52.90 OE3X2HvJ0.net
またお前らに完全勝利をしてしまった

781:デフォルトの名無しさん
23/02/26 10:47:49.58 2htEN4+y0.net
アホすぎて勝負になってないw

782:デフォルトの名無しさん
23/02/26 10:48:44.93 OE3X2HvJ0.net
だって作ったマイクロソフトさんも勧めてない使い方してるのに何言ってるの?

783:デフォルトの名無しさん
23/02/26 10:52:33.04 PXNtu1caM.net
>>773
MSのコード見て見れば?
roslynだろうがcoreだろうがvar使ってるよ?

784:デフォルトの名無しさん
23/02/26 10:53:22.68 OE3X2HvJ0.net
>>774
そこ書いたやつがウンコだっただけよ

785:デフォルトの名無しさん
23/02/26 10:54:32.98 PXNtu1caM.net
>>775
使ってない人がウンコだと気が付けよ
新しい他の言語でもvar相当のものが実装されててみんな使ってる

786:デフォルトの名無しさん
23/02/26 10:55:34.64 PXNtu1caM.net
var相当のものを使わない派は多分全体の0.01%ぐらいの割合だよ

787:デフォルトの名無しさん
23/02/26 10:58:38.89 2htEN4+y0.net
ぶっちゃけどっちでも良い
varで書かれてようが型名だろうが読むのに困った事は無い
勿論どっちかに変換しなくてもだ

788:デフォルトの名無しさん
23/02/26 11:00:48.02 EH54EPWP0.net
スレチだけど、教えて。
>>773
そのマイクロソフトさんが勧めていない、ここで挙げられた var の使い方ってどういうのがあった?

789:デフォルトの名無しさん
23/02/26 11:37:49.57 xFOa2C1pp.net
varが便利だなぁって思うの
長ったらしいクラス名のオブジェクト使うときくらいかなぁ
後はC時代に生きた俺としては型名無しで受けるのは違和感しか無いし

790:デフォルトの名無しさん
23/02/26 11:38:46.95 2htEN4+y0.net
>>780
つまり老害w

791:デフォルトの名無しさん
23/02/26 11:44:29.82 JuHo9gXt0.net
>>773
MSのコード規則が世界の全てじゃねぇぞw

792:デフォルトの名無しさん
23/02/26 11:45:30.12 xFOa2C1pp.net
うおー、iPhoneじゃセミコロンが打てないw
コード書いてこんな場合は型名の方がいいよって書こうとしたのに
残念だ

793:デフォルトの名無しさん
23/02/26 11:48:22.16 2htEN4+y0.net
そもそもリンク貼られたコーディング規則にvarを使うなって記述は無い
勿論
>割り当ての右側から型が明らかではない場合,
>var を使用しないでください。
といった当たり前の注意は有る

794:デフォルトの名無しさん
23/02/26 11:49:42.82 2htEN4+y0.net
>>783
すまんが意味不明
アイポンだけどセミコロン打てるで?

795:デフォルトの名無しさん
23/02/26 11:55:53.77 xangEsOIp.net
そうだ、VBAのvariant導入しよう
何でも入れ放題、違う型にも再利用し放題だぞ

796:デフォルトの名無しさん
23/02/26 12:01:21.94 xFOa2C1pp.net
;あ、カナ変換モードだと無理なだけだったわ

797:デフォルトの名無しさん
23/02/26 12:04:16.19 xFOa2C1pp.net
その場でメソッドから戻り値受け取る様な場合にはvarで良いが
予め宣言しておく変数を使う場合は型名で宣言してるなぁ

798:デフォルトの名無しさん
23/02/26 12:19:06.70 uDw5JavV0.net
命名さえきちんとしてればvar使おうがどっちゃでも構わんよ
うちの会社では全面的にOKにしてる

799:デフォルトの名無しさん
23/02/26 12:21:39.64 H0yuRSQqp.net
初期化無し変数使わない人たち?

800:デフォルトの名無しさん
23/02/26 13:29:38.39 NMq20dGb0.net
>>786
勘弁してください

801:デフォルトの名無しさん
23/02/26 15:39:47.68 5M6WVcNga.net
>>788
初期化せず予め宣言すること自体ないわ

802:デフォルトの名無しさん
23/02/26 15:50:59.27 /EdsYwMi0.net
>>792 try-catchの外側で変数宣言しないの?



804:デフォルトの名無しさん
23/02/26 16:03:34.39 UDvE2DGT0.net
それこそ初期化してないとダメなやつでは?

805:デフォルトの名無しさん
23/02/26 16:05:18.21 5M6WVcNga.net
>>793
ああわかった
お前のメソッドは無駄に長いんだよ
そのブロック外に出せ

806:デフォルトの名無しさん
23/02/26 17:59:22.50 1pphtrpop.net
>>795
外に出しても同じじゃね?

807:デフォルトの名無しさん
23/02/26 18:15:27.22 CTUJHtcQ0.net
>>796
同じ?
いったい何をしようとしてんだ

808:デフォルトの名無しさん
23/02/26 18:27:05.38 PXNtu1caM.net
よくわからんけどこんな感じの話かな?
一般的な使い方
try{
 何らかのファイルを読み込んだりするメソッド()
}catch
上の初心者の使い方
べつの何らかのメソッド(){
try{
 File.ReadAllText()
}catch //もうここでキャッチしてる
}

809:デフォルトの名無しさん
23/02/26 18:35:34.01 1pphtrpop.net
varで宣言するか、型名で宣言するかの話な
string s;
swith(hove)
{
case 1:
s = “one”;
break;
case 2:
s = “two”;
以下略
みたいな時に、
string s;って書くか、var s = “”;みたいに書くか

810:デフォルトの名無しさん
23/02/26 18:37:30.50 2htEN4+y0.net
そういう事じゃなくてtryの中での何かしらの情報をcatchの中でも使いたいって事なんじゃね

811:デフォルトの名無しさん
23/02/26 18:41:55.62 kPCuIbSup.net
いや、一連の流れはvarを使うか型名を使うかの話なんだが?

812:デフォルトの名無しさん
23/02/26 18:45:14.91 PXNtu1caM.net
ダメな例外の使い方
Tekitou a = null;
try{
a=適当なメソッド();
} catch(略)|
return null;//もしくはエラーコードなんか返したりするw
}
return a;

813:デフォルトの名無しさん
23/02/26 18:59:07.89 PXNtu1caM.net
それでメソッドの戻り値がnullかどうか判定してると言う…
必要な場合もあるかもしれないけどよく考えてみて欲しい
var a=適当なメソッド();
a.何かする();
return a;
でtry-catchは呼び出し元で判定でいいんじゃないかと

814:デフォルトの名無しさん (ワッチョイ 6102-wWxq)
23/02/26 19:01:36.48 uDw5JavV0.net
Try系メソッドの存在の否定始まったな

815:デフォルトの名無しさん (オイコラミネオ MMad-W5vA)
23/02/26 19:03:07.43 PXNtu1caM.net
上の初心者は
Tekitou a = null;
がtryブロック前に必要だからvarじゃだめだって言ってるんだろ?

816:デフォルトの名無しさん (オイコラミネオ MMad-W5vA)
23/02/26 19:05:15.93 PXNtu1caM.net
>>804
違う
上位で捉えたら例外の意味が伝わるのにnull何かにして渡す意味はないよと
try-catchの場所を間違えてるよと

817:デフォルトの名無しさん (アウアウウー Sa39-hxGH)
23/02/26 19:08:43.27 6DyDqsNYa.net
だから何だ死ね。

818:デフォルトの名無しさん (ワッチョイ 6102-wWxq)
23/02/26 19:09:32.53 uDw5JavV0.net
例外の内容を精査する必要が無いなら、握りつぶす事はあり得る

819:デフォルトの名無しさん (オイコラミネオ MMad-W5vA)
23/02/26 19:20:26.09 PXNtu1caM.net
もし対応不能な例外なら
var result=何とかメソッド();
if(result is null)
{
console.writeline("原因はわからんけど失敗しました");
return ;
}

↓こうなったほうがいいんじゃないか?(個人の感想です)


try{
var result=何とかメソッド();

catch(適当)

console.writeline("ファイルがなかった");

catch(また適当)

console.writeline("ファイルのフォーマットが間違ってた");


820:デフォルトの名無しさん (アウアウウー Sa39-K1He)
23/02/26 19:31:21.12 jfiEDsdga.net
>>800
初期化してない可能性があるのに使えるわけないじゃん

821:デフォルトの名無しさん (ワッチョイ fd79-RFKS)
23/02/26 22:13:31.77 OE3X2HvJ0.net
センスゼロの奴に限って非推奨なことやりたがるってよくわかるな

822:デフォルトの名無しさん (ワッチョイ 897c-B+wy)
23/02/26 22:43:29.16 2htEN4+y0.net
>>810
話の流れが分かって無いアホw

823:デフォルトの名無しさん (ワッチョイ 6102-wWxq)
23/02/26 22:48:20.14 uDw5JavV0.net
話が完全に横道に逸れてて草

824:デフォルトの名無しさん (ワッチョイ eebc-PJrl)
23/02/26 22:53:18.80 EH54EPWP0.net
横道という�


825:ゥ、スレタイも >>1 も読めない奴らに草



826:デフォルトの名無しさん (ワッチョイ 6d07-K1He)
23/02/26 23:21:00.54 CTUJHtcQ0.net
>>812
話の流れをもうちょい前から読んで見ることだなw

827:デフォルトの名無しさん
23/02/27 20:12:03.56 Akgqa2X30.net
try-catchとか関係なくて
nullに初期化したいときにvarが使えないってだけの話だろ
varは型が推論できないとダメなんだからそういうもんだってだけ
変数をnullで初期化することの是非や例外の扱いは別の話

828:デフォルトの名無しさん (ワッチョイ fd79-sOXG)
23/02/27 21:56:17.35 egjSOww/0.net
初心者スレで非推奨のvarの使い方勧めるのやめてくださいね

829:デフォルトの名無しさん (オッペケ Sr75-W5vA)
23/02/27 22:29:07.67 JLUpdfoUr.net
どうしてもvarを使ってnullで初期化したいなら、たとえば
 var s = (string?)null;
でいちおう文法的にはいけるね

ローカル変数宣言はすべてvarで統一するようなコーディングスタイルを採用してるなら、
個人的にはちょっと賛同しがたいけど、そういうポリシーということでアリなのかもしれない

830:デフォルトの名無しさん (ワッチョイ ae68-ZYAP)
23/02/27 22:43:14.23 GQlYFKfY0.net
Cシャープ滅茶苦茶勉強して知識死ぬほどあるのに
競技用プログラミングではセンスある未経験に負けるのが悔しすぎて泣きたすぎる

831:デフォルトの名無しさん (ワッチョイ 6d07-K1He)
23/02/27 22:52:24.05 IwcHfuRb0.net
言語学者が文学で勝負すんな

832:デフォルトの名無しさん
23/02/28 07:11:14.63 3WmX3+jc0.net
(センスとか言ってる時点で知識量が足りねーんだよ)

833:デフォルトの名無しさん
23/02/28 14:16:08.99 y7elf6D90.net
ufcpp見るとだいたいvar使ってればOKでコードが読みづらくなるならvar以前の問題が何かあると書いてる
まったくもってその通り

834:デフォルトの名無しさん
23/02/28 17:33:08.16 ovA6LiBhM.net
>>822
なんか根拠あるの?

835:デフォルトの名無しさん
23/02/28 17:50:10.38 qEty2QKoa.net
経験則

836:デフォルトの名無しさん
23/02/28 17:50:55.08 qEty2QKoa.net
ufcppより経験を積んでる自信があるなら論破してこい

837:デフォルトの名無しさん
23/02/28 19:28:39.24 50ahu/qg0.net
そもそもvarは、コードを書く人のための機能であって
コードを読む人のための機能ではないと思うぞ

838:デフォルトの名無しさん
23/02/28 19:29:40.86 M/injSE6p.net
三文字打てば良い楽々コーディングよな

839:デフォルトの名無しさん
23/02/28 19:53:22.92 It5dm/K20.net
>>825
そこマイクロソフトよりデカい?

840:デフォルトの名無しさん
23/02/28 20:03:37.91 qEty2QKoa.net
だからそう言ってこいよ

841:デフォルトの名無しさん
23/02/28 20:24:10.06 gde+l/Fdp.net
VisualStudioは、 varを使うか型名を使うか、どっちにしても余計なお節介出して来るんだよなぁ

842:デフォルトの名無しさん
23/02/28 20:36:45.66 0m/LxTGDM.net
ツールに振り回されてんの?
人として情けないね

843:デフォルトの名無しさん
23/02/28 20:44:18.58 kJd3bldF0.net
何言ってんだコイツ。

844:デフォルトの名無しさん
23/02/28 22:14:36.56 QptBiF/w0.net
ただでさえプログラムは面倒くさい事のオンパレードなのに、var位使って行こうぜ

845:デフォルトの名無しさん
23/02/28 23:33:21.23 N7XzWDMw0.net
>>822
完全に同意
否定人のコーディング見てみたい

846:デフォルトの名無しさん
23/03/01 01:34:59.57 VyWbviLu0.net
LINQの場合、var書かないわけにもいかないし、その時だけだと統一感が悪い。

847:デフォルトの名無しさん
23/03/01 07:54:50.21 qaR+V2vd0.net
>>835
お前はお前で匿名クラスなんて使ってんじゃねえよ
上位互換のタプルができて何年経つんだ

848:デフォルトの名無しさん
23/03/01 08:07:51.48 tbGPzE+Ma.net
タプルが上位互換とは

849:デフォルトの名無しさん
23/03/01 08:44:56.23 c5msHDS5a.net
varを使ったほうが楽じゃん

850:デフォルトの名無しさん
23/03/01 09:03:00.15 qaR+V2vd0.net
>>837
知らんのか

851:デフォルトの名無しさん
23/03/01 10:03:28.25 sgVp+QOv0.net
Item1とかItem2とか、どれが何のためのデータなのか解らんようなの使う気にならんな……

852:デフォルトの名無しさん (アウアウウー Sa39-K1He)
23/03/01 10:25:21.30 zgl5hYJEa.net
>>840
名前つけられるの知らんのか

853:デフォルトの名無しさん (ササクッテロル Sp75-BJMC)
23/03/01 10:28:16.33 NWENc0Hxp.net
メソッドの引数のネーミング、考えるの面倒だよな?

854:デフォルトの名無しさん (アウアウウー Sa39-K1He)
23/03/01 10:45:11.60 zgl5hYJEa.net
命名が難しいのはだいたい設計が悪い
ローカル変数ならともかく引数は明確な役割があるはず

855:デフォルトの名無しさん (ササクッテロル Sp75-BJMC)
23/03/01 10:46:22.97 iOTs8eHzp.net
>>843
だからそのprivateメソッドの方が尚更面倒なんよ

856:デフォルトの名無しさん (アウアウウー Sa39-K1He)
23/03/01 10:48:50.55 zgl5hYJEa.net
だからそれは変な切り出し方をしてるからだよ

857:デフォルトの名無しさん (ササクッテロル Sp75-BJMC)
23/03/01 10:51:27.66 iOTs8eHzp.net
ローマ字つづりでいいかなぁ?

858:デフォルトの名無しさん (ワッチョイ 05e5-wWxq)
23/03/01 10:54:17.84 sgVp+QOv0.net
>>841
そっちのタプルは構造体やん

859:デフォルトの名無しさん
23/03/01 11:44:56.01 zgl5hYJEa.net
>>847
構造体だからパフォーマンスが高いんだろw

860:デフォルトの名無しさん
23/03/01 12:27:27.77 sgVp+QOv0.net
俺、パフォーマンスの話なんかしとらんからなぁ
まぁ、ValueTupleも場合によって使うけど、だいたい即値分解してしまうからあんまりメンバ名付けたことないな

861:デフォルトの名無しさん
23/03/01 12:51:38.98 iHuCndf+a.net
>>849
じゃあ構造体で何が悪い?

862:デフォルトの名無しさん
23/03/01 14:00:57.77 svqy3iKu0.net
なんでこの人たちこんなイライラしてるの

863:デフォルトの名無しさん
23/03/01 15:07:47.34 qaR+V2vd0.net
イライラしたやつ出てきたなw

864:デフォルトの名無しさん
23/03/01 17:45:05.94 LI8bJI1D0.net
正規表現で、一致した文字列のうちの一部だけを変更するにはどうすればいいでしょうか。
例えば、
\[.+\|.+\]
というパターンでマッチングして、マッチした値の[と|と]を置き換えたいです。
↓例
入力:[あ|あいうえお]
置換後:<あ-あいうえお>
※[を<に、|を-に、]を>に置き換えています。

865:デフォルトの名無しさん
23/03/01 17:49:47.98 81D5Vj700.net
\[(.+)\|(.+)\]
<$1-$2>
これくらいハゲでもわかる

866:デフォルトの名無しさん
23/03/01 17:55:01.04 LI8bJI1D0.net
>>854
ありがとうございます!!(>▽<)

867:デフォルトの名無しさん
23/03/01 19:34:04.22 LQeRVcKu0.net
また髪の話してる・・・

868:デフォルトの名無しさん
23/03/02 01:06:05.40 pwr4e0eZ0.net
ModernWPF UIのコンテントダイアログでプログレスダイアログをいい感じにMVVMで実装する方法ないかな?
やりたいこと:
これをProgressDialog.xamlで定義してEventAggregatorでイベント飛ばしてプログレスバーとテキストを更新
URLリンク(github.com)
令和にもなって、IProgressDialogやTaskDialogというか別ウィンドウ出すのはなんかダサいし。

869:デフォルトの名無しさん
23/03/02 01:40:05.17 W+Au/SFm0.net
>>857
WPF(.NET, WinUI) GUIプログラミング Part31
スレリンク(tech板)
ここで質問の方が良くないか?

870:デフォルトの名無しさん
23/03/02 09:19:55.51 pwr4e0eZ0.net
>>858
OK、そっちで質問してみる。
マルチポストになっちゃうが。

871:デフォルトの名無しさん
23/03/02 09:20:53.64 2uS/Yj6n0.net
誘導されてきた言えば問題ないやろ

872:デフォルトの名無しさん
23/03/02 09:51:09.87 TSzVcIRer.net
>>1にも
>内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
とあるしね

873:デフォルトの名無しさん
23/03/04 22:44:54.38 MWrxXT5A0.net
あるクラスの中に定数やenumを定義したとき、そのクラスのインスタンスを複数個生成したら
全く同じ定義がそれぞれのインスタンスに含まれてしまうのでしょうか?
もしそうでも別に実害は無いですが、なんか気持ち悪いです。

874:デフォルトの名無しさん
23/03/04 22:52:26.87 XS/j5rrj0.net
アホw
出来る出来ないの話と
実際にやるやらないは別
気持ち悪いと思うならやならければ良い
それがクラス設計ってもんやろ

875:デフォルトの名無しさん
23/03/04 23:10:17.51 MWrxXT5A0.net
>>863
では、862の現象が事実だと仮定して、それを回避するには
例えばCarState列挙型を定義したいときは、Carクラスとは別にクラスを作ってそこに定義するしかないのでしょうか?

876:デフォルトの名無しさん
23/03/04 23:31:39.37 8JZeKg+Q0.net
ただの定義にインスタンスもなにもないよ
気にする必要は無い

877:デフォルトの名無しさん
23/03/05 00:06:21.53 jHbb3BElM.net
>>862
含まれない

878:デフォルトの名無しさん
23/03/05 00:18:49.48 ebD0iZh90.net
>>865
>>866
ありがとうございます。

879:デフォルトの名無しさん
23/03/05 01:59:20.41 Q+Z0cI/30.net
そこらのSEよりC#のコンパイラのほうが何倍も賢い

880:デフォルトの名無しさん
23/03/05 07:49:42.36 eEJXh7qx0.net
>>864
何で列挙型をクラスの中に作るって発想しかないの?
CarクラスとCarState列挙型を作るだけやろw
アホw

881:デフォルトの名無しさん
23/03/05 07:56:16.98 ZL6T0NVj0.net
>>862
constはクラスの中に入れんとダメだが、enumはclassの中じゃなくても定義できるやで

882:デフォルトの名無しさん
23/03/05 08:19:17.85 eEJXh7qx0.net
結局は基礎が出来てないだけかw
出来る事が分かってなきゃそうなるわな
特に基礎レベルで分かってなきゃ尚更

883:デフォルトの名無しさん
23/03/05 08:27:55.53 XuMWIxYS0.net
constやenumがビルドしたらどうなるのかとか、classの実体がどうなるのかとか
そういうのちゃんと勉強した方がいいね

884:デフォルトの名無しさん
23/03/05 08:59:55.66 4pO1EQ6ma.net
>>869
それは別にいいだろ
作れるようになってんだから
クラスの中に入れちゃいけない縛りだとprivateなenum作りたいときどうすんの

885:デフォルトの名無しさん
23/03/05 09:22:43.13 eEJXh7qx0.net
>>873
だから“しか”って言ってんだろ

886:デフォルトの名無しさん
23/03/05 09:24:43.12 eEJXh7qx0.net
こういう文章の意味が分からずに突っ込んで来る連中って本当にプログラム書けてるの?
プログラム“言語”だぞ

887:デフォルトの名無しさん
23/03/05 09:25:19.90 4pO1EQ6ma.net
>>874
逆になぜそこで「しか」と思っちゃったんだよ

888:デフォルトの名無しさん
23/03/05 09:26:42.55 4pO1EQ6ma.net
>>875
お前昨日のやつだろ
自分の言葉がどれだけ怪しいか指摘されたことないのか?
煽り抜きで見るからにアスペだぞ
指摘されても自分で否定して忘れてるならこれからは少し聞く耳を持ってみろ

889:デフォルトの名無しさん
23/03/05 09:32:14.41 eEJXh7qx0.net
昨日のやつ?
俺はDBのPKフィールドはGUID使えばリスク減るって言ってた奴だよ
別人と勘違いすんじゃねえよ
文言で区別付くだろ
これだから無能はw

890:デフォルトの名無しさん
23/03/05 09:34:22.04 VNYPZIzLd.net
相手の質問に煽るだけって時点でね…
そもそも質問も答えもまだ理解できてないんじゃないか

891:デフォルトの名無しさん
23/03/05 09:39:07.78 HVqlejWD0.net
>>878
そっちの無能かw
どっちにしろ無能じゃねーかw

892:デフォルトの名無しさん
23/03/05 09:47:05.28 eEJXh7qx0.net
は?
お前ら全員が無能だって証明されて終わったやんw
何言ってんだ無能w

893:デフォルトの名無しさん
23/03/05 09:55:22.67 4pO1EQ6ma.net
こんな典型的なアスペはなかなかいないな

894:デフォルトの名無しさん (ワッチョイ 8b7b-RSMl)
23/03/05 10:35:18.92 tq7yfQYd0.net
>>870
learn.microsoftなど見るとこれが一番適切な回答っぽいな。ただキーワードが分かっているものは自分で検索したほうが質問するよりずっと早い
enum
URLリンク(learn.microsoft.com)
const
URLリンク(learn.microsoft.com)

あとNG推奨
ワッチョイ 417c-1tkp
アウアウウー Sa1d-/UsF
ワッチョイ c907-/UsF

895:デフォルトの名無しさん (ワッチョイ c907-/UsF)
23/03/05 10:38:45.37 HVqlejWD0.net
>>883
どこを見て有効だと思ったんだw
NG推奨はお前だアスペ

896:デフォルトの名無しさん (スップ Sd73-Qpn1)
23/03/05 11:33:39.09 LimRRCEtd.net
前回は流してたんだがGUIDをキーにするとした場合、
少ない時間で大量にデータが登録される際の並び順ってどうやって保証するのかね
(INSERT~SELECTで複数件登録するとか)
そういう時は使わないって回答なんだろうか

897:デフォルトの名無しさん (ワッチョイ 4110-W5Lg)
23/03/05 12:11:21.86 V5cM5Nk90.net
IDENTITYの自動採番だってそういうの保証はされないんじゃね?
何らかの順序情報が必要ならそれを持たせるようにしないと。

898:デフォルトの名無しさん (ブーイモ MMeb-YseW)
23/03/05 15:46:52.04 CbYCfeUhM.net
>>886
一括の複数インサート時の順序は保証されてる

複数テーブルにまたがる複数のトランザクションならインサート順とコミット順が前後する可能性はあるけどインサート順とidentityの大小は基本的に保証されてる
保証されないのはIDENDITY_INSERT OFFのような特殊な使い方をした時だけ

ついでに言うとコミット順で完全にソートできるようにするには1つのトランザクションがコミットするまで次のトランザクションを待たせる作りが必要になるので一般的にはやめたほうがいいやり方

899:デフォルトの名無しさん (スップ Sd73-Qpn1)
23/03/05 16:11:18.22 LimRRCEtd.net
普通は1トランザクション内で保証されていればいいと思ってるけど
仕様によっては複数トランザクションでも保証しないとだめなケースもあるとしたらそうかもしれないね
スレチだったわすまん

900:デフォルトの名無しさん
23/03/05 16:34:12.19 wm/Rzcr70.net
GUIDはメリットがまったくないわけじゃないが、言うほど強力なものでもない
何しろ彼でさえ理由を具体的に説明できない程度だからね
で、問題はユニークであることが完全に保証されないからそれなりのケアが必須だってことだな

901:デフォルトの名無しさん
23/03/05 16:37:17.48 V5cM5Nk90.net
>>887
だから他のトランザクションから見てID列の値が単調増加に見えるのはdirty-readの場合だけじゃん。
一般的なread-commited以上なら最大IDより小さなIDが後から挿入されたように見えることもあるわけで。

902:デフォルトの名無しさん
23/03/05 17:55:09.83 7ksBORrg0.net
すまんが、ASP.Net Coreに用意されてる3(4?)つのフレームワークでさあ
ログインページを各言語に対応させるにはどうすればよかんべ?
他の自分で作ったページを多言語化する方法は乗ってるけど、フレームワークで用意されてるログインページ等はどうすんじゃい???
URLリンク(learn.microsoft.com)

903:デフォルトの名無しさん
23/03/05 18:35:43.98 Vq0cOu8uM.net
>>890
何が「だから」なのかよくわからない
他のトランザクションから見て最大IDより小さなIDが後から挿入されたように見えて何か問題あるの?
>>886に書いてある何らかの順序情報を持たせたとしてもコミット順じゃなくインサート順だから全く同じことなんだが?

904:デフォルトの名無しさん
23/03/05 22:00:17.61 V5cM5Nk90.net
>>892
>他のトランザクションから見て最大IDより小さなIDが後から挿入されたように見えて何か問題あるの?
そこは外のトランザクションから見た場合に挿入順序とIDの増加順が一致することが保証されないという
事実を書いただけだが。
それで困るかどうかは要件次第。
たとえば定期的な処理で前回の処理以降に追加されたレコードを求めるのに前回のmax(ID)を使うとか、
そういう用途には使えない。

905:デフォルトの名無しさん
23/03/05 22:13:31.94 V5cM5Nk90.net
いや、明示的にテーブルロックとるかrepeatable-read以上で最初にmax(ID)取得してしまえばいいか?
どっちにしろそのへん意識する必要がある。

906:デフォルトの名無しさん
23/03/05 23:19:20.27 6Aoy6FGpM.net
>>894
分離レベルで対応するならシリアライザブルじゃないと防げないんじゃないかな?
でも現実的にはテーブルロックやシリアライザブルは同時実行性能を極端に落とすので
挿入日時のようなデータを使って締め前に開始したトランザクションが確実にタイムアウトしてるようなタイミングで締め前に挿入されたデータだけを処理したり
処理ステータスを示すカラムを作って対応する
バッチ処理の頻度や重要度やエラー時に必要な対応によって実装を選択することになる

907:デフォルトの名無しさん
23/03/05 23:30:28.82 wm/Rzcr70.net
結局レコードをトランザクションに書き込むタイミングでIDは発行されるしタイムスタンプもその時間となる
コミットしたタイミングなどDBに記録することは不可能だし一体何を問題にしているのやら

908:デフォルトの名無しさん
23/03/05 23:41:58.79 NuUQDnR4M.net
GUIDとの比較で重要なのは後続のバッチ処理みたいなのがあったときに
IDENTITYの場合はほぼシーケンシャルアクセスで処理できるがGUIDだと完全にランダムアクセスになるので桁違いの遅さになる
外部キーなんかを含めて1ページに収まるレコード数が減るのとランダムアクセスで性能が極端に悪化する場合があるのがGUIDの一番のデメリット
NEWSEQUENTIALID()でシーケンシャルなGUIDも作れるけど分散環境でマージが必要な状況でない限りIDENTITYに対するメリットがない
他にはULID使う方法なんかもあるけどやっぱりメリットデメリットがあるので当たり前だけど用途に合わせて使い分けるもの

909:デフォルトの名無しさん
23/03/05 23:43:48.09 V5cM5Nk90.net
>>885の言うような順序の保証は単なるIDENTITY任せじゃダメな場合があるってこと。

910:デフォルトの名無しさん
23/03/05 23:54:52.18 wm/Rzcr70.net
>>898
IDの発行と書き込み時のタイムスタンプはトランザクションに書き込んだタイミングで同時に行われるから
結局IDとタイムスタンプの順番はおなじになるんじゃね?
コミットのタイミングなど何処にも記録されない

911:デフォルトの名無しさん
23/03/06 00:04:07.46 +8ntKfDE0.net
トランザクションの外から見た場合、タイムスタンプが古いレコードが後から現れたりするのは変わらん。

912:デフォルトの名無しさん
23/03/06 00:47:16.07 ai8Q1Y+e0.net
>>887
>インサート順とコミット順が前後する可能性はあるけどインサート順とidentityの大小は基本的に保証されてる
インサート順ってなんのことを言ってるの?
まさかSQLの発行タイミングのことをいってるのか?

913:デフォルトの名無しさん
23/03/06 08:34:46.51 WDk1SNWF0.net
また始まったのか・・・

914:デフォルトの名無しさん
23/03/06 08:41:17.38 jJIeXpQ30.net
何度スレチだと言われても耳を貸さない連中だから放っておくしかないべ

915:デフォルトの名無しさん
23/03/06 09:01:59.17 Qy0wg21h0.net
ニートだからスレタイ読めないのか、スレタイ読めないからニートなのか、それが問題だ!

916:デフォルトの名無しさん
23/03/07 16:27:16.46 R6IzsuUJ0.net
Blazor Desktop でアプリ作る場合、JS 使うのって邪道ですか?
普通はどうなんでしょうか?

917:デフォルトの名無しさん
23/03/07 16:29:37.59 nGiwAbPE0.net
>>905
邪道というより仮想DOMがよくわかってないと難しいぞ

918:デフォルトの名無しさん
23/03/07 21:34:13.24 eLRrbAoH0.net
>>905
別に邪道じゃないよ
猫ジョーカーもPrism.js使ってた

919:デフォルトの名無しさん
23/03/07 22:25:01.39 /W+QRqxd0.net
コントロールのプロパティをVisual Studioのプロパティからいじるのと、
コードに直接記載するのはどっちがベストプラクティスでしょうか?

920:デフォルトの名無しさん
23/03/07 23:03:26.48 iHhQsjAZ0.net
>>908
好きなほうでいいよ
自動生成か自分で記述するかは些細な違い
コメントも残したいなら当然、load以降のタイミングだね

921:905
23/03/08 00:27:21.36 OaTx32y+0.net
>>906-907
ありがとうございます。
今既に使ってるんですが、後になって「JS使わない為のBlazorだろ」とか「JSなしで出来ねーのかよ」
とかいう謎のイチャモン言われるのがちょっと怖かったのです。

922:デフォルトの名無しさん
23/03/08 07:00:30.67 +lL6bJso0.net
Load以降じゃなくてもコンストラクタでも良くない?

923:デフォルトの名無しさん
23/03/08 07:59:37.27 UYleOs8I0.net
>>910
マウイ君みたいなキチガイは無視でいい

924:デフォルトの名無しさん
23/03/08 08:08:55.61 dTyeizIq0.net
>>908
デザイン画面との差異が発生しにくいから
コードじゃないと設定できない事以外は基本的にはフォームデザイナでやってる
コードでやられると、一々実行して確認しないといけないし
人によって書き方・書く場所違ったりして追うのが邪魔くさい

925:デフォルトの名無しさん
23/03/08 08:51:11.40 qdKF3wc3d.net
フォームデザイナは良いんだけど、変更値をコードに出力する方法あるのかな
パラメーターシート作る時毎回困る

926:デフォルトの名無しさん
23/03/08 09:11:44.28 h0XeijSda.net
>>914
designer.cs

927:デフォルトの名無しさん
23/03/08 09:16:43.12 jVki9SUw0.net
昨日一日、メソッドが動かなくて悪戦苦闘してたが
単に、メソッドを割り当ててたボタンのクリックイベントが
なぜか外れてただけだった!
くそ!!!!

928:デフォルトの名無しさん
23/03/08 09:22:20.21 h0XeijSda.net
>>916
なぜ外れたかはともかくなんでそれで一日悪戦苦闘することになるんだ?
真っ先にイベントハンドラにブレークポイント張らないか?
それで呼ばれなかった場合Shift+F12で一発でわかるだろ

929:デフォルトの名無しさん
23/03/08 09:50:33.13 NmLqgG0dM.net
>>914
デザイナで設定した値全部ドキュメントに出力すんの?不毛すぎる
ドキュメントから初期化メソッドのソース生成するならまだ分かるが

930:デフォルトの名無しさん
23/03/08 10:51:13.94 jVki9SUw0.net
>>917
デバッガの見方がいまいちよくわかってないからなwww
分かりやすいサイトあったら教えてくれ
メソッドのケツで止まってるような表示だったから
中身ばかり見てた
結局、関係するところ全削除して
ボタンを配置しなおしてクリックイベント設定したら
最初のメソッドで動いた

931:デフォルトの名無しさん
23/03/08 12:46:01.79 qdKF3wc3d.net
>>918
既定値から変更した箇所って原則全て網羅してパラメーターシートに出してるけど
これ仕事だと普通じゃないの?
不毛なの?

932:デフォルトの名無しさん
23/03/08 12:48:38.98 qdKF3wc3d.net
>>915
これにコードとして出力されるのね
理解した

933:デフォルトの名無しさん
23/03/08 13:11:31.27 /RllHwwua.net
>>920
普通ではないし意味もわからんがそうすることになってるなら仕方ないな

934:デフォルトの名無しさん
23/03/08 13:13:09.06 /RllHwwua.net
もし普通ならもっと簡単にできる仕組みが一般に広まってないとおかしい

935:デフォルトの名無しさん
23/03/08 14:24:27.05 6WeulyynM.net
>>920
普通じゃない
むしろ何に使うんだ?

936:デフォルトの名無しさん
23/03/08 14:52:43.10 iEMOw9f1M.net
お客様に見せつけてお金を貰います

937:デフォルトの名無しさん
23/03/08 17:00:31.74 VS7v+oF80.net
しかしchatgptやべーなー…
ちょっと前ならここで聞くか迷うような質問がガンガン出来てしまうしかなり詳しい回答が返ってくる
勉強の補助として使うには最高だわ

938:デフォルトの名無しさん
23/03/08 17:02:00.64 /RllHwwua.net
マジかよ
信じるのかあれを

939:デフォルトの名無しさん
23/03/08 17:07:23.70 i5ZyQ2rsM.net
あいつここの住人と同じで息するように嘘つくぞ
しかも2021年までのデータしか無いんだろ?
最新の内容は無理ぽ

940:デフォルトの名無しさん
23/03/08 17:21:25.63 UUazuFXC0.net
出鱈目でも自信満々にそれっぽく説明してくるからな
知識が無いと嘘なのか判断出来ないから質が悪い

941:デフォルトの名無しさん
23/03/08 17:53:41.74 KzA+PBQYa.net
スシロー・ペロペロ法を用いて平方根を導出するコードをC#で作成せよ。ただしバカッター係数は3.0とする。
以下はC#でのスシロー・ペロペロ法を用いた平方根の計算の例です。バカッター係数は3.0とし、入力値はdouble型とします。
csharpCopy code
using System; class MainClass { public static void Main (string[] args) { Console.Write("Enter a number: "); double num = Convert.ToDouble(Console.ReadLine()); double guess = num / 2.0; // 初期値をnumの半分に設定 double error = num * 0.001; // 許容誤差はnumの0.1% double diff = 1.0; // 初期値は適当な値 while (diff > error) { double prevGuess = guess; // 前回の推定値を保存 guess = (guess + num / guess) / 2.0; // 新しい推定値を計算 guess = (3.0 * guess - prevGuess) / 2.0; // バカッター係数を適用 diff = Math.Abs(guess - prevGuess); // 推定値の変化量を計算 } Console.WriteLine("Square root of " + num + " is " + guess); } }
上記のコードでは、ユーザーに数値を入力してもらい、その平方根を求めます。最初の推定値は入力値の半分に設定し、許容誤差を入力値の0.1%とします。バカッター係数を適用するため、スシロー・ペロペロ法の通常の更新式の前に、前回の推定値と現在の推定値の重み付き平均を求めます。そして、推定値の変化量が許容誤差以下になるまで、この更新式を繰り返します。最終的に求められた平方根を出力します。
ChatGPT Feb 13 Version. Free Research Preview. Our goal is to make AI systems more natural and safe to interact with. Your feedback will help us improve.

942:デフォルトの名無しさん
23/03/08 17:58:25.85 KzA+PBQYa.net
ChatGPTすげーな

943:デフォルトの名無しさん
23/03/08 18:11:57.15 KzA+PBQYa.net
スシロー法(Suzuki-Roiter Algorithm)は、平方根を求めるアルゴリズムの一種です。このアルゴリズムは、ニュートン法や二分法などの他の平方根アルゴリズムに比べ、比較的単純であり、また高速なアルゴリズムの一つです。
スシロー法では、次のような手順で平方根を求めます。
求めたい数値xと、初期値aを設定します。
aを用いて、次の式によりbを求めます。b = (a + x / a) / 2
aとbの差を求め、ある閾値(例えば、0.0001)以下であれば、bを平方根として返します。差が閾値よりも大きい場合は、bを新たな初期値として、ステップ2に戻ります。
以下は、C#でスシロー法を実装した例です。バカッター係数は、コード内のコメントに記載されています。

944:デフォルトの名無しさん (ワッチョイ 41da-zdzo)
23/03/09 03:15:28.74 CHgoITyz0.net
すまん、誰か知ってたら教えて。
ASP.NET CoreのIHostedServiceを実装したバックグラウンドサービスで、
ef.coreのDbContextをコンストラクタでDIした。

ローカルPC上の開発環境では問題なく動いてしまう。
ローカルで動いたのでAWSなどのクラウド上にデプロイすると
Error while validating the service descriptor 'ServiceType: Microsoft.Extensions.Hosting.IHostedService Lifetime: Singleton ImplementationType:~
Cannot consume scoped service 'hoge.DbContext' from singleton 'Microsoft.Extensions.Hosting.IHostedService'.
とエラーが出て起動できない。

つまりIHostedServiceはsingletonでef.coreのDbContextはScopeServiceだからDI出来んよということだと思うだけど、
じゃぁなぜローカルでは動いてしまうんでしょう?

C#と関係ないかもだけど、適切なスレが見つからなくて。。

945:デフォルトの名無しさん
23/03/09 07:31:12.85 Azdv+gVA0.net
お前マウイだろ

946:デフォルトの名無しさん
23/03/09 12:24:29.91 0FhUXViP0.net
違う環境で動かないのをなぜ、ときかれても
環境が違うから
としか答えようがないわけだが

947:デフォルトの名無しさん
23/03/10 10:06:26.28 eWY0TFlg0.net
またボタンのクリックイベントが勝手に外れたよ



948: しかも二つ同時に デザイナーが悪いのか さらにその裏で何か悪さしてるのか



949:デフォルトの名無しさん
23/03/10 10:09:15.50 cbogJmpl0.net
お前が悪いんだよw

950:デフォルトの名無しさん
23/03/10 10:10:11.36 GTZI+M+4p.net
バージョン管理ツールの使い方を間違えてる奴が居るんだろ
旧バージョンからの修正を上書き更新する様な奴が

951:デフォルトの名無しさん
23/03/10 18:24:12.28 xFwaknBvM.net
>>936
入門1週間~1か月あるあるだな
過去に誰もが通る道じゃないかな
答えは操作を間違ってるから
ボタンをコピペするとイベントは付かない
同様にカットアンドペーストしても付かない
ボタンを他のページなどに移動させる際にカットアンドペーストを使うとそういう状態になる
どこかにいったんドラッグ移動させてから再度ドラッグ移動させるとうまくいくよ

952:デフォルトの名無しさん
23/03/12 09:27:27.50 TpUonps10.net
FontDialogで既定のフォントを指定するのに
fontdialog.Font = myFont のようにするだけではダメで
結局インストールされているフォント全部とmyFont.Nameを比較して一致するものを探した

953:デフォルトの名無しさん
23/03/15 23:56:35.07 Z/0CGH7g0.net
webアプリを作ってみようといくつかの記事を読んでみるとよくコントローラークラスなるものを見かけます
UIとオブジェクトを紐付ける役割というのはぼんやりとイメージは理解できました
全然知見が無いのですがMVCパターンを用いた開発が一般的なのでしょうか?

954:デフォルトの名無しさん
23/03/16 07:34:34.54 ROTa9WZ40.net
一昔前はそうだった。
今は、UI側はAngularやらReactやらで作る
バックエンドのASP.NET CoreはUIからのリクエスト(ほぼJSONオンリー)を受け取って、結果をJSONで返すのみ。
あえて言うならMVCだけどVの部分が別世界で進化した結果、MicrosoftのRazorビューエンジンがほぼ使われていない感じ

955:デフォルトの名無しさん
23/03/18 06:09:34.00 eIMKVM/V0.net
Blazorの、
1. bind-value:set と bind:set の違いを教えて下さい。
2. bind-value:get と bind:get の違いを教えて下さい。
-value があってもなくても普通に動いてしまうので、違いが判らないです・・・

956:デフォルトの名無しさん (ワッチョイ e15f-ny0K)
23/03/19 02:39:15.79 OF2pFVcA0.net
rem #ignore thumbnails created by windows
rem #Ignore files build by Visual Studio
rem --------------------------------------
rem *.exe
rem --------------------------------------
del /s Thumbs.db
del /s *.obj
del /s *.pdb
del /s *.user

957:デフォルトの名無しさん
23/03/21 00:50:51.05 Bhi15WWz0.net
MAUIの場合って、XAMLがどうC#に変換されたかってどこ見るの?
objフォルダを見ても、それっぽいファイルなさそうに見えるんだけど・・・・

958:デフォルトの名無しさん
23/03/21 03:41:54.37 rEPYZ+tza.net
>>941
Ruby on Rails の勉強方法なら、以下に書いた
★★Java質問・相談スレッド184★★
スレリンク(tech板:174番)
YouTube で有名な雑食系エンジニア・KENTA の初心者向けRailsサロンが有名。
学校は、Rails専業のRUNTEQ、東京フリーランスのデイトラなど多数ある
Rails チュートリアルのRails 5 なら、無料で読める。
他には、黒田努の3冊の本もある
YouTubeのDeanin

959:デフォルトの名無しさん
23/03/23 22:03:01.14 ryYHyvf60.net
すまんが、このカッコだらけの行ってC#の文法的にはどういう意味なの???
> protected override void OnAppearing()
> {
> ((Models.AllNotes)BindingContext).LoadNotes(); //この行ってどういう意味なの!?!?
> }
URLリンク(learn.microsoft.com)
より

960:デフォルトの名無しさん
23/03/23 22:08:43.88 JMZIdmVT0.net
(型)変数 で型変換(キャスト)
次のカッコは演算子の優先度の調整
最後の()はメソッド()を実行

961:デフォルトの名無しさん
23/03/23 22:15:45.29 qBpx1Wc1p.net
BindingContextをModels.AllNotesのオブジェクトとみなしてそこのメソッドLoadNotes()を実行せよ
って意味

962:デフォルトの名無しさん
23/03/23 22:17:49.58 qBpx1Wc1p.net
そして危険だからそんなコードは書くな

963:デフォルトの名無しさん
23/03/23 22:21:24.70 vqNy8gvnM.net
>>947
初心者にはMAUIは厳しすぎるからやめておいた方がいいよ
MAUIはあれこれ全部できる人が触るものだから


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch