C#, C♯, C#相談室 Part95
at TECH
[前50を表示]
100:デフォルトの名無しさん
17/11/10 18:12:13.90 MvAM88wE.net
コンパイルエラーとは別にコード分析のエラー欄に出るんじゃないか?
>>91
命名ルールはこれ
URLリンク(msdn.microsoft.com)
101:デフォルトの名無しさん
17/11/11 00:13:18.80 VQqkIwVV.net
class A{
class B{
class C{
}
}
}
みたいに三重くらいになると、自分でもわけ分からなくなって来るんですが、
世間では三重くらいは普通ですか?
102:デフォルトの名無しさん
17/11/11 00:28:57.43 FsCJcvbF.net
>>100
内部クラスって表記しやすいだけでそれ以外のメリットあるのかね?
103:デフォルトの名無しさん
17/11/11 00:33:23.96 BH43IN+9.net
javaの人は良く使うけど
スコープの問題だけだから本来は使わないでもよさそう
104:デフォルトの名無しさん
17/11/11 00:59:17.39 kkrHimLP.net
内部クラスはたまーーーに使うけど3重なんて一度もしたことないな
105:デフォルトの名無しさん
17/11/11 01:19:20.69 3ysLENMg.net
何重までいけるん?
106:デフォルトの名無しさん
17/11/11 11:11:58.59 f6zZSvYO.net
>>104
プログラムやる人の発想じゃないな
107:デフォルトの名無しさん
17/11/12 08:56:15.86 LXGneVsA.net
>>100
static classだとよくやるけど
static class My{
static class Hoge{
static class Config{
}
}
}
My.Hoge.Configのように使える
でも3重は使わないな
108:デフォルトの名無しさん
17/11/12 10:27:34.46 j0JK3XOe.net
Javaだと1クラス1ファイル
客先の規約で配置できるファイルに制限があると内部クラスを使わざるをえない
109:デフォルトの名無しさん
17/11/12 10:36:20.99 3BzbD7Br.net
enum使いにくいから代わりにstatic class乱用してるわ
110:デフォルトの名無しさん
17/11/12 10:46:19.17 kmdFzMTF.net
>>108
enumのどのあたりがダメなん?
111:デフォルトの名無しさん
17/11/12 11:11:16.62 3BzbD7Br.net
>>109
後で要素増えたら参照先全部ビルドし直さなきゃならんあたり
112:デフォルトの名無しさん
17/11/12 11:19:21.94 kmdFzMTF.net
>>110
ビルドなんて一瞬じゃん?
113:デフォルトの名無しさん
17/11/12 11:28:22.38 PNAmYcb6.net
.Net Core 2.0では、だいぶん.NetFrameworkの実装がカバーされたと聞きました。
URLリンク(raw.githubusercontent.com)
これを見る限りでは、System.IO.StreamやSystem.IO.FileInfo、ISerializableなど
もあります。これらをUWPやASP.NET Coreでも使えるようになるという理解でいいでしょうか。
114:デフォルトの名無しさん
17/11/12 11:44:42.71 j0JK3XOe.net
C#のenumはメソッド定義できないから役立たず
115:デフォルトの名無しさん
17/11/12 12:19:41.85 pNqEHb8d.net
>>113
javaとは思想が違うからな
どうしてもメソッド使いたけりゃ拡張メソッド書けばいいだけのこと
116:デフォルトの名無しさん
17/11/12 12:24:54.60 zaPGzGOT.net
enumは型安全性をぶち壊すから…
117:デフォルトの名無しさん
17/11/12 12:39:52.61 j0JK3XOe.net
enumにメソッドを定義できないとenumスイッチがあちこちに書かれてシステムが汚染される
そんなことになるぐらいならenumは言語機能から追放したほうがいい
118:デフォルトの名無しさん
17/11/12 12:51:07.42 kmdFzMTF.net
>>116
メソッドが使えるとスッキリ書けるの?
例を教えて
119:デフォルトの名無しさん
17/11/12 13:21:53.63 WcVSvCUs.net
読み方はエナメラブルでいいのかね
120:デフォルトの名無しさん
17/11/12 13:26:58.08 hG4wTZ8S.net
>>112
逆に聞きたいんだけど、どういう理解があると思ったの?
121:デフォルトの名無しさん
17/11/12 13:29:17.49 j0JK3XOe.net
>>117
Javaのenumのメソッドはポリモーフィック
なのでステートやストラテジーなど様々な応用が利く
122:デフォルトの名無しさん
17/11/12 14:44:05.96 IOmcFQTN.net
enumはどうせ定数に置き換えられるんだから、最初から定数で書いとけばいいな
123:デフォルトの名無しさん
17/11/12 15:30:46.03 Lnuis1wP.net
>>107
javaって、内部クラスも1ファイルとして出力されるんじゃなかったっけ?
124:デフォルトの名無しさん
17/11/12 16:08:56.10 kmdFzMTF.net
class A,B,C,...が有って
void func<T>(...){...}
みたいな関数を
func<A>(...);
func<B>(...);
func<C>(...);
みたいに順番に実行したい場合、
forループ使って書ける?
125:デフォルトの名無しさん
17/11/12 16:11:43.25 MOg5phwx.net
>>122
>>107はソースの話やで?
オブジェクトはまとめたらいいだけだし
126:デフォルトの名無しさん
17/11/12 16:17:52.85 j0JK3XOe.net
>>123
var list = new dynamic[] { a, b, c };
foreach (var x in list)
func(x);
引数もインスタンスも無いならreflection
127:デフォルトの名無しさん
17/11/12 16:33:07.06 kmdFzMTF.net
>>125
なるほど。
dnamic使うしか無いんですね?
128:デフォルトの名無しさん
17/11/12 16:58:32.42 RZNIwvSq.net
reflectionが目に入らぬか
129:デフォルトの名無しさん
17/11/12 17:39:19.11 UFCv5vw0.net
>>127
reflectionと言うのでやる方法を教えて下さい
130:デフォルトの名無しさん
17/11/12 17:39:26.99 5vVJXllV.net
partical いいよなぁ
131:デフォルトの名無しさん
17/11/12 18:01:29.09 PNAmYcb6.net
>>119
APIはあっても、実際は例外投げるんじゃないかとか。
StreamやISerializableなど今まで散々レガシー扱いされてたのに、
すんなり実装されたのだったら、今までは何だったのかと思ってしまって。
132:デフォルトの名無しさん
17/11/12 18:02:25.44 Lnuis1wP.net
>>124
「配置できるファイルに〜」のところもソースファイルの話だったか、失礼した
133:デフォルトの名無しさん
17/11/12 18:42:10.04 WcVSvCUs.net
>>118
読み方はあっているのかい?
134:デフォルトの名無しさん
17/11/12 18:55:18.48 52C+Ep3W.net
>>132
えにゅめらぶる
135:デフォルトの名無しさん
17/11/12 19:11:35.21 Ti9eVPN+.net
>>133
いい難いなw
136:デフォルトの名無しさん
17/11/12 19:31:01.04 WbI57bEd.net
あいえにゅめらぼー
137:デフォルトの名無しさん
17/11/12 19:38:58.15 RZNIwvSq.net
れっきょ
138:デフォルトの名無しさん
17/11/13 01:47:33.98 v8HXsfBj.net
>>126
リフレクション
そもそも用途がわからんけど
139:デフォルトの名無しさん
17/11/13 01:55:32.64 v8HXsfBj.net
>>130
最初のリンクがそもそも.NETStandardの話なんだけど、.NETStandardとは何か知ってれば(最低限ググれば)前者は迷う余地がない
後者は経緯知らないけどレガシーが実装されたらだめという理由がない
…と考える人が大多数だと思う
140:デフォルトの名無しさん
17/11/23 11:44:32.89 3aIXz7vh.net
C#でちょっとした文字列の連結を行う場合、+がいいのかFormatがいいのかReplaceがいいのかStringBuilderを使うのがいいのか悩んでます
どれが一番いいのでしょうか?
1. string value = A + "-" + B;
2. string value = string.Format({0}-{1}, A, B);
3. string value = "{A}-{B}".Replace("{A}", A).Replace("{B}, B);
4. StringBuilder sb = new StringBuilder();
sb.Append(A);
sb.Append("-");
sb.Append(B);
141:デフォルトの名無しさん
17/11/23 11:50:10.15 nWWLjgB9.net
こんな細かいことで悩んでいたら禿げるわ
それぞれにどれだけの差が出てくるか考えろよ
142:デフォルトの名無しさん
17/11/23 12:00:55.88 +AsqqoLD.net
$"{A}-{B}" でしょ
143:デフォルトの名無しさん
17/11/23 12:03:56.69 3aIXz7vh.net
>>141
なるほど
144:デフォルトの名無しさん
17/11/23 12:04:14.40 11MjDn+U.net
とりあえず、環境が許すなら141、駄目なら139の1
145:デフォルトの名無しさん
17/11/23 12:13:05.14 1XchAmld.net
連結ならいつもは分かりやすさ優先で+
実際に扱うデータで使ってみて遅いと感じたらStringBuilderに変えてるわ
置き換えは置き換えの時だし、フォーマット形式が必要と感じたらそれ使うし
悩むのかこれ…コーディング終わらんやろ…
146:デフォルトの名無しさん
17/11/23 12:20:49.75 Go3NcBxu.net
最初はくだらない事に悩むからしょうがない。直に、開き直るからそれまでとことん悩め。
147:デフォルトの名無しさん
17/11/23 12:24:20.12 nWWLjgB9.net
>>145
こういうので悩みだすのはスキルが伸びず閉塞感に陥って逃げ道探しているときだw
148:デフォルトの名無しさん
17/11/23 12:28:18.93 kBi82nCb.net
4とか使うのは連結回数がクソ多いぐらいだな
149:デフォルトの名無しさん
17/11/23 14:17:08.77 U/QtJVxM.net
StringBuilder必要なのはループで回す時くらいやろ
固定回数なら最適化されるんちゃうか
しらんけど
150:デフォルトの名無しさん
17/11/23 15:17:10.10 JqKYKF6h.net
改行したい時はsb.AppendLine使う
var s = $@"hello
{A}
world";
別にこれでもいいけど、インデントが気持ち悪い
151:デフォルトの名無しさん
17/11/23 18:08:06.61 w+OP7Z8m.net
数個程度の定数個の結合にStringBuilderは無いね
@""で改行入れたときの改行コードってソースコードの改行コードに依存するんかな
152:デフォルトの名無しさん
17/11/23 18:25:49.20 Go3NcBxu.net
StringBuilder使うのは基本、ループ内で文字列結合するときだけだな
153:デフォルトの名無しさん
17/11/23 18:28:19.08 zj6W6oGG.net
スレがボケジジイの繰り言みたいになってる
154:デフォルトの名無しさん
17/11/23 18:29:25.95 Go3NcBxu.net
と書くと、問題あるな。あるメソッド内でループしてないから普通に文字列結合してても、
そのメソッドを使う方でループしてメソッド呼び出されたら・・
ということでなんでもない。
155:デフォルトの名無しさん
17/11/23 19:44:15.73 NThPFj2G.net
パフォーマンスは大差ないので可読性で選ぶ
となると
定数個なら+
動的ならlinqとJoin
156:デフォルトの名無しさん
17/11/24 08:32:28.20 LQb8e4yU.net
public override と
override public とでは、どっちが普通ですか?
157:デフォルトの名無しさん
17/11/24 08:40:21.61 GsVE4oKd.net
アクセス修飾子が先
158:デフォルトの名無しさん
17/11/24 09:49:06.09 LQb8e4yU.net
>>156
じゃあstatic使う場合は
どこに入れるべきですか?
159:デフォルトの名無しさん
17/11/24 11:32:34.25 GsVE4oKd.net
アクセス修飾子が先
160:デフォルトの名無しさん
17/11/28 20:01:33.21 uo9ygS2y.net
EF Core + MariaDBで行ロックをするにはどうしたらいいですか?
161:デフォルトの名無しさん
17/11/29 11:56:45.71 /OzCwr8n.net
>>159
行ロックって何よ?
162:デフォルトの名無しさん
17/11/29 12:25:04.50 rN1pofYI.net
>>159
EFに明示的なロックは要らん
保存するときに他の変更があれば保存は失敗する
163:デフォルトの名無しさん
17/11/29 15:02:54.88 LyP2QHxX.net
EFは基本、楽観ロックだからね。
自分が更新するデータは誰も変更しないだろうということで楽観的に考えて行ロックを取得しない。
で、実際の更新時に、保存しておいたタイムスタンプ列や全列を比較して更新するUpdate文を
発行して誰も変更してなきゃ成功する。
164:デフォルトの名無しさん
17/11/29 15:08:27.80 LyP2QHxX.net
対して、悲観的ロックは誰か変更するんじゃないかと悲観的に考え前もって行ロックする。
行ロック取得したければ、トランザクションの分離レベル変更して、間接的に取得すればいいんじゃねぇかな。
例えば、トランザクションをロックを使って実装してるデータベース使ってるなら、
トランザクションの分離レベルをREPEATABLE READにして読めば、読み込んレコードには
行ロックがかかる。
165:デフォルトの名無しさん
17/11/29 15:52:26.83 x/indGo0.net
>>161
楽観的排他制御ってやつか!?
166:デフォルトの名無しさん
17/11/29 21:11:58.94 fgyKG67K.net
リトライだらけになる
167:デフォルトの名無しさん
17/12/02 10:37:02.24 OECpFj6Y.net
Consoleアプリの関数Aから別のスレッドで関数Bをを実行。
Bが終わるまで数分かかるので、その間はAの処理を引き続きやる。
Bが終わったら何らかの通知をA(あるいはアプリ)で受けとる。
そんな処理をしたいのですが、どんな手法がお勧めですか?
168:デフォルトの名無しさん
17/12/02 11:20:32.34 qE46CGT4.net
>>166
Hangfire
169:デフォルトの名無しさん
17/12/02 12:07:47.28 pzCW2tCE.net
書き捨てならポーリング
170:デフォルトの名無しさん
17/12/02 12:18:43.47 dIIqSudI.net
>>166
普通にTaskとasync-await
171:デフォルトの名無しさん
17/12/02 13:31:40.26 OECpFj6Y.net
>>167
情報ありがとうございました。調べてみます。
>>168
それは何ですか?
>>169
関数Aの中で関数Bの終了をawaitするとそこでAの処理が停止しますよね?
それでは困るんです。
172:デフォルトの名無しさん
17/12/02 13:38:50.65 /lrBlva0.net
通知を受け取って何をするの?
Aが実行中に通知を受け取った場合は?
Aが終わったあとに通知を受け取った場合は?
173:デフォルトの名無しさん
17/12/02 13:44:11.82 M5ek0NUJ.net
>>171
終わったってフラグでも作っておけばいい
何のためにそんなこと聞くの?
174:デフォルトの名無しさん
17/12/02 14:11:31.35 kxO6m70V.net
>>172
実際にコードに起こすこと考えたら>>171の疑問出てこない?
ポーリングの有無とかB終了の通知はA以外で受けたほうがいいのかみたいな
175:デフォルトの名無しさん
17/12/02 14:21:45.96 /lrBlva0.net
void A() {
...
Task.Run(() => B());
...
...
}
void B() {
...
...
SetSomeFlag();
}
こういうこと?
何をしたいのかハッキリしないな
176:デフォルトの名無しさん
17/12/02 14:22:18.75 T9uGCJHM.net
>>170
関数BをTaskで実行しておいて、たまにTask.Wait(0)がtrueを返すか確認する
177:デフォルトの名無しさん
17/12/02 14:22:55.12 M5ek0NUJ.net
>>173
何で目の前の問題置いて次の実装考えるの
やり方が一つ決まったらそれでやり通す必要もないし
質問者の要件わからないのにそんなこと聞きだす必要はない
178:デフォルトの名無しさん
17/12/02 15:15:48.94 XMkOweAB.net
多分処理AはUIスレッドなんだろ
処理B実行中にUIは止めたくない
そして処理B完了でUIを更新したい
そんな要件だと想像した
179:デフォルトの名無しさん
17/12/02 15:34:29.65 kxO6m70V.net
>>177
それだとInvokeやDispatcherの話にも広がりそうだね
180:デフォルトの名無しさん
17/12/02 16:57:04.20 ax4ftaEq.net
>>177
consoleアプリって書いてあるやん
181:デフォルトの名無しさん
17/12/02 17:27:35.43 2zJJAtZS.net
10レスそこらも遡れないとかヤバすぎて草
182:デフォルトの名無しさん
17/12/02 18:20:58.48 M5ek0NUJ.net
元の話が設計で根本的におかしいか思い付きで質問しているかどっちか
後半に100ペリカ
183:デフォルトの名無しさん
17/12/02 20:31:53.15 XMkOweAB.net
コンソールアプリなら
EventWaitHandle使うのが楽そう
184:デフォルトの名無しさん
17/12/02 21:02:27.32 8UWC/wK0.net
WaitHandleは完了を待つ側のスレッドをブロックするから、
それでいいんだったら普通にasync-awaitでいい
185:デフォルトの名無しさん
17/12/02 21:06:19.33 pzCW2tCE.net
せやね
186:デフォルトの名無しさん
17/12/02 22:01:19.49 hEzEqaaq.net
Aで何したいかだけどコールバックでいいんじゃないの
187:デフォルトの名無しさん
17/12/02 22:11:03.11 8UWC/wK0.net
だったらTask.ContinueWithでいいだろ
188:デフォルトの名無しさん
17/12/03 01:24:35.88 R5bnWQiD.net
つかそもそも別スレッドで実行する必要があるのか
別プロセスで良いんじゃねえのか
189:デフォルトの名無しさん
17/12/03 10:20:17.77 8EUneh2f.net
>>187
プロセス間のデータ受渡はsoket通信する感じ?
190:デフォルトの名無しさん
17/12/03 10:32:03.87 eMfWVF0k.net
>>188
勝手に要件作る気なのかw
しかも中身まで要エスパーとか
191:166
17/12/03 10:48:55.10 fYwJfoN4.net
皆さんレスありがとうございました。
>Aが実行中に通知を受け取った場合は?
関数Cを別スレッドで実行したいです。例えばこんなふうに。
void C(){
Console.WriteLine("Bが終わった");
}
>Aが終わったあとに通知を受け取った場合は?
Aは終わらないと言う前提でお願いします。
192:デフォルトの名無しさん
17/12/03 10:52:57.14 eMfWVF0k.net
>>190
>>186に出ているだろ
というかTaskメソッドをMSDNで調べろよ
193:デフォルトの名無しさん
17/12/03 11:54:26.84 dO3du7bJ.net
ふらっと案件
194:デフォルトの名無しさん
17/12/03 12:01:59.74 mrNMXEOK.net
フラット案件どころかこれだけレスとキーワード出ていて自分で解決できないのならプログラムやめるべき
195:デフォルトの名無しさん
17/12/03 12:09:59.71 S5PX0FVt.net
勘違いレスした奴もふらっと行きの刑で
196:デフォルトの名無しさん
17/12/03 12:14:39.54 WBs9Zv02.net
何でもいいけどすぐ動く完動品が出てくるまでこの調子だと思うぜ
どうせソースないんだろ、出てきたものを見ていじって作ろうとしてるんだろ
197:デフォルトの名無しさん
17/12/03 14:16:09.36 VfzmjXdH.net
>>190
BとCについてはよく分かった
Aが現状どういう処理をしているかによって
解決の仕方が違ってくると思うな
198:デフォルトの名無しさん
17/12/03 21:08:04.26 Or+Mlh4N.net
Aは終わらないという前提でちょっと笑った
199:デフォルトの名無しさん
17/12/04 17:37:29.30 KH9vP8EW.net
コンソールアプリで関連性のない2つの動作を同居させるシチュエーションがわからん
マルチスレッドにしたら効率が良くなるってだけの頭の悪い発想じゃね
>>187が当てはまらないのならぜひ教えてほしいくらい
200:デフォルトの名無しさん
17/12/06 04:39:39.43 PV/6ekcb.net
>>188
コンソールアプリ同士なんだから、まず標準入出力でダメか考えるべきじゃね
ソケット通信が必要ならまあやればいいけど、それだとそもそも
201:コンソールアプリなのが正しいのか疑問だ
202:デフォルトの名無しさん
17/12/06 07:38:42.71 7eNsiGhQ.net
>>199
ASP.NET Coreなんてもろコンソールアプリだけどな
203:デフォルトの名無しさん
17/12/07 01:34:47.15 f4DoJP6b.net
>>199
GUIが必要ないからCUIってプログラムは幾らでもあるが。
204:デフォルトの名無しさん
17/12/07 12:33:06.20 NfkoL/Di.net
>>201
それはGUIが基本なのかCUIが基本なのかの違いであって
コンソールアプリである必要性とは関係ないよね
別にGUIを基本にしろって主張じゃないよ
ただCUI=コンソールアプリってわけでもないだろうと
205:デフォルトの名無しさん
17/12/15 07:32:48.50 fJhEByrM.net
Task<string>型からstream型に変換するにはどうしたらいいでしょうか?
調べてもよく分からず詰まっています
206:デフォルトの名無しさん
17/12/15 08:44:02.62 tLAi6Ik2.net
よく分からんけどstringを取り出してからTextReaderかなんかに渡す
207:デフォルトの名無しさん
17/12/15 10:24:35.41 nTa8GCuy.net
>>203
何がしたいん?
208:デフォルトの名無しさん
17/12/15 22:48:43.84 Io6GZfPK.net
>>205
URLリンク(ideone.com)
こんな感じでurlを投げて返ってきたものをstreamに入れたい
209:デフォルトの名無しさん
17/12/15 23:04:26.66 Io6GZfPK.net
// HTTPアクセス
var req = WebRequest.Create(url);
var res = req.GetResponse();
// レスポンスをオブジェクトに変換
Stream s = res.GetResponseStream();
StreamReader sr = new StreamReader(s);
string str = sr.ReadToEnd();
もともとConsoleAppでこう書いて動いてたんだがGUIベースのにしようとしたらGetResponseが使えなかった
代わりにGetResponseAsyncにしたらエラーが出てもっとわからなくなった
210:デフォルトの名無しさん
17/12/15 23:08:46.23 TZIV/XXh.net
ナウなヤングはHttpClient.GetStreamAsync
211:デフォルトの名無しさん
17/12/15 23:50:34.14 aqOMh7+X.net
低水準言語からC#に戻ってくるとlinqが有能すぎて困る困らない
ienumなんとかいうヤツにforeachないのはなんでなの?魔女のバァさんの呪いか?
212:デフォルトの名無しさん
17/12/16 00:22:04.98 IGcNQYtz.net
List<T>.ForEach(Action<T> action) みたいなやつのことかな?
はい副作用ドーン!はLINQとしてどうなのってことで入らなかった
213:デフォルトの名無しさん
17/12/16 00:24:11.12 ArLhqftT.net
console では処理を止めても良いから、同期処理でも良い
でも、GUI では処理を止めると、アプリが動かなくなるから、
50ms 以上掛かるものは、非同期処理が推奨
214:デフォルトの名無しさん
17/12/16 22:25:24.29 GhzhJYge.net
もっと非同期処理について学んでみます
215:デフォルトの名無しさん
17/12/18 22:23:42.36 5DMorLlq.net
Int32へのIntPtrを渡さなければいけないのですが、unsafeコードしか方法はないのでしょうか?
現状、
Int32 int32;
IntPtr intPtr;
unsafe { intPtr = new IntPtr(&int32) }
someObject.someMethod(intPtr);
みたいな感じです。
216:デフォルトの名無しさん
17/12/18 22:42:24.23 7zt8qegi.net
>>213
無さそう
URLリンク(docs.microsoft.com)
URLリンク(msdn.microsoft.com)(v=vs.110).aspx
そもそもどう使うか思いつかない。
アンマネージで必要ならrefで渡すし
217:デフォルトの名無しさん
17/12/18 23:03:00.80 5DMorLlq.net
System.Runtime.InteropServices.ComTypesで用意されてるインターフェース使うと、
IntPtrで宣言されてるんですよね・・
まぁ、自前でrefで宣言しなおしてもいいんですけど。
うーん。どうしよう。
218:デフォルトの名無しさん
17/12/18 23:05:43.88 5DMorLlq.net
まぁ、out,ref使わずにIntPtrで宣言すると、null渡せるっての1つの利点ですかね・・
COMインターフェースでオプショナルな引数もあって、そん時はnull渡してくれみたいのもあるんで。
>>213みたくunsafeしなければいけなならデメリットの方が大きそうですけど。
219:デフォルトの名無しさん
17/12/19 07:23:44.08 FokzMHrG.net
Marshal.AllocCoTaskMemするとか
new int[1]してGCHandle.AllocでPinnedしてAddrOfPinnedObjectするとか
220:デフォルトの名無しさん
17/12/19 13:37:53.98 IhvApffy.net
直接アンマネージにポインタだけ渡すってどうなんだろ
Marshal.AllocHGlobalとかしなくていいのか?
221:デフォルトの名無しさん
18/01/06 23:07:58.15 RVXlFPlL.net
いまだにどこまで.Pinnedしなきゃならないのかわからないw
趣味グラマだからわからないままでも問題はないんだけども
C#始めたころはいちいち書いていたが最近はずっと省いているな
222:デフォルトの名無しさん
18/01/07 00:09:48.08 X58Odkk6.net
変数がスタックにあるなら要らん
それ以外は必須
GCHandle.Allocは解放漏れでメモリリーク起こす可能性があるしパフォーマンスも悪いからなるべくfixed使った方がいい
223:デフォルトの名無しさん
18/01/07 00:21:49.73 gMArQtmD.net
ここはC#アンセーフコードスレですか?
224:デフォルトの名無しさん
18/01/07 00:44:39.18 Fl8YPIHO.net
>>220
サンクス
だけどアンマネージ側に渡すのにいちいちunsafeにはしたくないな
225:デフォルトの名無しさん
18/01/07 00:52:39.44 MTMRs8S5.net
IntPtrってvoid*相当で型安全もクソもないし
AllocHGlobalもmallocを生で使うのと変わらん
unsafeよりよっぽどunsafe
226:デフォルトの名無しさん
18/01/07 03:57:43.36 BXo/eClR.net
C#のスクリプト実行がVSなしでも動かせて、Pythonとかの代わりに使える未来はないかな?
227:デフォルトの名無しさん
18/01/07 10:21:20.72 EnYFx2jS.net
>>224
>C#のスクリプト実行がVSなしでも動かせて
これはもうできるやろ
228:デフォルトの名無しさん
18/01/07 13:30:19.23 6UmxljW6.net
今のままだとpythonの代わりにはならんわ
pythonは標準のモジュールにスクリプト用やOS周りの便利な機能が組み込まれてる
229:デフォルトの名無しさん
18/01/07 13:43:21.05 6UmxljW6.net
pyhtonだと他のコマンドの出力をワンライナーで処理とかあるけど
C#はまあ無理だな
そういう所ですみわけされてる
適材適所
230:デフォルトの名無しさん
18/01/07 14:44:36.87 wnez5vhA.net
python だと標準でできて .net だとできないことって何かあるかな?
231:デフォルトの名無しさん
18/01/07 15:14:37.45 PIbW29V+.net
jsonくらいか?
232:デフォルトの名無しさん
18/01/07 15:24:00.25 EnYFx2jS.net
>>226
たとえば?
233:デフォルトの名無しさん
18/01/07 15:34:12.12 pcvnpBsv.net
getoptやargparseのようなものは欲しいと思ったな。その点ではMFCよりも退化してる。
234:デフォルトの名無しさん
18/01/07 20:30:21.44 5XHMA74k.net
ウェブサイトのリプレイスでPHPじゃなくてC#で書きたいので
上司を説得するために、PHPよりC#の方が言語的に優れてる点をまとめた
静的型付け
勝手に文字列、数値、真偽値等のプリミティブ型を変換しない
ジェネリクス
LINQ
名前空間名を指定してusing
非同期メソッド
ラムダ式
拡張メソッド
null条件演算子
逆にPHPの方が言語的に優れてる所ってなんだろう・・・
trait?
引数にタイプヒント付けるとnull安全になる所?
235:デフォルトの名無しさん
18/01/07 20:36:48.21 eDz/bjXs.net
言語だけじゃなく、開発環境、ライブラリなど総合的に決めるべきやね。
結果は自明だが。
236:デフォルトの名無しさん
18/01/07 20:40:46.23 7cGFvSiG.net
>>232
WebならC#は言語云々というよりプラットフォームの制約で選ばれるものだと思うぞ
サーバーがWindowsならC#はMSが強く推奨する第一の選択肢であり、よほどの理由がなければ他を使うべきではない
Linuxなら今では.NET CoreもあるけどPHP使ってるようなところの手に負えるもんじゃない
237:デフォルトの名無しさん
18/01/07 21:06:28.11 5XHMA74k.net
PHP製サイトはフレームワーク使ってるけど
考えなしに機能拡張し過ぎたため
自分が入社した頃には既にコントローラーが大変なことになってて
このままじゃヤバイから書き直す事になった
>>234
なんか難しいのか
今時はDockerですぐ動く環境ができる感じじゃないの?
.NET CoreはDockerで作ったことは無いけど
PHPでテスト用の環境は作った事がある
238:デフォルトの名無しさん
18/01/07 21:13:58.77 5XHMA74k.net
バックエンドだけC#で書いて
Angular等をフロントエンドに使う事を推す人も居るけど
RazorViewより良いの?
AngularやReact、Vueは別にクライアント側でしか使えない訳じゃなくて
node.jsでサーバーサイドでも使えるらしい
239:デフォルトの名無しさん
18/01/07 21:27:07.65 X58Odkk6.net
Linuxでちゃんとした言語使いたいならJavaでいいだろ
言語機能が不満ならKotlin使えば>>232は全部満たしてるぞ
リプレースでやるにはDocker&.NET Core&C#全部新規導入なんてリスクが大きすぎるし、
成長という観点を込みにしてもそれだけのコストをかけるほど価値のある選択とは思えん
DockerってことはAWSかなんかだろ?
どうしてもC#に拘るんなら素直にWin鯖立てとけ
240:デフォルトの名無しさん
18/01/07 21:27:26.11 pcvnpBsv.net
SPAはサーバー負荷を抑えられるのが良いね。
せっかくのSPAフレームワークをわざわざSSRするのはメリットがよくわからん。
241:デフォルトの名無しさん
18/01/07 22:17:08.87 EnYFx2jS.net
>>237
なぜDockerからAWSになるんやwww
242:デフォルトの名無しさん
18/01/07 22:19:38.07 5XHMA74k.net
言語に関してはKotlinに変えるのもC#に変えるのも同様にリスキーな気はする
.NET Core 1.0が出てから1年半しか立ってないからエコシステムの充実度的には劣るかもしれないけど
何も無い訳じゃないよね
Windows固有の物使ってなければ今までの物も移植可能な訳だし
>>238
SEO的にはサーバーサイドレンダリングもした方が良いと聞く
243:デフォルトの名無しさん
18/01/07 23:00:33.14 6UmxljW6.net
フロントエンドもバックグラウンドもtypescriptが一番まともな仕上がりになる
従事者数が全然違う
フレームワークの開発者のレベルも違う
asp.net coreが10年もつとは思えん
MSがあっさり捨てて5年後はなくなってるかもしれない
asp.net coreがこれからだと思うのはセンスない
今も死んでるのになんで選ぶ?
244:デフォルトの名無しさん
18/01/07 23:07:23.71 yGWRqm9V.net
そらマルチプラットフォームに対応せにゃ生き残れんからやろ
あれ?Windowsじゃなきゃあんま美味しくねぇな?
詰んだな
245:デフォルトの名無しさん
18/01/07 23:43:28.08 PKM7GNQh.net
>>241
いまどき10年も同じテクノロジーを使えると思う方がおかしい
246:デフォルトの名無しさん
18/01/07 23:52:06.88 EnYFx2jS.net
>>241
>今も死んでる
ソース
247:デフォルトの名無しさん
18/01/08 01:16:56.62 KwTiDosF.net
本当に素晴らしいテクノロジーは登場とともに
コアなサポーターがつく
残念ながらasp.net coreは誰の噂にも上らない
そもそも知られてない
多分web開発者が100人いるとしても知ってるのは3人ぐらいだろう
web開発者
248:フ間ではASPというワードは別の意味でしかとらえられない
249:デフォルトの名無しさん
18/01/08 01:27:26.76 oFrueEmX.net
はいキチガイ
250:デフォルトの名無しさん
18/01/08 01:32:22.74 KwTiDosF.net
ASP.NET Advent Calendarが2016年まであったけど2017年は消滅した
251:デフォルトの名無しさん
18/01/08 01:33:16.77 KwTiDosF.net
>>246
どこのまともな大手企業がasp.net使ってるって?
252:デフォルトの名無しさん
18/01/08 01:36:46.96 tZ76zhIV.net
キチガイに触んなよ
253:デフォルトの名無しさん
18/01/08 01:38:06.32 KwTiDosF.net
asp.net coreがこれからだとか
web開発者の間で知名度が高いなんて思ってるほうがいかれてるわ
謙虚になって状況見ろよ
254:デフォルトの名無しさん
18/01/08 08:29:26.39 PHOgi6B0.net
言語なんて主要なDBとORMに対応しててCRUDが書ければ
好きなの使えば良い
255:デフォルトの名無しさん
18/01/08 09:42:56.16 uW1MVRIb.net
公式の.NET CoreのデバッガーはVisual Studio Code/Visual Studio/Xamarin Studioでしか動かせない
規約で禁止されてる
URLリンク(github.com)
JetBrainsのRiderは独自の実装を書いて動かしている
.NET Coreはなんか中途半端なオープンソース化だな
VSやXamarin Studio、Rider以外でデバッグするにはMonoしか無いって事なのか
でもMonoだとライブラリの対応がどうなのか
256:デフォルトの名無しさん
18/01/08 17:26:40.65 MM2bwnQX.net
EF Coreで[ConcurrencyCheck]属性を使って同時実行制御をしたいのですが
IQueryableをToList()で複数取得しようとするとTrackingされなくて困っています
SingleOrDefault()ならTrackingされて正しく動作します
やりたい事はデータをListで複数件取得して、それらの値を変更してUpdateRangeでまとめて更新したいです
どなたか解決策を教えてください
257:デフォルトの名無しさん
18/01/09 22:28:44.52 GTddlW8V.net
>>253
軽く試した範囲ではコンテキスト内ならListでもトラッキングされてるし
コンテキストまたいでもUpdateRangeで変更としてマークされて更新されたけど
勘違いじゃなければミニマムコードどっかに上げて
258:デフォルトの名無しさん
18/01/09 23:10:43.20 DIgE/yw0.net
ASP.NET以外にWebフレームワークってある?
Nancyぐらいしか見当たらない
他言語だと色々選択肢があるのに
259:デフォルトの名無しさん
18/01/09 23:28:00.30 i2N64X6y.net
迷わなくて楽じゃん
260:デフォルトの名無しさん
18/01/09 23:50:40.75 fgvZnukn.net
MVCの出来が良いからあえて他を選ぶニーズがない
261:デフォルトの名無しさん
18/01/09 23:52:55.17 V7ZjzcjU.net
>>255
ASP.NETの中にいろいろあるやろ
262:デフォルトの名無しさん
18/01/10 00:14:38.81 oFasEgAN.net
NancyがASP.NET MVCより良い点は
この辺に書いてあった
URLリンク(blog.jonathanchannon.com)
URLリンク(codeopinion.com)
・ルーティングが少ないコード量で書ける
・設定を出来るだけ少なくしている
・サーバーのレスポンスをテスト出来る
・TinyIOCで自動で依存関係を解決(他のIOCコンテナも一応使える)
・パイプラインフック(リクエストの前後で処理を実行)
・Content Negotiationで、ルートでResponse以外を返した時にResponseに変換
・何処でもカスタマイズ・拡張可能
ORMとかは付いてないから自分で好きなのを選んで使うスタイル
263:デフォルトの名無しさん
18/01/10 01:16:21.30 CFucH4eA.net
>>254
確かめて頂きありがとうございます
あれから試行錯誤して、OrderBy()の前にTake()を使うとTrackingされないことが判明しました
何故このような動作になるのか、どなたかご教授ください
264:デフォルトの名無しさん
18/01/10 02:31:16.64 lJNIeF4g.net
>>260
そんな動作にはならないから
お前の勘違いかお前が何か変な事してると思われ
とりあえずコード晒せや
265:デフォルトの名無しさん
18/01/11 20:18:43.43 IXbJ/o0c.net
1月の月例アップデートのKB4055532がおそろしくバグってるらしい
.net frameworkで文字化けしたり意味不明なエラーが連発したり突然アプリが落ちたりするそうだ
急にアプリの挙動がおかしくなったらまずそこに注意
266:デフォルトの名無しさん
18/01/12 16:30:11.62 VxcDYdZu.net
今C#でゲーム作る時unity以外で作れるフレームワークある?
267:デフォルトの名無しさん
18/01/12 16:31:56.51 OH7R1+qF.net
UnrealEngine4が使える。
俺はエアプだけど。
268:デフォルトの名無しさん
18/01/12 16:31:57.20 .net
ない
269:デフォルトの名無しさん
18/01/12 16:42:06.23 VxcDYdZu.net
3年前にXNAやってたけどもう意味ないよな?開発終了してるし、基礎勉強なら使えるかもしれないけど
270:デフォルトの名無しさん
18/01/12 17:13:36.62 +oVOGpJh.net
>>266
MonoGameがXNAのオープンソース化移植だからコードほぼそのまま動くで
271:デフォルトの名無しさん
18/01/13 12:28:38.59 V4m1sF41.net
C#で書かれたライブラリをネイティブコードにコンパイルして他の言語から使うって出来るんですかね?
ターゲットとなるアーキテクチャはIA32/AMD64系に限らずARM系なども含みます
MonoはLLVMを使っているらしいので出来そうな気もしますがそのような記事を見つけられず・・・
他の言語で使いたいライブラリはURLリンク(github.com)です(SVGをレンダリングしたい)
272:デフォルトの名無しさん
18/01/13 13:01:40.70 we00kWgL.net
C#を動かすにはプロセス内でホストするなり別プロセスなりで必ずCLRを起動しなければならないので、
アンマネージコードから普通に呼べてクリーンで自己実行なライブラリを作るのはどうやっても無理
273:デフォルトの名無しさん
18/01/13 15:41:26.57 qrxuDtvr.net
>>268
たぶんこれがやりたいことに近いハズ
URLリンク(github.com)
274:デフォルトの名無しさん
18/01/13 21:47:02.08 V4m1sF41.net
>>269
ありゃ、そうなんですか。.NET NativeやLLILC、SharpLangなどネイティブコードへコンパイルする処理系の
があったらしいのでネイティブコード化できるのかなと思ったのですがそう上手い話はないのですね
>>270
これはMono上で動いているライブラリを他の言語から使うラッパーでしょうか?
Monoが動く環境でないとダメか・・・
275:デフォルトの名無しさん
18/01/13 21:56:24.98 SF/1jAGz.net
ググったら普通にC++のSVGライブラリヒットするんだが・・・
276:デフォルトの名無しさん
18/01/13 22:33:22.57 qrxuDtvr.net
>>271
ああそうか、「他の言語から使う」条件しか満たしてないね。
ネイティブコードにコンパイルしたいって書いてあったね。
しゅまん、これはmonoの上で動くやつ。
277:デフォルトの名無しさん
18/01/13 23:01:40.46 V4m1sF41.net
後出しだけど情報を小出しにするのも問題が大きいだろうから現状を。長文失礼
テキストなどの平易なベクターデータ(線、箱、円、文字など)をラスターデータに変換する
ラスタライザーが欲しい。ラスタライズ動作をカスタマイズできるとなお良い
ラスタライズ動作をカスタマイズしたい理由は最終的に欲しいラスターデータが2値モノクロなので
アンチエイリアスの有無や線幅等を調整できる必要があるため
動作させるプラットフォームはWindowsやLinux等を考えているけどOS無しでの動作もあり得るかも
呼び出す側の処理系はCかインタプリタなど
278:ゥらC経由で呼ぶ予定 最初はHTMLのレンダリングエンジンを検討したけどChromiumにしろFirefoxにしろカスタマイズして 実装する的な例を見つけられなかったのと無題に大規模になることもあって断念 次点としてSVG単体での利用を検討しはじめてイマココ。ググってみるとSVGのレンダラーとして 見つかったのはlibrsvgと>>268くらい。前者はGPL/LGPL故に一緒に使用可能なライブラリが制限されるし 後者はC#なのでネイティブで使えない? う〜む。MonoってOS無しで動作させたり出来るのだろうか・・・ >>272 C++なSVGレンダラーってあったっけ・・・参考までにどれでしょうか?
279:デフォルトの名無しさん
18/01/13 23:05:29.28 we00kWgL.net
>>274
Y A G N I
280:デフォルトの名無しさん
18/01/14 01:30:55.83 3JD+q1Pj.net
>>274
OS無しも考慮するとなると、C#板ではキツイのでは?
CまたはC++板での相談を推奨かな。
281:デフォルトの名無しさん
18/01/14 08:49:46.58 9SaBamh2.net
>>274
librsvg はlgpl2としても使えるように見えるけど、何か問題あるん?
282:デフォルトの名無しさん
18/01/14 11:56:09.47 TQ+v9n4/.net
> テキストなどの平易なベクターデータ(線、箱、円、文字など)をラスターデータに変換するラスタライザーが欲しい。
WindowsならネイティブAPIのDirect2Dそのまんまなように思えるが
(最近だと部分的にSVGのサポートも入り始めた)
283:デフォルトの名無しさん
18/01/14 12:29:24.23 vdiXiAP2.net
OS無しもとか言ってる奴に
> WindowsならネイティブAPIのDirect2Dそのまんまなように思えるが
とか人の話を聞く気がないのか壊滅的に理解力がないのかどっちなんだろ...
284:デフォルトの名無しさん
18/01/14 13:03:40.79 7MpxOyR3.net
そこまでのマルチプラットフォームを求めるなら、
俺ならAWS LambdaとかでWeb API 作ることを検討するわ
285:デフォルトの名無しさん
18/01/14 13:12:54.33 TQ+v9n4/.net
>>279
> WindowsやLinux等を考えているけどOS無しでの動作もあり得るかも
そもそもそのへんハッキリしねえから選択肢の一つとして紹介しただけだしなあ
SVGの直接的なサポートは別としてレンダリングの細かい要求は満たしてるしね
286:デフォルトの名無しさん
18/01/14 14:04:54.87 dCYCQwP3.net
>>281
> Linux等を考えているけど
って書いてあるのに、バカの上塗り? w
287:デフォルトの名無しさん
18/01/14 15:16:42.86 XENUVEJC.net
>>282
こういう人に絡むだけで何も建設的なことを言わない(言えない)馬鹿、
生きてて楽しいのかね
288:デフォルトの名無しさん
18/01/14 15:29:59.95 DgdnagvN.net
> こういう人に絡むだけで何も建設的なことを言わない(言えない)馬鹿
自己紹介乙
289:デフォルトの名無しさん
18/01/14 16:50:35.10 iZ5qlkt1.net
いまどきオマエモナーとか何時代だよ
290:デフォルトの名無しさん
18/01/14 17:25:05.18 YC2cce4R.net
ぬるぽ
291:デフォルトの名無しさん
18/01/14 17:56:26.44 LoHxEWvM.net
OSを動かせるハードウェアを用意して>>270で行くかラスタライザーを新規作成するかのどちらかになるのかな
>>277
LGPLの波及範囲は諸説あってはっきりしないのでライセンスがらみのトラブルを回避する上でも避けたいです
292:デフォルトの名無しさん
18/01/14 19:20:57.34 pIEAW1SE.net
C#の話題ではないな
終了
293:デフォルトの名無しさん
18/01/14 20:44:54.53 ZtH88FLC.net
頭悪いから再開するぞ
よく見てろ
294:デフォルトの名無しさん
18/01/16 15:45:19.73 ZKrd/Rqh.net
MVC5で質問です。
スキャフォールディングのEditアクションでキー項目はテキスト
それ以外のみinputにしようとしています
ビュー作成直後は全てinputで作成されますが
その後、キー項目だけテキストに変えるにはどうしたらよいでしょうか?
EditorForをDisplayForに変えるとなにも表示されなくなりDisplayNameForに変えるとモデルのプロパティの属性のDisplayName
295:ナ設定した文字列が表示されてしまいます。
296:デフォルトの名無しさん
18/01/16 17:21:24.89 ZKrd/Rqh.net
解決いたしました
バインドされているモデルがnullなのが原因でした
しかしnullなのにEditorForだと前の画面の値が引き継がれて表示されてるんですよね
腑に落ちないところもあるのですが、、
ありがとうございました
297:デフォルトの名無しさん
18/01/18 06:35:33.53 GdcUDZY8.net
小さいrestサービスだからHttpListnerでWindowsサービスで作ったけど
素直にWebサーバー立てた方が幸せでしょうか
298:デフォルトの名無しさん
18/01/18 07:49:32.82 Ve4ndohO.net
社内利用の小さいやつならべつにそれでいいんじゃない?
299:デフォルトの名無しさん
18/01/18 08:28:58.34 8YG3n4Ol.net
クラウド使えよ
AWS & API Gateway & Lambdaとかなら仮想マシンすら必要ないぞ
300:デフォルトの名無しさん
18/01/18 09:59:22.28 MkIzNEag.net
>>294
オーバースペックやろ
知らんけど
301:デフォルトの名無しさん
18/01/18 10:50:13.65 P7FxR2VG.net
クラウド使いたいけど私の会社はまだ許可されてないのです
多分来期予算取れるからその時移行出来るようにはしたい
今後はわからんですが今のところユーザー少ない&社内のみなのでこれでいいかなぁ
気になるのは同時に接続来たらそれぞれスレッドが別になるのでしょうか
302:デフォルトの名無しさん
18/01/18 10:58:27.27 2PwBukRJ.net
クラウド工作員うぜーな
303:デフォルトの名無しさん
18/01/18 11:12:16.64 8W9zeKhd.net
>>295
サーバーレスなら自分でサーバーやサービス作るよりよっぽど簡単だぞ
金も社内のみなら余裕で無料枠に収まる
304:デフォルトの名無しさん
18/01/18 12:01:18.90 9519fNi8.net
無料枠とかあるの?
305:デフォルトの名無しさん
18/01/18 12:05:49.79 GUMQumqd.net
サーバーやクラウドの運用はC#の話なのか
306:デフォルトの名無しさん
18/01/18 12:14:21.69 +BBtUcLA.net
答えられなくはないけどスレ違いと言われればそうだな
307:デフォルトの名無しさん
18/01/18 14:38:42.96 QV0p8ilw.net
>>298
何と比較してるかよく考えてごらん
308:デフォルトの名無しさん
18/01/25 07:27:02.04 sgwDXLm5.net
自分はPHPとJavaScriptしかやったことがないので、WindowsのGUIアプリ開発は初めてです。
WindowsフォームとWPFをちょっといじりましたが、
WindowsフォームはUIをマウスで配置して動作を与え、
WPFはHTMLのようにUIはMLで記述する感じであとはフォームとやることは同じかなって思ったのですが、
この両者の違いはフレームワークの違いだと思いますが、
自分的にはWebからきたのでWPFのほうがしっくりくるのですが、
調べると重いとかで流行ってないらしいので、情報量的にもフォームのほうがいいのでしょうか?
UWPはインストールが面倒だったのでスルーしましたが、今からならUWPがいいですか?
あとC#ではC++にあるらしいWin32プロジェクトは出来ないのでしょうか?
どれ選べばいいのかわからなくて困っています。
309:デフォルトの名無しさん
18/01/25 09:28:09.18 b1M/YkaV.net
要件次第
310:デフォルトの名無しさん
18/01/25 09:56:25.38 NsBjyJ7C.net
Webの経験あるんならElectronでいいんじゃない?
WinFormsもWPFもとっくの昔に開発終了してるから今更新しく入るのはお勧めできないな
311:デフォルトの名無しさん
18/01/25 10:37:24.83 AmkE5KAD.net
Electron使うならC#で在る必要性がないような・・・・
312:デフォルトの名無しさん
18/01/25 11:29:45.90 sgwDXLm5.net
レスありがとうございます。
>WinFormsもWPFもとっくの昔に開発終了してるから
それは衝撃です。
ビルドしてテストした感じ前者はビルド速度もリソース消費も良く、UIも期待通りで、
後者はビルドが遅くて、UIも表示通りにならなかったり、テストするのは面倒だなという印象でしたが、
もう改善が見込めないんですね。
UWPはWPFよりっぽいので、心
313:zですが、UWPをインストールして触ってみます。 いずれXamarinやUnity使ってみたいのもあって、C#の勉強をしてるので、 しばらくはVSでWindows用のアプリケーション作りながら頑張ってみます。
314:デフォルトの名無しさん
18/01/25 11:55:18.40 Fo/ckcIY.net
割と最近になってWinformsにHiDPI対応強化やWPFもスタイラス対応強化が入ったりしてるから
とっくの昔に開発終了は語弊があるけどね
とはいえMS自身の都合による突発的な更新という意味合いが強く
積極的にフィードバックを受けての修正や強化というフェーズはUWP以外終えてる感はある
.NETという基盤やIDEは優れているのに肝要のGUIフレームワーク選びでgdgdになるのマジうんこ
315:デフォルトの名無しさん
18/01/25 16:45:28.98 89fISl4P.net
UWPとWPFは似たようなものだから、どっちから学習しても問題なし。
覚えたことは簡単にUWPからWPFまたはWPFからUWPに移行できる。
そりゃ、コントロールとか微妙に違ったりすりけど、大きな問題にならんだろう。
xamlの機能に違いがあったりと、高度な事をやろうとすると差がでてくるけど。
だから、学習フェーズの普通の事する分にはどっちから入っても問題なし。
316:デフォルトの名無しさん
18/01/25 16:51:20.84 89fISl4P.net
>WinFormsもWPFもとっくの昔に開発終了してるから
後、WPFにもFluent Design対応ぐらいはくるんじゃないの?
317:デフォルトの名無しさん
18/01/25 17:40:23.41 wJAGA7/R.net
>>310
そういうお仕着せ的なものを持ち込むのはWPFの思想にそぐわないからそれはないよ
WPF的には、開発者が望むならFluent Designを実装できるだけの機能を備えている、で十分
そういうDIYな思想こそがWPFが使い辛いと言われる最大の原因でもある
318:デフォルトの名無しさん
18/01/25 19:10:14.30 89fISl4P.net
去年のBuild2017のセッションの資料に明言じゃないけど、それをにおわせる
ような事が書いてあったんだけどね
319:デフォルトの名無しさん
18/01/25 20:47:58.93 4wfdsI+N.net
>>311
備えているならせめてForm時代と同じことさせてくれよ
なんでListViewの罫線自分で描かなきゃいけないんだよ
320:デフォルトの名無しさん
18/01/26 09:47:56.58 fiAB4bjj.net
WPFはおわったんだ
それをまた何十人〜何百人のチームを作ってわざわざ新しいものを実装するだろうか?
321:デフォルトの名無しさん
18/01/26 21:19:07.38 WiPs5FQl.net
.Net Frameworkのバージョンアップの内容追うと、WPFも地味に改良されてるけどね。
322:デフォルトの名無しさん
18/01/28 22:51:48.28 EAfEAz/a.net
開発が終わったとか時代が終わったとか言われても趣味でやる分にはWinFormが一番楽
仕事でやる人は逆に何でも対応しなきゃならないだろうし
323:デフォルトの名無しさん
18/01/29 02:02:18.45 0ju9RGha.net
winformしたできんのだけどどうしたらええねん
324:デフォルトの名無しさん
18/01/29 13:27:25.02 vGlopv/e.net
あと10年は使えるだろ
次ページ最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
286日前に更新/232 KB
担当:undef