21/12/30 21:33:00.94 yBt1j67p.net
>>986
ちげーよ
1030:デフォルトの名無しさん
21/12/30 21:36:23.80 yBt1j67p.net
JavaやC#ではこういう事は起こらない
正確には低レベルAPIでメモリを不正に書き換えれば起こせるが無理すれば起こせないこともないと言った程度
JavaやC#ではXがfooという文字列型の属性を持っていてxxxの戻り値の型がXであると書いてあったらそれを信用していい
JavaやC#は型が嘘をつかないからだ
1031:デフォルトの名無しさん
21/12/30 21:37:07.94 XEA11GKy.net
>>987
?
おめーのtscはそれコンパイルエラーにしてくれないの?
1032:デフォルトの名無しさん
21/12/30 21:39:39.80 rc2c+xCv.net
>>99
1033:0 本当に恥ずかしいからお前はもう黙ってろ
1034:デフォルトの名無しさん
21/12/30 21:39:49.15 yBt1j67p.net
>>990
しない
1035:デフォルトの名無しさん
21/12/30 21:42:03.35 18t9WvJQ.net
そんなにTSが嫌いならずっとJavaなりC♯なり使ってれば良いじゃん
1036:デフォルトの名無しさん
21/12/30 21:45:32.05 XEA11GKy.net
>>992
コンパイルエラーにならない function xxx() の例よろ。
1037:デフォルトの名無しさん
21/12/30 21:57:10.00 hxNkeOah.net
>>993
そだね
選択権があるプロジェクトなら必ずそうしてるよ
1038:デフォルトの名無しさん
21/12/30 21:59:52.63 hxNkeOah.net
>>994
function xxx(): X {
return {
foo: bugLib.getStringValueEvil();
}
}
1039:デフォルトの名無しさん
21/12/30 22:09:49.35 XEA11GKy.net
>>996
?
bugLib.getStringValueEvil() がstringと宣言されていればコンパイルが通るけどそっちが嘘だったって話?
1040:デフォルトの名無しさん
21/12/30 22:21:35.89 hxNkeOah.net
>>997
そう
1041:デフォルトの名無しさん
21/12/30 22:24:35.31 XEA11GKy.net
じゃあ bugLib.getStringValueEvil() はどうやって嘘をついたわけ?堂々巡りだが。
1042:デフォルトの名無しさん
21/12/30 22:28:29.05 hxNkeOah.net
>>999
さあどうだろうな?
だから>>987でソースコード隅々まで見たら…って書いたんだけどね
JavaやC#だったら型だけ見ればああこの戻り値のfoo属性は文字列なんだなと信頼できる
ソースコードを隅々まで見る必要はない
なぜなら型が嘘をつかないからね
1043:デフォルトの名無しさん
21/12/30 22:34:32.46 rc2c+xCv.net
anyなんかから型変換する際にランタイムチェックを追加するオプションはあっていいとは思うがTypeScriptにとってのno goalだから無いのも仕方ない
型安全性だけに拘るならTypeScriptは適当じゃないのはそれはそう(そもそもがoptional typeでしかない)
他の要素も考慮すれば個人的には悪い選択肢じゃないのでJavaScriptよりはTypeScriptを選ぶけども(C#やJavaと比較するかは目的による)
1044:デフォルトの名無しさん
21/12/30 22:38:38.66 XEA11GKy.net
ようはTypeScriptに限らず強い型付け以外全否定ってことかね
1045:デフォルトの名無しさん
21/12/30 22:56:16.20 XEA11GKy.net
次スレ立てるよ
URLリンク(www.typescriptlang.org)
JavaScript that scales.
TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.
Any browser. Any host. Any OS. Open Source.
part1
スレリンク(tech板)
part2
スレリンク(tech板)
part3
スレリンク(tech板)
1046:デフォルトの名無しさん
21/12/30 22:57:42.38 XEA11GKy.net
TypeScript part4
スレリンク(tech板)
1047:デフォルトの名無しさん
21/12/30 23:01:37.83 chdQ4etC.net
>>1000
それって型指定のバグなわけで、バグを回避する為に他の言語でもソースコード全部読む必要あるのは変わらないのでは……
1048:1001
Over 1000 Thread.net
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 1344日 1時間 13分 15秒
1049:過去ログ ★
[過去ログ]
■ このスレッドは過去ログ倉庫に格納されています