ふらっと C#,C♯,C#(初心者用) Part153

■ このスレッドは過去ログ倉庫に格納されています
2021/12/13(月) 22:53:21.18ID:dhjmiKBp0
!extend:checked:vvvvv:1000:512
次スレを立てる時は↑を2行冒頭に書くこと(1行分は消えて表示されない為)

「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスや酔っぱらいレスはやめてください
>>980を踏んだ人は新スレを建てて下さい。>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。

■前スレ
ふらっと C#,C♯,C#(初心者用) Part152
http://mevius.5ch.net/test/read.cgi/tech/1629888256/
■関連スレ
C#, C♯, C#相談室 Part94
http://mevius.5ch.net/test/read.cgi/tech/1553075856/
■コードを貼る場合は↓を使いましょう。
https://ideone.com/
https://dotnetfiddle.net/
■情報源
https://docs.microsoft.com/ja-jp/dotnet/standard/class-libraries/
https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/
https://docs.microsoft.com/en-us/dotnet/standard/class-libraries/
https://referencesource.microsoft.com/
https://source.dot.net/
・Insider.NET > .NET TIPS - @IT
https://www.atmarkit.co.jp/ait/subtop/features/dotnet/dotnettips_index.html
・DOBON.NET .NET Tips
https://dobon.net/vb/dotnet/index.html
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
2022/01/01(土) 17:38:08.24ID:lDil4oeBr
MSは何も示せなくてユーザーたちが独自になんとかしようともだえてる
2022/01/01(土) 17:52:27.24ID:cbVZORXia
>>304
やっぱりあいかわらずそうなんだね。
今後はこういう展開をしていきます、みたいなの(横文字で何って言ったっけ?)
も一切ないんだっけ。
2022/01/01(土) 17:56:51.18ID:gOXFnTf60
UWPってアレ結局なんなん?
MSのうさんくさい説明見ても正体がさっぱり掴めんわ

ちなXAML使い
2022/01/01(土) 19:05:01.23ID:Je/lt7i4a
>>302
IEコンポーネントは初期設定がIE6になってるだけで、その制限解除するだけで使えるんじゃないのかな?
設定しないと使えないのは多かったけど、設定して使えないものがあった覚えはないな
2022/01/01(土) 19:09:06.13ID:pK4dI97g0
>>307
IEコンポーネントはパフォーマンス悪すぎて大変だったんよ。本当に悪かった。
WebGL 2.0は全くダメだし。
そしてごく最近の記法が使えないので、古い書き方で苦労するかトランスパイラで相当トランスパイルしないといかんのだけど、これもこれで大変。
2022/01/01(土) 19:38:20.84ID:FXZWUiqn0
そういえば、IEのコンポーネントって他プロセスから普通にDOM掴めたけど今のはそんなこと無いよな、さすがに。
310デフォルトの名無しさん (ワッチョイ ade6-X9o+)
垢版 |
2022/01/02(日) 02:26:12.88ID:XjOyUWVU0
>>308
VML使えや
2022/01/02(日) 08:39:01.25ID:i8dUNFkB0
>>309
今のIE11でも変わらない。Chromium Edgeは無理。
2022/01/03(月) 00:27:24.71ID:qrnm2syfM
結局DelphiやVB6を超えられなかったね
2022/01/03(月) 09:45:55.35ID:eQW2AhJK0
ということにしたいのですね
2022/01/03(月) 09:53:42.79ID:Nty+tcHi0
もったいないので私にください
2022/01/03(月) 10:54:19.16ID:SmC4rDQma
はつみみです。
2022/01/03(月) 13:30:35.98ID:lKbCt2OW0
C#でNewtonsoft.Jsonを使用して
[272,1496922300000,1496934000000,"Y3913",true,"XA","XA","HSZ-HAC","HAC-DFS-WCY",1496913600000]
のようなJSONを作成できますか?
(数値と文字列の混合配列)
2022/01/03(月) 13:46:53.86ID:AMytSBf5a
名前なしのカンマ区切りだったらそれはcsvとして処理した方がはやいんじゃないのか
2022/01/03(月) 14:44:00.30ID:5Qqik4MO0
>>316
全部文字列でいいじゃん
2022/01/03(月) 15:23:04.22ID:lKbCt2OW0
echartsのガントチャートのデモです。
https://echarts.apache.org/examples/en/editor.html?c=custom-gantt-flight

このデモ用のデータが
https://echarts.apache.org/examples/data/asset/data/airport-schedule.json
なんですが、これをバックエンドのC#から渡したいのです。

>>316はJSON構造の一部で、他に名前付きのデータも渡します。
なのでCSVはそぐわないかと思われます。
2022/01/03(月) 16:42:23.19ID:JMA8ZT+Nd
>>319
CSV一行分をjsonのValueとして持てばいいんだよ
2022/01/03(月) 17:00:56.51ID:0xi3No7I0
var objs = new {
hoge = "hoge",
fuga = new object[] { 272, 1496922300000, "Y3913", true, "XA" },
};
var json = JsonConvert.SerializeObject(objs);
できない理由はないけどなんか他に条件とかありそうでアレだな
2022/01/03(月) 18:09:00.90ID:lKbCt2OW0
>>321
おお、出来るんですね。
ありがとうございます、試してみます
2022/01/03(月) 18:12:39.51ID:TMV+x4l+0
var json =

結局何の型だよってイライラくるよね
2022/01/03(月) 18:57:22.48ID:GjMIBEAT0
>>323
Visual Studioだとvarの上にカーソル持っていったら型が表示されるだろ
2022/01/03(月) 20:14:18.47ID:pwAwOJBp0
var: 無能発見機
2022/01/03(月) 22:52:28.05ID:TMV+x4l+0
型が分からなくてもソースが読み書きできる人が羨ましいわ。
どういう脳の論理構造してるのだろう。分からないまま読み進めるとかイライラしないの?

昔、『菊次郎の夏』って映画見て、映画見ながら、だから菊次郎って誰だよ?って
最後までイライラして発狂しそうになったの思い出したわ。ほんと糞な脚本だと思ったわ。
2022/01/03(月) 22:59:05.73ID:/qjDMXVn0
右辺見ろよ
2022/01/03(月) 23:54:17.33ID:/ROio/0MM
インテリセンスとAPIデザインが優秀って前提はあるだろうね
適当に.で繋げてけばなんとなくコードが出来上がる
間違ったらコンパイルエラーになる
だったらもうそれで型名は書かなくてもいいじゃない

型付スクリプト言語はその辺がまだまだ雑魚なんで型名をしっかり書かないと間違えるようにできてる
2022/01/04(火) 00:14:59.85ID:fY9OVGa4a
>>326
いや、型がメソッド名や右辺式から推測しづらいと思ったら
var使うなという方針は基本的には間違ってないと思うよw
2022/01/04(火) 00:16:29.87ID:2Grj8syS0
>>326
なんでvarの上にカーソル持って行かないの?
2022/01/04(火) 00:23:52.35ID:ufcanjsed
>>330
俺はvar推奨派だが、コードレビューでGitHub上で読むとかあるだろ?
コード工の数が多いといちいち全部pullしてVSで開くとかやってられない
2022/01/04(火) 02:20:28.03ID:f9obKWjH0
>>326
わからないままに何かしてない。
よめばわかるだろ。
2022/01/04(火) 09:52:16.17ID:2gpItayR0
326はC#の話じゃなくてジャバスクとかの話してるんだろ
2022/01/04(火) 10:52:36.05ID:+AHJD1dV0
inai inai var !
2022/01/04(火) 11:04:23.12ID:Qpyz6D0Nd
>>333
そういうことか
型推論は型が確定してるのに意味不明なこと書いてるなと思ってた
2022/01/04(火) 11:48:21.13ID:Oz0E0ZFa0
型が分からないとほんとイライラくるよな。
今回の反応でスルーできる奴の脳みその構造がだいたい分かってきたわ。わかったつもりで何も分かってない。

ジャバスクの話だ!! そういうことか!!! ←こいつらの脳の構造はこれなんだよ。馬鹿かこいつら…
2022/01/04(火) 11:52:23.41ID:Hrzc5R7N0
>型が分からないとほんとイライラくるよな。
varは型が確定しています
イライラしているのはあなたがバカなだけ
2022/01/04(火) 11:56:22.08ID:698Ta9DA0
>>337
“いつ”確定するの?
2022/01/04(火) 11:58:40.79ID:Oz0E0ZFa0
ジャバスクの話だ!!! varは型が確定している!!! ほんと馬鹿かこいつら…
2022/01/04(火) 12:00:45.54ID:K01QBlyFd
>>338
コーディングした時点で確定してるよ
varの上にカーソル持って行ったら確認できるだろ
2022/01/04(火) 12:01:01.01ID:g8h7/5Pi0
>>321から>>323ときてジャバスクとか後付感半端ないわ
こういうのとは仕事したくねーわw
2022/01/04(火) 12:07:12.39ID:kSsP1HEHa
>>323見たときに
var json =
こうあったとき、デコード後のclassが入ってることあったり、json stringが入ってたり、varやjsonなんて型や変数名だとわけわかんねーよ!
って話かと思ったら全然違った。なんだこの流れ・・・
2022/01/04(火) 12:11:24.66ID:Oz0E0ZFa0
これこれ。>>341 おれは一言もジャバスクなんて言ってないのにジャバスクの話にされて、
さらにはおれがジャバスクを後付したと妄信し、いきなり仕事したくないとかキチガイ妄想炸裂。
仕事先でこんなキチガイいたらガチで名誉毀損で訴えるわ。

これが型をスルーできる奴の脳の構造。リアルでアホだろ、こいつら…
344デフォルトの名無しさん (ワッチョイ 9901-QLHw)
垢版 |
2022/01/04(火) 12:12:43.55ID:IgSyCTXi0
※現在は削除されています
https://i.imgur.com/1WGlGRS.png
2022/01/04(火) 12:14:13.14ID:K01QBlyFd
>>343
TypeScriptおすすめ
2022/01/04(火) 12:23:30.92ID:CklunmhzM
TypeScriptは型ヒント付きスクリプト言語にはよくあることだけど型が嘘をつけるので積極的に使わない方がいい
「型がついてるから安心だ」と思っていたら実行時に違う型の値が入っていることがよくある
なんなら生のJavaScriptの方が「型がないから全ての変数が信用できない」という前提に立てる分まだマシまである
2022/01/04(火) 12:29:36.62ID:K01QBlyFd
>>346
それ言い出すとC++もreinterpret_cast多用で型の嘘つけるからなあ
2022/01/04(火) 12:42:28.79ID:rprq1MIMM
>>347
まさにそれだね
cppは名前付きのキャストを使い分ける習慣が広まってるから状況は多少、マシ
TSにはanyとかいう負の遺産がある
それにJSはそれ自身ではできることが少ない言語なのでインフラapiコールに頼りがちだ
そこでanyを使いたくなくても多用するのでとにかく間違えやすい
自分がうっかり間違える可能性
チームメンバーが間違える可能性
ライブラリ作者が間違える可能性
とにかく間違いが起こりやすい
なのでTypeScriptは使わないほいがいい
2022/01/04(火) 12:53:18.36ID:rkCZbU1/0
・間違ったコールバックの型付け
・間違ったasの使用
・間違った.d.tsの使用
・間違ったユーザー定義タイプガード

TypeScriptで肩を間違える可能性があるのはこんなところかね。
まぁ、自分で使いこなせないものを使わない方がいいってのはその通りだが、
他人も同じように使いこなせないわけじゃないしな。
2022/01/04(火) 13:23:06.07ID:b15zgk0OM
>>349
間違える余地が在ることが問題
特定の個人が使いこなせるこなせないという低次元な議論じゃない
型Aと書いたものが実際にはAでないという可能性が生じた時点であらゆるコードが信頼性を失い
その検証のために心労とコストが増えて
そして実際にバグが増える

C#では例えば「DateTimeと書いた変数に実際にはstringが入っているかもしれない」などと考えてコーディングする人は誰もいない
C#ではよほどのことがなければ基本的に型が嘘をつかないからそれで上手くいく
DateTimeと書かれたらそれはDateTimeであってstringであることを考慮する必要はない

しかしTypeScriptは違う
型は平気で嘘をつく
Date型と書いた変数が実際は文字列だろうが数値だろうがお構いなしだ

TypeScriptでは型が嘘をついていないことを確かめるには
その型が嘘をついている可能性があるという前提でバリデーションを追加するか
依存してるライブラリの内部の隅々までソースを追いかけるか
そういった対策をしなければならない
それはあまりにも非生産的だ
2022/01/04(火) 13:31:23.12ID:b15zgk0OM
function ExternalLibFunc(): string

function example() {
const s: string = ExternalLibFunc();
if (typeof s === “string”)
throw new Error(“type errro”);
// do something
}

これが安全なTypeScriptコード
stringと宣言されたものを本当にstringかどうか確かめなければならない

この確認はバカバカしいと思うがやらなければバグを踏む可能性がある
でも全てを確認するなんて大変だ
だからみんな確認を怠る
そして実際にバグが発生する
そういう言語なんだTypeScriptってのは
2022/01/04(火) 14:02:28.93ID:4jDgn5Qw0
Form1csにイベントがたくさんあるので行数が多くなってしまうのですが
部品ごとにファイルを分けてコードを書く方法を教えてください
2022/01/04(火) 15:10:27.49ID:v2mo/5h3a
>>352
メニューやツールバーみたいのがあったら
イベントハンドラの数が増えること自体は仕方ない。

行数が増えて困ることは目的の場所を探しにくくなることだから、
対策は#regionディレクティブをうまく使って分類することぐらい
2022/01/04(火) 15:15:26.98ID:2Grj8syS0
>>352
partial class
2022/01/04(火) 15:40:55.02ID:y9M4FwJ2M
>>352
void HogeEvent(object s, EventArgs e) {
//長いコード
}

↑これを
↓こうする

void HogeEvent(object s, EventArgs e) {
_hoge.DoSomething();
}

class Hoge {
public DoSomething() {
// 長いコード
}
}
2022/01/04(火) 16:14:54.64ID:3sRZKpnOa
>>350
そうは言ってもc#だってobjectや継承あるからな・・・
2022/01/04(火) 17:04:00.85ID:BWSRqAyGM
>>350
ネイティブ呼び始めたら嫌でもチェックせんか?
タグ付きユニオンとか使い始めたらどうせそうなるし。
2022/01/04(火) 17:29:19.72ID:XgG7cDH40
なんだ動的型付け言語が嫌いなだけか
2022/01/04(火) 17:41:00.66ID:h9ISFI6AM
>>356
全く意味合いが異なる
2022/01/04(火) 17:42:21.35ID:h9ISFI6AM
>>357
本来バリデーションが必要がないところでバリデーションが必要になることが大問題
2022/01/04(火) 18:00:52.01ID:v2mo/5h3a
それはバリデーションじゃなくてバグのチェックだねw
2022/01/04(火) 18:24:36.74ID:h9ISFI6AM
そだね
TypeScriptdではそういうことも必要になってくる
言語上の欠陥なんだけどランタイムがJSだから永遠に解決しないだろうなこれ
2022/01/04(火) 18:24:37.24ID:rkCZbU1/0
>間違える余地が在ることが問題

完全無欠な言語以外は認められないと?

>型Aと書いたものが実際にはAでないという可能性が生じた時点であらゆるコードが信頼性を失い

どういう場合にそのようなことが起きるかがわかってないんだろうね。結局使いこなしの問題。
2022/01/04(火) 18:27:22.35ID:h9ISFI6AM
>>363
完全無欠な言語しか使わないとまでは言わない
ただ大きな欠陥のある言語は使いたくない
感覚としてはその程度だね

どういう場合に起こるか?
それはあらゆる場面で起こりうる
ライブラリすら信用できない
2022/01/04(火) 20:53:29.42ID:f9obKWjH0
>>360
本来バリデーションは必要なのに必要じゃないと思い込んでるだけだろ。
カナリア置いたりした経験無さそう。
2022/01/04(火) 20:55:06.78ID:f9obKWjH0
>>364
あるゆるは言い過ぎでは?
ほとんどの場合信頼境界を越えるからかと。
367デフォルトの名無しさん (アウアウウー Saa5-zIXK)
垢版 |
2022/01/04(火) 21:33:12.76ID:e29mAngZa
formsのchartを使ってるんだけど、20系列くらいを100ms以下でリアルタイム更新って厳しいのかな
色々試したけど更新にどうしても時間がかかる。。
2022/01/04(火) 21:37:51.18ID:I8DXoUzs0
>>365
c♯においてdatetime型の変数の中身がdatetime型以外である可能性があるの?
本来必要なバリデーションって何よ?
2022/01/04(火) 21:44:14.34ID:rkCZbU1/0
>>364
Cのポインタだって使い方を間違えたら正しい型を示さないことになるし、C自身も安全でない言語と見做される
こともあるが、それを分かったうえで正しく使う人はいるし実際広く使われている。そういうこと。
2022/01/04(火) 21:58:28.71ID:f9obKWjH0
>>368
外部のAPIで1899年以前を扱いうる場合。
2022/01/04(火) 22:45:31.35ID:mTPUUbcD0
>>367
サードパーティ製のチャートを探すことをお勧め
詳しくないから具体的な名前は特に挙げられないけど
とりあえずScottPlotって名前を最近見かけたので試してみては
しかし20系列もあると読みづらそうだな
2022/01/04(火) 22:57:39.12ID:xZMfmUxua
>>367
ただの折れ線グラフとかでビジュアル的に凝る必要がなければ
UserConrolから自分で作った方が早いかもね。

昔散々そういうのやってたけど、やってみると案外簡単だ。
WPFを選択するとパフォーマンス問題にぶち当たるから注意。
2022/01/04(火) 23:04:51.13ID:hJBi5qqI0
おすすめ本あります?
アマゾンで独習を見たのですが第4版は不評、第3版おすすめとなってたんですが
2010年出版っというのが引っかかっているので他を探しています。

スキルはPythonでPyGameのサンプルを打ち込みつつ、解説を見て勉強してるレベルです。
その他言語の経験はなし!
2022/01/04(火) 23:13:01.18ID:0nFT+Tq8M
>>365
違う
本来バリデーションは必要ないのにTSでは(というか型がゆるゆるのスクリプト言語全般だが)余計なバリデーションが必要ということ

string x = func();
と書いた時にC#ではxが本当に文字列であることを検証する必要はない
nullになっていないか、文字列が特定の書式を満たしているか、といった心配はあるだろう
しかし、xにintが入ってる可能性は考慮する必要はない

TSではxにnumberが入っているかも、という可能性を考慮しなければならない
これが本来やらなくていいはずのバリデーションだ
これは型が嘘をつくから起こりうること
TSの代表的な欠陥の1つだ
2022/01/04(火) 23:14:48.44ID:0nFT+Tq8M
>>369
詭弁
話を逸らすな
2022/01/04(火) 23:19:57.46ID:Oz0E0ZFa0
var x = func();
var y = x.func();
型が分からないとイライラくるよね。
スルーできる奴の脳みそってそれをすべて妄想で埋めてることが社会実験で実証された。
2022/01/04(火) 23:20:34.56ID:rkCZbU1/0
>型が嘘をつく

この言い回しをよっぽど気に入っているようだけどw当然TypeScriptが勝手に嘘をつくわけはなくて、
嘘をつかせたのはそれを使うプログラマ自身だわな
2022/01/04(火) 23:24:23.97ID:Hrzc5R7N0
>>376
それはメソッド名が糞なだけだよ
2022/01/04(火) 23:30:10.65ID:r+SDF27Td
わざわざ宣言した行まで戻って型確認するのか
2022/01/04(火) 23:30:19.98ID:QHt6N4Fh0
相変わらずコードが読めてもテンプレ読めない人が多いな
2022/01/04(火) 23:36:38.21ID:0nFT+Tq8M
>>377
TSが勝手に嘘をつくことはないがC#と比べて嘘をつかせるように導くのに長けている
プログラマは世界中に沢山いてTSを使うと漏れなくその脅威に晒される
また彼らが作成したライブラリにも嘘が潜んでいるかもしれない
2022/01/04(火) 23:58:26.60ID:f9obKWjH0
>>374
違わないよ。
全てTSの中であればNumberであることが担保されているのは、全てC#の中である場合と同程度に正しい。
C#の場合でも信頼境界を越えるのであればその可能性は考慮しないといけないし、TSの場合でも信頼境界を越えないのであれば気にする必要は無い。
ましてやTSというかJSはシングルスレッドなので別スレッドに壊される事も無い。
2022/01/05(水) 00:01:01.66ID:fuEg19Cq0
>>381
お前信頼境界って言葉一切ググらずに喋ってるだろ。
言われたことぐらい理解して反論してこいよ。
2022/01/05(水) 00:50:54.28ID:JsfvM5KJM
>>382
全てTSでも型が保証されない
最も簡単な事例は
const x: string = 100 as any
もちろんこんなコードを書く人はいないが
複雑で膨大なアプリケーションコードを扱うプロジェクトのなかで誰一人としてミスをしないかというと
そんな保証は全くなく型に嘘をつかれることになるだろう
2022/01/05(水) 00:51:02.44ID:JsfvM5KJM
>>383
ブーメラン
2022/01/05(水) 00:56:20.83ID:fuEg19Cq0
>>384
それはC#でも同じでしょ。
2022/01/05(水) 00:59:38.17ID:JsfvM5KJM
C#ではI/Oが生じる場合にも型が嘘をつくことはない
例えばこうだ

int x = Parse<int>(inputStream);

パースエラーにより実行時に例外が発生することはある
それはどの言語でも起こりうることだ
しかし、依然としてxにstringが入ったり、DateTimeが入ったり、という、TSでは普通にあり得る悍ましい挙動を示すことは無いのだ
なぜならC#はTSと違って型が嘘をつかないから
C#の型は信頼できる
TSの型は嘘つきで信頼できない
2022/01/05(水) 01:00:08.39ID:fuEg19Cq0
>>384
大規模アプリ開発では、何層もの見えない層があった結果これが起こる。
オブジェクトの型を破壊的に変換 - C#と諸々」でググってみ。
2022/01/05(水) 01:00:59.54ID:fuEg19Cq0
>>387
じゃあTSはどうしてxにStringやなにがしかが入るの?どこで入れてんのよ?w
2022/01/05(水) 01:10:21.43ID:JsfvM5KJM
>>386
全く異なる
C#ではdynamic、リフレクション、コード生成を使えばコンパイラの検証を回避して、間違った型の変数に値を設定できる
しかし、C#でこれをやると実行時にエラーになるのだ
TSで何事もなく処理が進むのとは、全く趣が異なる
そう、TSではstringと指定した筈の変数にnumberやDateの変数が入ったまま、何事もなく進んでしまうのだ
これは本当に恐ろしい挙動だ
つまり、バグを仕込んだところから、しばらく処理が進んだところで被害が顕現する、ということだ
これはまるで、潜伏期間の長いコロナウイルスのように厄介な特性だ
この挙動はC言語などではよくあるものだったが、原因と結果が離れているのでデバッグがしにくい、とのことで先人達は大いに苦しめられたものだ
まがりなりにも後発の言語であるTSが、大昔の言語設計と同じ失敗を繰り返しているのは残念でならない
2022/01/05(水) 01:17:22.12ID:JsfvM5KJM
>>388
低レベルなメモリアクセスでランタイムを破壊できるのはどの言語でも当たり前のことだろう
TSのように低レベルメモリアクセスでもなんでもない、ただの代入で型安全を破壊できるようなものと同列に扱うべきではない
2022/01/05(水) 01:19:07.95ID:JsfvM5KJM
>>389
困ったことにTSではどこででも起こりうる
だから欠陥言語なんだよ
C#のように低レベルメモリアクセスで無理やり破壊すればできるよ、といった次元とはわけがちがう
2022/01/05(水) 01:46:29.20ID:lnjYKBBj0
>>379
varの上にマウスカーソル合わせてツールチップに表示される型を見るだけ
2022/01/05(水) 07:33:07.78ID:OXnyWrYu0
>>384
既に>>349で挙げているがそこに注意してプログラミングすればいいだけ。
お前は馬鹿だからそれができないんだろうが世の中の人間がみなお前と同じように馬鹿なわけではない。
2022/01/05(水) 07:38:49.44ID:t5pkfnoc0
JSなんて使いたくて使ってるやつはいないって事だよ
ほかに選択肢がないから仕方なく使ってるだけで

そもそも本来TSのようなトランスパイラはこの世に存在し得ない存在
2022/01/05(水) 09:23:21.76ID:bvaGXVet0
なんでc#スレで一生懸命TSの悪口言ってるの?
2022/01/05(水) 09:53:21.58ID:SNzZltS0M
欠陥指摘できる俺すげー君だろw
スルーしとけ
398デフォルトの名無しさん (エアペラ SD2d-miAB)
垢版 |
2022/01/05(水) 09:57:56.22ID:5ORhcVX2D
WinFormのlistViewをタブレットで使いたいのですがlist部分を指で上下してlistをスクロールする事は出来るでしょうか
スクロールバーで上下出来るのですがスマホのように出来ないかなと
2022/01/05(水) 10:15:33.57ID:Zzh6nSy3M
>>394
挙げられたリストでは全く足りない
こういう認識の甘さがバグを仕込むキッカケになるのだろう
そもそも人間は間違える余地があれば、いつか必ず間違える
注意してれば大丈夫、などという考え方では到底ダメだ
2022/01/05(水) 10:17:21.15ID:Zzh6nSy3M
>>396
しつこく返してくる奴がいるから仕方なく付き合ってやってる
そいつがTSの型は安全でないという当たり前の事実を素直に受け入れれば俺もこんなレスバしなくても済むんだが
2022/01/05(水) 10:34:58.47ID:TbL+VltAd
TypeScriptなしではJS開発やってられなくなってしまったな
特にチーム開発
2022/01/05(水) 11:00:24.24ID:dUhlmVC50
>>398
一応標準でサポートされてるはずだけど
なんかスクロール遅いし慣性の扱いが下手糞だけど…
2022/01/05(水) 11:06:50.05ID:llHLsWPPp
>>400
おまえは相手がうんと言うまでスレチ議論続けるつもりか
2022/01/05(水) 11:43:03.34ID:93Qk8F8ua
例えばリストビューを作るときにアイテムのTagに日時を代入しとく
そうしたら選択したアイテムの日時がすぐにわかるから。こんなのはよくやる手法だよね

で、実際にアイテムがクリックされたときにTagを読んで日時を取得しようとしたらstringだったりDateTimeだったりして型エラー。バリデーションwが必要になる
こんなの(アホがプログラミングしたら)c#でも日常茶飯事だからな
tsでも同じ。アホがプログラミングしたらバリデーションwは必須だし、普通にプログラミングしたら不要
■ このスレッドは過去ログ倉庫に格納されています