C#, C♯, C#相談室 Part98

2024/06/29(土) 19:18:41.95ID:NohAfdfx0
!extend:checked:vvvvv:1000:512
!extend:checked:vvvvv:1000:512
!extend:checked:vvvvv:1000:512

■Visual Studio 2022 Community(無償の統合開発環境)等はこちら
http://www.visualstudio.com/downloads/

■コードを貼る場合はこちら
http://ideone.com/

■前スレ
C#, C♯, C#相談室 Part97
https://mevius.5ch.net/test/read.cgi/tech/1671585518/

■次スレは>>970が建てる事。
建てられない場合は他を指定する事。
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
2024/09/27(金) 06:17:43.36ID:H6GdPqZc0
ライブラリ使うってレベルじゃねぇぞ
2024/09/28(土) 15:53:03.33ID:Nide2Zz10
あのースレ違いとは重々承知の上なんですが、ASP.NETの求人ってどんな感じですかね
これまでずーっとC#のデスクトップアプリとかまぁローカルなシステム作りばかりやってきたんですが、いくらなんでも未来がないからウェブへの転職狙ってるんですよね
でキャリア活かそうとASPいじりはじめたんですが今はどこもかしこもjavascriptみたいなイメージで
業務でASP使ってるとかASPで転職活動したとかそういう人いたら話聞かせてほしいんです
2024/09/28(土) 17:25:46.96ID:aGtM+jOEd
どう考えても普通にJavaScriptやる方がいい。
C#履修者ならTypeScript自体の習得は爆速だよ、本気でやれば多分一週間もかからない。何しろ設計者が同じなので書き味に違和感が無くなるのはすぐのはず
問題はReact、Vue、Nextなどフレームワークやライブラリのスキルだけど、正直ここは常にコロコロ変わって勉強が必要な分野なので途中参加でもあまりハンデはないと思う
転職しても、JavaやC#のお硬い言語のキャリアは重宝されるから決して無駄にはならないはず
ASP.NETやBlazorの需要は限定的だし先行き不透明過ぎる
自分も似たようなことしたので頑張って
2024/09/28(土) 18:03:06.22ID:vky4rjg9p
スクリプト言語は糞
2024/09/28(土) 18:12:04.40ID:iFauIOzc0
クソでも使えるやつは優秀
2024/09/28(土) 20:12:23.11ID:Dk+INUbR0
業務でASPNETCoreバリバリ使ってはいるけど
ASPNET単体の知見が転職活動で役に立つとは思えない
というか、C#ができてHTML/CSS/JavaScriptが読み書きできる人なら普通に無勉強/経験なしでもASPNETで開発できちゃうからセールスポイントにならないのよね

うちんとこはReactみたいなモダン()なフレームワークは使ってないけど、それでもJS/TSの知識は必須
愚直にWeb系の勉強をするのが先かなと思うよ
2024/09/28(土) 23:13:28.34ID:Nide2Zz10
>>102 >>103
参考になりました。とりあえずHTML/CSS/JavaScript(TypeScript)辺りちゃんとやろうかと思います
ただなぁ……自習してました!じゃなんもアピールにならない気もするんだよなぁ……結局実務経験0だし
プログラミングスクールでも受講してある程度やったと保証になるものを取りに行こうかな
2024/09/29(日) 00:27:31.57ID:5ys4rELsM
github見せろよ
2024/09/29(日) 02:19:57.40ID:xonfxjDO0
むしろプログラミングスクールの経験のほうが誰もまともに受け取らないよ
自走力がないやつと思われる

素人じゃないだろうしわざわざナメられる道を通るのはオススメしない
2024/10/01(火) 15:20:52.03ID:Ed7m5Yrp0
github見せると、趣味がバレちゃう・・・
2024/10/02(水) 00:50:46.59ID:xje2sb9e0
そもそもSVNの現場ばかりでgithubの使い方よくわからないレベルだわ
というか世の中10年前にはSVNなんてオワコン言われてたってのが信じられねぇ
2024/10/02(水) 02:07:15.64ID:PWZ+bQBz0
個人で使って覚えればいいじゃん
2024/10/02(水) 11:24:45.59ID:1LKJTfPy0
個人で使う限りじゃ4つくらいしかコマンド使わんからなぁ
2024/10/03(木) 20:33:51.33ID:+e3Oo1T60
C#13(.net 9)でfieldキーワードが使えるようになるって聞いたのですが本当ですか?
VisualStudioでプレビュー版の.net9入れてみたけど使えないみたいでした
それともプレビュー版だから使えないのでしょうか?
2024/10/03(木) 21:05:51.32ID:B9NoCJyO0
予定してたけど今回は見送りなんてことは、ままあるからなぁ
ttps://learn.microsoft.com/en-us/dotnet/csharp/whats-new/csharp-13
今のところは入ってないみたいね
2024/10/03(木) 21:29:33.72ID:0TFd8a4L0
え、一番期待してたのに…
c#でググれの人は何て言ってるんだろう
2024/10/03(木) 21:39:37.41ID:+e3Oo1T60
ありがとうございます
確かに記載が無いので残念ですが今回は見送りっぽいですね、、、
2024/10/03(木) 22:03:08.87ID:B9NoCJyO0
ttps://github.com/ufcpp-live/UfcppLiveAgenda/issues/94
>たぶんもう C# 13 で入れるもの確定。参考: Language Feature Status
>今入ってないものは入らない。
>field キーワードは「C# 13 GA のタイミングで、 preview で取り込み」みたいな話を https://aka.ms/dotnet-discord で見た。

だそうです
2024/10/04(金) 00:03:36.27ID:GSZ7pDda0
うーん、微妙か
まぁ.net 10では入るだろうし来年に期待
2024/10/04(金) 08:49:00.52ID:mCOfH6eY0
どうせ奇数番はサポート短くてスルーだし
2024/10/04(金) 12:39:45.28ID:jlwDuTCM0
C#追っかけなくなって知識がdotnet4.5辺りでとまっている…
それ以降はrecordとかしかしらん
2024/10/04(金) 22:48:00.45ID:Yj1cCLJZ0
メモ帳や日記帳アプリみたいな軽いアプリで、ソースコード公開されてて
コードが初心者にも参考になるようなサイトあるでしょうか?
2024/10/04(金) 23:53:09.57ID:qaeIDBN+0
こんなのじゃあかんのん?

C#で自分だけのメモ帳を作成してみよう!手順・方法を徹底解説します
https://www.sejuku.net/blog/102177

ググったら一分も掛からないで出たけど
2024/10/05(土) 13:21:11.69ID:AAO+SKFS0
>>122
サンクスです、丁寧に書いてあってわかりやすいのですが
設定項目を変更した時の設定反映のタイミングとか
form2からform1にデータ持っていく場合とか
やり直し機能とか
うまい人はどうやって全体まとめてるのかなって
2024/10/05(土) 16:55:01.99ID:WPvPgesDM
必要な部分だけ他人のコードを読むか自分でひたすら考えて実装してトライアンドエラー

どちらも地力が格段に上がるけど中級者は避けがち
2024/10/05(土) 17:35:53.95ID:iTplU71b0
それメモ帳というかエディタで大変な箇所を全部端折った記事だから
適当な公開されてるソース読んだ方がいいね
2024/10/05(土) 20:37:56.54ID:fkWv7ZOM0
その適当なのほしいって事やろな

ここの連中は冷たいから教えないんだよね
2024/10/05(土) 22:47:10.24ID:AAO+SKFS0
メモ帳とかの作者さんでソース公開されてる人もC++が多かったり
2024/10/06(日) 08:44:42.11ID:6ToZA1R70
長大なテキストファイルの先頭から文字数を数えたり
一行の長さを測定して画面右端の折返し位置を決定したり
そういうのって現実的に可能なのか?
2024/10/06(日) 09:02:55.59ID:efCavYAy0
>>128
発想がズレてる
2024/10/06(日) 12:41:06.92ID:RTiROZJD0
>>128
逆になんで不可能だと思うの?
2024/10/06(日) 13:11:45.32ID:k/Za2WiE0
普通は穴あきバッファを使う
EZ/VZはlessに編集機能を付けるってユニークな設計をしている
設計自体を知りたいなら 「The Craft of Text Editing: Emacs for the Modern World」が参考になるかと

FINALはdumpすると、MIFESとREDの悪口が書いてある:-p
2024/10/06(日) 14:14:27.86ID:onWt8ZIM0
「穴あきバッファ」なんて初見なんだけどもしかして誤訳じゃない?
2024/10/06(日) 14:18:43.02ID:vkebIpm90
エディタのバッファ管理用のデータ構造は効率的な編集をサポートするためで
文字数カウントや行の折り返しの話はどういうデータ構造を使うかとはほとんど関係ないよね

今はGap Bufferもあまり主流じゃなくてPiece TableかRopeが使われることが多くなってる
2024/10/06(日) 14:21:17.70ID:vkebIpm90
興味があれば↓この辺読んでみるといい
TypeScriptだしC++に比べるとわかりやすいはず
https://code.visualstudio.com/blogs/2018/03/23/text-buffer-reimplementation

この辺の話はエディタのコアな部分ではあるけど
>>123の知りたいこととはほぼ関係ない
2024/10/06(日) 15:19:51.19ID:6ToZA1R70
なにかの文書を画面に表示したい
← 表示したい部分が何行目に当たるか計算する
← 一行に含まれる文字数を知りたい
← プロポーショナルフォントのときはどうするん?
← 行の長さを測定する関数使え
← 一文字ずつ足したり引いたりしながら測定を繰り返す
← 全部の行についてこれやんなきゃかよ?
← やってられない
2024/10/06(日) 18:49:45.21ID:TXz4j2F10
azukiのソースコード見れば?
2024/10/06(日) 18:57:38.47ID:I3D2t/Zs0
>>135
>← 表示したい部分が何行目に当たるか計算する
テキストファイルなら頭から読み込むしかなく改行でカウントアップするだけ

>← 一行に含まれる文字数を知りたい
>← プロポーショナルフォントのときはどうするん?
文字数によって折り返し位置が決まるか
表示幅によって折り返し位置が決まるかのどちらか
両方のルールを同時に適用するというのは一般的ではない
プロポーショナルフォントが関係してくるのは後者の場合のみ

表示幅で折り返す場合は指定したRectangleにフィットするよう
よろしくやってくれる表OS提供のAPIがあるので基本的にはそれを使う
APIの内部的では各文字の表示幅を足し算してるが
とりあえずは画面表示部分だけを計算すればいいので
思ってるほど大した計算量ではない

>← やってられない
んなことたぁない
2024/10/06(日) 20:12:16.90ID:MCn4L0pH0
そもそも公開されてるソースがC++多いからなんだというのか
2024/10/07(月) 02:48:29.36ID:x7sAaviV0
>←
それより矢印の使い方おかしくね?と思った
2024/10/07(月) 06:41:02.52ID:5XNBqMZ+0
→えっ
2024/10/07(月) 07:51:22.02ID:W61JLdXH0
矢印 Unicode(ユニコード)一覧 文字 0g0.org
https://0g0.org/topic/arrows/
2024/10/07(月) 08:50:05.33ID:D9AWyaeE0
↑↑↓↓→→←←
2024/10/07(月) 20:30:46.78ID:0ozgkte7M
個人レベルで作るなら別にベストな方法じゃなくても良い
とりあえず作ってみたらいい
そして徐々にブラッシュアップしていけばいい
2024/10/08(火) 02:42:19.62ID:xQWM8K5Vd
どうせTextBoxかRichTextBox使うから
いちいち行の文字数数えて改行とかという発想がでてこなかったわ
毒されてるんだろうか
145デフォルトの名無しさん (エムゾネ FFea-oLgd)
垢版 |
2024/10/08(火) 09:46:02.12ID:5xpr1xvYF
質問者の作りたい物に行番号やカーソル位置座標とか要らなさそうだから
テキストボックスで十分だと思う
2024/10/09(水) 03:08:11.25ID:w53uZCE9d
行列番号、文字数、ファイルサイズ、ドラッグ移動、カラー絵文字、正規表現検索&置換、折り返し
これぐらい欲しい
2024/10/09(水) 05:37:10.40ID:u99M/+800
こりゃ確かにいろいろと発想がズレてるな
2024/10/10(木) 01:43:13.48ID:9oubSm9f0
カラー絵文字ってどうやるんだろう
149デフォルトの名無しさん (ワッチョイ ca8e-gWHf)
垢版 |
2024/10/10(木) 01:45:48.53ID:l5e/OliZ0
どうとは?
もしかしてわざわざ白黒にしてるのか?
150デフォルトの名無しさん (ワッチョイ dfa4-suLy)
垢版 |
2024/10/10(木) 02:14:45.51ID:To6qDb1x0
くるみぽんちおの刑だ!!
2024/10/10(木) 14:48:43.23ID:9oubSm9f0
まじかテキストボックスがカラー絵文字に対応したのか
週末試してみるわありがと
2024/10/11(金) 00:26:48.51ID:zClzE2L70
win11で作ったformアプリがwin10で盛大にズレてて頭抱えてる
2024/10/11(金) 01:05:53.43ID:bny4Xk3b0
>>152
何をもってOSに起因する症状だと判断したの?
2024/10/11(金) 06:58:29.47ID:tH3T8XD80
OSバージョン毎のフレームサイズの差異とか気にもせずに処理でも書いたか?
155デフォルトの名無しさん (ワッチョイ 9e61-oLgd)
垢版 |
2024/10/11(金) 08:01:38.38ID:v/PLCR+10
OS関係なく単にディスプレイのスケーリングの違いでは
2024/10/11(金) 09:18:43.20ID:izME7MQN0
それだな
2024/10/11(金) 09:50:54.30ID:wAOvgD780
フォントとか配置とかやり直しはMacOSのあるあるだと思ってた
2024/10/21(月) 02:25:35.38ID:SQ8zGBXh0
ライブラリを使用するために下みたいなコード書いた
ライブラリ内でIHoge.Method();の機能を上書きしたいのとHogeで設定されるさまざまな機能を使いたいがためにIHogeを実装したHogeクラスを継承してMethod();を隠蔽、そのうえでライブラリから呼び出されるようにIHogeをさらに継承?実装させてる

ちょっと無理矢理感強いけどこれはアリですか?

ライブラリの中

IHOGE.Method();


public interface IHoge
{
public void Method();
}
public class Hoge : IHoge
{
public void Method()
{
元の処理
}
}

自前で作ったクラス
public class NewHage : Hoge,IHoge
{
public new void Method()
{
上書き処理←やりたいこと
}
}
2024/10/21(月) 02:45:34.93ID:SQ8zGBXh0
>>121
亀レスだけどすごいのあったぞ
中身見てないけど多分お前が望んでるやつだと思う
https://sumiox.com/cs-windowsorm-mynote/
2024/10/21(月) 08:25:43.38ID:451kbP4c0
>>158
Hoge.Methodにvirtual
NewHage.Methodでoverride
2024/10/21(月) 12:38:44.14ID:1/IbrF450
>>158
それがやりたいことなら別にいいんじゃね?

Hogeの他のメソッドがMethod()を呼ぶとか
Method()がHogeの他のメソッドを呼ぶとかの関係が出てくると
newを使わない場合に比べるとバグるリスクが高くなるような気はする

インターフェース+コンポジションにしておけばバグるリスクは低くなる
その代わりに多少書く手間がかかる
2024/10/21(月) 12:53:33.54ID:bUjh45Ks0
>>160
Hogeはライブラリの中の実装だからvirtualにできないのつらみ
>>161
なるほどありがとう
2024/10/22(火) 12:35:56.21ID:SqPRTKfI0
newで上書きしたことないな
2024/10/22(火) 19:02:31.64ID:4SydPJoD0
>>163
なんかchatGPTが教えてくれた
2024/10/22(火) 19:03:43.61ID:4SydPJoD0
てかVisualStudioが教えてくれた
緑波線でnewしてくださいって
public new 戻り値の型 メソッド名
2024/10/23(水) 20:43:06.26ID:laRxPcH30
ML.NETを試してみたら思いの外お手軽で面白いな
アプリにさくっと組み込めそうだ
2024/10/23(水) 21:09:39.51ID:KLvEEO4T0
>>166
薄い本があるので入手お勧め
2024/10/24(木) 06:52:54.39ID:OBQWEe3S0
.NET MAUIで試したことあるけどWindowsはいけたがAndroidではトレーニングでエラーはいた記憶
2024/10/27(日) 08:19:05.51ID:9uOX0V+f0
>>159
サンクスです、これはすごいな
解説がおおくてわかりやすい
これのソースコードがダウンロードできたらよかったのに
2024/11/01(金) 19:03:45.14ID:lJMjrugG0
CookieってSystem.Text.Jsonでシリアライズ・デシリアラズするとDomainKey変わっちゃってSet-Cookieで同じ名前のクッキー来ても違う奴判定されてダブるんだな
正確に言うと先頭ドット有りだと変わらないのと、BinaryFormatterやNewtonsoft.Jsonで非パブリックフィールド含む全フィールドをそっくりそのままストア・ロードさせれば変わらないんだけど
2024/11/14(木) 09:50:27.66ID:2GoXPHL10
ZipPlaってファイル管理ソフトのソース持ってる人いる?
居たらアップして欲しい
2024/11/14(木) 10:20:27.81ID:WaFHXOHg0
>>171
ぐぐったらGitHubにForkされたのがあるようだぞ
オリジナルからどの程度手が入ってるか知らんけど
2024/11/16(土) 02:07:13.59ID:h+Fv95x40
>>172
自分もそれは見つけたんだけど、何を変えてるのかもハッキリしないんですよね
なのでオリジナル持ってる人が居たらと思いまして
2024/12/07(土) 11:39:26.82ID:ITlUnsCD0
WinFormsってWindowのクラスネーム決められないの?
Win32のFindWindowのClassNameで探させたいのだけど
2024/12/07(土) 17:24:39.89ID:8OMGJvUm0
protectedなCreateParamsプロパティをオーバーライドしてClassNameを書き換えることはできる
独自名ならとりあえずRegisterClassは必要だけどそれだけで済むかどうかは知らん
2024/12/08(日) 10:13:10.77ID:Rw3oOi650
C#側のプロパティは書き換えられても実際の内部の値はそういうことしないと無理そうか
2024/12/08(日) 11:19:30.20ID:kkfUSfWy0
RegisterClassExしてやろうとしたことあるけど
CreateParamsでRegisterしたClassName指定してもエラーになって
それで良く分からんまま放棄したな昔
178デフォルトの名無しさん (ワッチョイ 7f12-7Ydj)
垢版 |
2024/12/08(日) 11:24:39.87ID:I292Dtst0
流行りのAIはその辺何か教えてくれんのか?
2024/12/08(日) 11:42:31.33ID:gLALr0T30
はい
2024/12/08(日) 12:16:51.06ID:9nkQEnF50
人間が垂れ流した知識を混ぜるだけのAIが、人間が知らないことを教えられるわけないだろw
2024/12/08(日) 12:37:03.03ID:cRlpRIfuM
世界中のどこかで語られたかもしれない事実をそこらの人間がすべて知ってると思うのがおかしい気がする
2024/12/08(日) 17:47:34.90ID:d7OE/SEZ0
つーかさWin32APIのCreateWindowで作ったウィンドウをC#にAttachする程度基本的な仕組みぐらいあるやろ
あるやろ…
2024/12/08(日) 21:09:31.34ID:NIwBIUGx0
CSharp初心者が学習始めるなら何からがおすすめ?
多分IIS?使ったウェブアプリになるんだけども
Javaでのアプリ開発経験はあり
2024/12/08(日) 21:38:41.73ID:Dh5r1ipA0
Paint.netのソースを見たまえ
2024/12/08(日) 21:46:52.70ID:NIwBIUGx0
これかな、ありがとちょっと見てみるわ
h
ttps://github.com/paintdotnet
186デフォルトの名無しさん (アウアウエー Sa9f-zpgV)
垢版 |
2024/12/09(月) 11:14:47.99ID:uh4vUAM3a
SetWindowLong
SetWindowLongEx
187デフォルトの名無しさん (アウアウエー Sa9f-zpgV)
垢版 |
2024/12/09(月) 11:15:02.52ID:uh4vUAM3a
GWL_EX_STYLE
188デフォルトの名無しさん (ワッチョイ dff4-tB0+)
垢版 |
2024/12/09(月) 13:22:41.09ID:wWCmXoxS0
科学 + 5ch

【AI】AIはわずか2時間の対話で人間の性格をコピーできる [すらいむ★]
https://egg.5ch.net/test/read.cgi/scienceplus/1733576027/

コメントに面白いことが書かれている
2024/12/09(月) 17:56:14.64ID:apYLNmO+0
PaintDotNetをインストールした
2024/12/11(水) 06:17:57.42ID:BgUz4+cQ0
varなんて使うな戦争ってもう終結したの?
2024/12/11(水) 07:27:33.98ID:DZxIsQuWr
言語によりけりだから
2024/12/11(水) 08:36:42.20ID:tumrZkmz0
盲目的にvar使うなとは思うけど、一切使うなはないなぁ
2024/12/11(水) 08:50:12.41ID:AAqkzyDB0
まあマイクロソフトのサンプルにも使ってる例あるしな
2024/12/11(水) 10:05:12.70ID:BwkZDwjMM
jsのvarと違ってただの便利機能だしな
195デフォルトの名無しさん (ワッチョイ 476d-Ahcx)
垢版 |
2024/12/11(水) 12:36:15.23ID:uq+uLBFl0
varで参照型を扱うとnullableになるのはどうにかしてほしい
2024/12/11(水) 13:56:36.44ID:pPQiPOka0
推論型なんだし、必要に応じて使えばいいんじゃね?
objectならともかく
2024/12/11(水) 14:39:24.72ID:1I783KxU0
varが絶対必要なのって匿名型使うときだけだから、必要に応じて使う、だとvarはほとんど用無しになっちゃう
戦争に参加するつもりはないが仮にvar使うんなら必要に応じてじゃなく基本varにしないと
2024/12/11(水) 14:54:27.03ID:9MAiYNgK0
c#は基本varでいいよね
多分大体のc#er?はvarじゃないときにだけ理由を気にするんじゃないかな
2024/12/11(水) 18:36:49.06ID:SiVbJLlPM
初期に頭のいい人は一番先に varに飛び移った
その後みんな気が付いて移行した
今でも使わないのはご老人
レスを投稿する

5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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