[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 08/09 11:00 / Filesize : 267 KB / Number-of Response : 1050
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

TypeScript part3



1 名前:デフォルトの名無しさん [2018/04/26(木) 21:48:23.07 ID:mMDBzDaB.net]
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
https://peace.5ch.net/test/read.cgi/tech/1349187527/
part2
https://mevius.5ch.net/test/read.cgi/tech/1430386649/

225 名前:デフォルトの名無しさん [2019/06/01(土) 20:56:08.22 ID:TTPVYQ4N.net]
strictNullChecksをtureにしてる人いる??

ロジックではnull禁止できるけどさ、
dbからgetしたデータに混じるんだよね。
未入力状態のデータって奴。

null撲滅マスターの方は、どう解決してるの??

226 名前:デフォルトの名無しさん mailto:sage [2019/06/01(土) 20:58:48.44 ID:+itGqD4a.net]
それはDBの設計が腐ってるし、unknown | null型なんだろ
ロジックが間違ってる

227 名前:デフォルトの名無しさん mailto:sage [2019/06/02(日) 11:14:24.16 ID:567ijWyR.net]
そもそも、実行時にnullやundefinedが混じるという話とstrictNullChecksに直接の関係はないだろ。
その中間のどこかで困っているんだろうけど、それがわからないとなんとも。

228 名前:デフォルトの名無しさん mailto:sage [2019/06/02(日) 11:38:18.31 ID:nWi1j94r.net]
nullableなfieldをgetしたらそりゃnullableでしょ

229 名前:デフォルトの名無しさん mailto:sage [2019/06/05(水) 02:53:11.94 ID:QtDGLGvu.net]
Visual Studio Code でAngularの勉強をしているのですが、
TypeScriptのthisがどこのコードを参照しているのかイマイチ理解できていません。
このthisをマウスオーバーしたら参照先のコードを表示してくれる拡張機能はありませんか・・・?
現状ですとthisにマウスオーバーをすると this:this と表示されます

230 名前:デフォルトの名無しさん mailto:sage [2019/06/05(水) 08:05:19.27 ID:a1ZirxB/.net]
Angular自体糞だからやめとけ

231 名前:デフォルトの名無しさん mailto:sage [2019/06/05(水) 08:30:28.74 ID:gaDZjJ4I.net]
vueをやるんだ

232 名前:デフォルトの名無しさん [2019/06/07(金) 22:14:26.23 ID:GySnd9K9.net]
みんな、質問。

TSって公式のスタイルガイド無いけど、
みんな何使ってる?
正直googleのは末尾カンマが受け付けない。。

233 名前:デフォルトの名無しさん mailto:sage [2019/06/07(金) 22:21:16.75 ID:POgNcTtv.net]
prettierで終わり
受け付けないもクソもない
おまえのスタイルは全てクソで、prettierを信じろ



234 名前:デフォルトの名無しさん [2019/06/10(月) 00:34:38.75 ID:pNMWMTmc.net]
>>231
設定は??
信じていいprettierはデフォ設定でOKなの?

235 名前:デフォルトの名無しさん mailto:sage [2019/06/10(月) 07:11:15.54 ID:s0ANUlh8.net]
>>232
デフォと言いたいが

arrowParens: "always",
semi: false,
trailingComma: "es5",

のみ付けるのが多い(気がする)

236 名前:デフォルトの名無しさん mailto:sage [2019/06/10(月) 07:12:37.13 ID:s0ANUlh8.net]
semi: false,
だけは本当に極稀に問題になるから、設定しなくてもいい
目障りだから俺は設定するけどね

237 名前:デフォルトの名無しさん [2019/06/13(木) 17:34:43.34 ID:3ecrlnnk.net]
>>233, 234
ありがとう!試してみる!

238 名前:デフォルトの名無しさん mailto:sage [2019/06/15(土) 19:57:13.61 ID:60xjKXFz.net]
const x = { a: 'b' };

この x の型は { a: string } になってしまうみたいだけど、 { a: 'b' } 型にする方法ってないんでしたっけ?
TypeScript 3.5です。

239 名前:デフォルトの名無しさん mailto:sage [2019/06/15(土) 20:04:24.55 ID:v9vM6Xqi.net]
const x: { a:'b' } = { a: 'b' };

240 名前:デフォルトの名無しさん mailto:sage [2019/06/15(土) 20:10:32.39 ID:60xjKXFz.net]
const x = { a: 'b' as 'b' }; もいけるみたいだけど冗長だなぁ。

241 名前:デフォルトの名無しさん mailto:sage [2019/06/15(土) 20:14:03.78 ID:LRsRofRH.net]
as const

242 名前:デフォルトの名無しさん mailto:sage [2019/06/15(土) 20:32:57.50 ID:60xjKXFz.net]
>>239
ありがとう!これだ。

243 名前:デフォルトの名無しさん mailto:sage [2019/06/15(土) 22:08:42.82 ID:B5XNjjWA.net]
デフォルトで全部 as const にするオプションとかあればいいのに



244 名前:デフォルトの名無しさん mailto:sage [2019/06/21(金) 19:39:39.40 ID:NhtzQec8.net]
今日の疲れやばい

245 名前:デフォルトの名無しさん mailto:sage [2019/06/21(金) 19:42:13.96 ID:NhtzQec8.net]
anyを許すルールにするっつったら
「でもapiからくる値なら全て型定義できますよね?」
って言われたことにものすごい疲れた
完璧なappなんかねーんだよ!!!ってキレそうだったわ

246 名前:デフォルトの名無しさん mailto:sage [2019/06/21(金) 19:42:54.97 ID:NhtzQec8.net]
一生インターフェース書いてろ!

247 名前:デフォルトの名無しさん mailto:sage [2019/06/22(土) 13:59:29.40 ID:cvRfxwEO.net]
そこでunkownですよ

248 名前:デフォルトの名無しさん mailto:sage [2019/06/22(土) 14:09:53.49 ID:lgEn1aKj.net]
unknown確か途中で足されたよな。最初から入れとけおもた。

249 名前:デフォルトの名無しさん mailto:sage [2019/06/22(土) 15:50:14.82 ID:cvRfxwEO.net]
みんあなはallow any 派?

250 名前:デフォルトの名無しさん [2019/06/22(土) 18:02:27.27 ID:WCwRyrQC.net]
>>247
許容派です。
再帰処理とかをまともに型付してたら、辛すぎる。。

ちなみに
const arr = []
で、never[]型になるのがしんどい。

設定でany[]型にならないでしょうか・・?

251 名前:デフォルトの名無しさん mailto:sage [2019/06/22(土) 20:42:33.24 ID:vT6NYB6v.net]
明示的に型を書けばいいじゃん

252 名前:デフォルトの名無しさん mailto:sage [2019/06/22(土) 22:04:34.45 ID:1mmW7z7g.net]
てかリテラルの [] が never[] になんかなる?

253 名前:デフォルトの名無しさん [2019/06/23(日) 13:58:34.11 ID:iaXcaTkq.net]
eslint が v6.0.0 になったら @typescript-eslint/parser が読み込めなくなった
とりあえず issue をみて ./node_modules/@typescript-eslint/parser/dist/parser.js で

require("eslint/lib/util/traverser")

require("eslint/lib/shared/traverser")

でやり過ごしてる



254 名前:デフォルトの名無しさん [2019/06/24(月) 11:41:32.01 ID:218UFAwP.net]
この研究によるとTypeScriptは最もバグ発生率が低い言語なんだけどその理由とか体感とかありますか?
https://web.cs.ucdavis.edu/~filkov/papers/lang_github.pdf
>TypeScript −1.32 (0.40)∗∗ −2.15 (0.98)∗ −1.34 (0.41)∗∗ −0.34 (0.07)∗∗∗

255 名前:デフォルトの名無しさん [2019/06/24(月) 11:46:37.72 ID:eHWTfFeZ.net]
コンパイラにバグが無い
コンパイル中にコードのバグは発見出来る
アルゴリズムのバグは知らんがな

256 名前:デフォルトの名無しさん mailto:sage [2019/06/24(月) 21:38:49.72 ID:RR0ut14u.net]
TypeScriptで書いたプロダクトにバグが少ないのか、TypeScriptコンパイラにバグが少ないのか、どっちよ?

257 名前:デフォルトの名無しさん mailto:sage [2019/06/24(月) 21:39:48.85 ID:RR0ut14u.net]
あと今土器pdfなんかで出すなよボケカス
日本語翻訳使えないだろが

258 名前:デフォルトの名無しさん mailto:sage [2019/06/24(月) 21:52:09.72 ID:RR0ut14u.net]
TS >>> JS
という話なら圧倒的同意しかないのだが
https://www.reddit.com/r/typescript/comments/aofcik/38_of_bugs_at_airbnb_could_have_been_prevented_by/
他の言語と比べてどうこうはわからん

あと動的型無し糞言語がゴミというのも同意

259 名前:デフォルトの名無しさん [2019/06/25(火) 18:21:53.19 ID:Cc6pu6kp.net]
>>254
TSで書かれたソフトウェアにバグが少ない
そのPDFによれば調査対象のメジャーな10種くらいの言語の中で最も少ない

260 名前:デフォルトの名無しさん mailto:sage [2019/06/25(火) 20:19:43.86 ID:VFPzRDke.net]
C#と大して変わらんのにバグが少なくなるって根拠がよく分からん
JavaScript上がりのプログラマが使うことが多いから良く訓練されているってのが考えられる根拠だなw

261 名前:デフォルトの名無しさん mailto:sage [2019/06/25(火) 23:32:40.42 ID:AQeJL9YJ.net]
ユーザのリテラシが高いが後押ししてるのはありえそうだな

phpあたりは言語もユーザもガイジだからかわいそう

262 名前:デフォルトの名無しさん mailto:sage [2019/06/26(水) 00:17:43.45 ID:+9DnWsFD.net]
JavaScriptは初心者が触るには最悪の言語と言っても過言ではないないから、ありとあらゆるバグを出して大変な目に遭ったプログラマがTypeScriptを使うことになると、バグも少なくなるだろうなという意味だよ

263 名前:デフォルトの名無しさん mailto:sage [2019/06/26(水) 00:40:51.84 ID:q5HP9tQR.net]
つか論文?の表の見方がわからんのだが



264 名前:デフォルトの名無しさん mailto:sage [2019/06/26(水) 00:41:37.75 ID:q5HP9tQR.net]
よくよく読んだら、ほんとは一番バグが多かったとかいうオチ??

265 名前:デフォルトの名無しさん mailto:sage [2019/06/26(水) 00:45:17.97 ID:f1MF/JvG.net]
スレッドがないとかポインタがないとかでできないことがある分バグも減るでしょ

266 名前:デフォルトの名無しさん mailto:sage [2019/06/26(水) 00:49:58.46 ID:q5HP9tQR.net]
>>263
できないことだらけにしたGoさんはどうなりましたか・・・?

267 名前:デフォルトの名無しさん mailto:sage [2019/06/26(水) 09:13:51.70 ID:qk5ECIA8.net]
このスレの住人なら当然ターミナルはコレだよな!

Terminus - TypeScript製のターミナル
https://www.moongift.jp/2019/06/terminus-typescript%E8%A3%BD%E3%81%AE%E3%82%BF%E3%83%BC%E3%83%9F%E3%83%8A%E3%83%AB

268 名前:デフォルトの名無しさん [2019/06/26(水) 12:25:57.23 ID:7Ob4FOl6.net]
>>264
Web画面なんて壊れてても気にしないからコミット取り消さないし
そもそも画面実装とか

269 名前:Tーバに比べて問題の範囲が限定的でたいして難しくないだろ
最初から扱ってる問題が言語ごとにちがうんだ
この表ってか論文で一緒にしてるのおかしい

あ、型なし言語はあかんと思います
[]
[ここ壊れてます]

270 名前:デフォルトの名無しさん [2019/06/26(水) 16:21:39.07 ID:b+WM9Si2.net]
確かにCとかC++は基礎的なソフトに使われるから
僅かなバグも絶対に許されないとこありそう
それ以外にポインタ使ってるからってのもあるだろうけど

271 名前:デフォルトの名無しさん [2019/06/29(土) 10:08:56.36 ID:/kbU3u2K.net]
>>266
動画の新しいエンコーダ作るとか、プログラムじゃなくて数学のレベルを求められる仕事は置いといて、

webならフロントの方がよっぽど複雑じゃない?
バックなんて同期処理でお決まりのレールに乗ってダラダラ書いてくだけだし。

複雑でパフォーマンスが要求されるpwaとか、typescript無かったら絶対に完成する気しないわ。
カオス過ぎる

272 名前:デフォルトの名無しさん [2019/06/29(土) 10:25:06.32 ID:Kp+ip4R/.net]
js/tsだけどダイアログとか出すときに
モードレスにした方がユーザーには使い易いのに
バグが増えそうだからモードレス禁止ってことで
全部モーダルで造らされたことがある

273 名前:デフォルトの名無しさん mailto:sage [2019/06/29(土) 19:29:55.34 ID:pedxXkW2.net]
型の判定の正しい手順ってどうだっけ?5行目で引っかかってしまう。

function isMyType(o: unknown): o is MyType {
if (typeof o !== 'object') { return false; }
if (!o) { return false; }
if (!('key' in o)) { return false; }
if (!o.key) { return false; } // ts7053
return true;
}



274 名前:デフォルトの名無しさん mailto:sage [2019/06/29(土) 23:44:35.08 ID:rJpz/Ysh.net]
ひえっ…
typescript使う意味あるのこれ

275 名前:デフォルトの名無しさん mailto:sage [2019/06/30(日) 01:10:38.25 ID:7Llu84Qc.net]
そりゃTypeScriptだって魔法じゃないんだから。
すごいのは外部から渡された得体の知れない値をこうやって動的に型判定して
それを静的な型の世界に持ち込めるところ。

276 名前:デフォルトの名無しさん [2019/06/30(日) 01:36:24.68 ID:y+UHg1Q8.net]
ts知らないけど処理系がロード済みの型一覧を取得できないの

277 名前:デフォルトの名無しさん mailto:sage [2019/06/30(日) 02:09:58.63 ID:uFOYv7Ak.net]
unknownじゃなくてanyでいいでしょ

278 名前:デフォルトの名無しさん [2019/07/01(月) 22:30:11.88 ID:VQESBdFl.net]
>>270
この返り値、なんていう記法?
というか、なぜこんな書き方が必要なの?

279 名前:デフォルトの名無しさん mailto:sage [2019/07/01(月) 23:18:57.13 ID:yt2EFQVJ.net]
user defined type guard function でググれ。

280 名前:デフォルトの名無しさん mailto:sage [2019/07/02(火) 04:58:55.57 ID:uMGeffjZ.net]
>>269
jQuery, jQuery UI のダイアログを使えば?

モーダルが多いような気がする

281 名前:デフォルトの名無しさん mailto:sage [2019/07/03(水) 22:40:20.89 ID:HeNg6Q/2.net]
>>276
それだけで理解した
なるサンクス

282 名前:デフォルトの名無しさん mailto:sage [2019/07/07(日) 08:52:11.33 ID:eO4QC7Eh.net]
/* eslint-disable @typescript-eslint/explicit-function-return-type */
const mapDispatchToProps = (dispatch: TodoAsyncDispatch) => {
return {
fetchTodo: (id: TodoId) =>
dispatch(todoAsyncRequestActions.fetchTodoRequest({ id })),
}
}
/* eslint-enable */

type ReduxDispatchProps = ReturnType<typeof mapDispatchToProps>

---

これをeslint-disableなしで実装する方法ってないですか?
例えば、↓こんな感じで「any」の部分が「型推論させる型」みたいにできる、とか。
redux-thunkの型付けが難しいお・・・

---

type MDTP = (dispatch: TodoAsyncDispatch) => any

const mapDispatchToProps2: MDTP = (dispatch) => {
return {
fetchTodo: (id: TodoId) =>
dispatch(todoAsyncRequestActions.fetchTodoRequest({ id })),
}
}


283 名前:type ReduxDispatchProps2 = ReturnType<typeof mapDispatchToProps2> []
[ここ壊れてます]



284 名前:デフォルトの名無しさん mailto:sage [2019/07/07(日) 09:34:19.15 ID:z09Q0v8J.net]
その暗黙の推論を禁止するルールなんだから普通に考えたら無いよね。
型付けが難しい場合があるのはわかるけど、eslint-disableじゃだめな理由は?
全体として入れているチェックの例外を設けるなら後からその箇所がわかるように
しておかなきゃ困ると思うが。

285 名前:デフォルトの名無しさん mailto:sage [2019/07/07(日) 10:04:05.70 ID:dCt2bUfG.net]
ジャネリック

286 名前:デフォルトの名無しさん mailto:sage [2019/07/07(日) 10:24:01.49 ID:eO4QC7Eh.net]
>>280
型付け自体はそう難しくはないんだが、この2重定義感がだるくて。
mapDispatchToPropsに型ちゃんと書いてそこに集約したいというか。

---

type ReduxDispatchProps = {
fetchTodo: (id: TodoId) => Promise<void>
}

const mapDispatchToProps = (
dispatch: TodoAsyncDispatch
): ReduxDispatchProps => {
return {
fetchTodo: (id) =>
dispatch(todoAsyncRequestActions.fetchTodoRequest({ id })),
}
}

---

> eslint-disableじゃだめな理由
mapDispatchToProps は書く頻度が高いから、あまり eslint-disable を撒き散らしたくない
とはいえ普通の function で explicit-function-return-type を false にしたくない
というお気持ち

やっぱ無理ッスかね

287 名前:デフォルトの名無しさん mailto:sage [2019/07/07(日) 10:37:01.72 ID:eO4QC7Eh.net]
>>281
どう書けばできそうですか?

288 名前:デフォルトの名無しさん mailto:sage [2019/07/07(日) 11:45:51.89 ID:zsCaUS/w.net]
{ allowExpressions: true }

289 名前:デフォルトの名無しさん mailto:sage [2019/07/07(日) 13:32:44.90 ID:eO4QC7Eh.net]
>>284
既にこれで設定してます

---
"@typescript-eslint/explicit-function-return-type": [
"error",
{
allowExpressions: true,
allowTypedFunctionExpressions: true,
},
],
---

290 名前:デフォルトの名無しさん mailto:sage [2019/07/10(水) 01:53:27.81 ID:QsYN3Rs6.net]
Nest.js使ってサーバサイドもts使ってる人いる?

291 名前:デフォルトの名無しさん mailto:sage [2019/07/17(水) 21:56:07.81 ID:c89mzXrS.net]
むしろ整合性が求められるサーバーサイドでこそ活躍する

292 名前:デフォルトの名無しさん mailto:sage [2019/07/17(水) 23:22:52.24 ID:ySrAQEz0.net]
TSerならdenoでない?

293 名前:デフォルトの名無しさん mailto:sage [2019/07/17(水) 23:47:06.39 ID:5ruk5Mj4.net]
まだ早い



294 名前:デフォルトの名無しさん mailto:sage [2019/07/23(火) 23:09:48.66 ID:vuRfx8Ta.net]
tslintが年内収束ってことなんでeslint移行を試しているが、まだ微妙に使いづらいな。

295 名前:デフォルトの名無しさん mailto:sage [2019/07/24(水) 12:05:38.50 ID:CC3juVRq.net]
Svelte 試してるんだが TS にできない……
eslint-config-prettierがほぼ使用不可になるのもしんどい

296 名前:デフォルトの名無しさん mailto:sage [2019/07/28(日) 15:31:08.83 ID:o4KFBn8V.net]
vs2019に入れるときはどうしたらいいですか?

色々やってて、2017には入ったけど、HelloWorldが正しく動いてくれない。

297 名前:デフォルトの名無しさん mailto:sage [2019/07/28(日) 16:16:00.92 ID:9XfU9Gs7.net]
悪いことは言わんからVSCodeにしとけ
それにTypeScriptはIDEにインストールするもんじゃなく、npmでインストールするただの1ライブラリだ

298 名前:デフォルトの名無しさん mailto:sage [2019/07/28(日) 19:23:20.85 ID:o4KFBn8V.net]
検討してみます。
ありがとう。

299 名前:デフォルトの名無しさん mailto:sage [2019/07/30(火) 20:33:12.19 ID:+pfbQhET.net]
リテラル型からそのリテラルの値を作ることってできないんだっけか。
Record<Foo,boolean>の変数の初期値にReacord<Foo,false>の値が使えたらよかったんだが。

300 名前:デフォルトの名無しさん [2019/07/31(水) 01:05:45.62 ID:LQAad41F.net]
型情報から実行時インスタンスの値を変更は不可能

301 名前:デフォルトの名無しさん mailto:sage [2019/07/31(水) 22:29:00.76 ID:FZL3ewwl.net]
仕組み考えりゃ当たり前だよな

302 名前:デフォルトの名無しさん mailto:sage [2019/07/31(水) 22:36:31.70 ID:79+NgejT.net]
tsはコンパイル後の結果に型情報は含まないというポリシーだけど、
そういう定数を埋め込むことはやろうと思えばできる話だろ。

303 名前:デフォルトの名無しさん mailto:sage [2019/08/27(火) 08:04:24.39 ID:qSEEAuKd.net]
androidで使えるts用のeditorないかな
トランスパイルとかはメインの環境でやるからコーディングのための入力支援だけでも受けられるようなやつ



304 名前:デフォルトの名無しさん mailto:sage [2019/08/28(水) 02:28:02.83 ID:SJji ]
[ここ壊れてます]

305 名前:sg2m.net mailto: TermuxでVimにプラグイン []
[ここ壊れてます]

306 名前:デフォルトの名無しさん mailto:sage [2019/08/29(木) 08:30:46.67 ID:jM/zWkNe.net]
Announcing TypeScript 3.6
https://devblogs.microsoft.com/typescript/announcing-typescript-3-6/

307 名前:デフォルトの名無しさん mailto:sage [2019/09/05(木) 23:20:27.31 ID:VPhKtGaJ.net]
tslintの"max-classes-per-file"のデフォルト値が1なんだけどこれどういう意味合いがあってこんな制限がかかってるの?

308 名前:デフォルトの名無しさん mailto:sage [2019/09/05(木) 23:30:25.75 ID:Wj2GuKre.net]
Best practice is to keep each file limited to a single responsibility.

309 名前:デフォルトの名無しさん mailto:sage [2019/09/06(金) 08:25:08.20 ID:yVtePnMR.net]
プロジェクトの規模が大きくなっても1ファイル1classって維持できるものなのか?

310 名前:デフォルトの名無しさん mailto:sage [2019/09/06(金) 14:16:54.22 ID:2oSh/AAo.net]
tsファイルに
string型のnormalize('NFC')を
使おうとしたんだけど、エラーになる。

なんで?

311 名前:デフォルトの名無しさん mailto:sage [2019/09/06(金) 19:54:40.86 ID:XEN3PN1i.net]
プロジェクトが大きくなることとひとつのファイルに書くクラスの数が増えることとが結びつかないんだが

312 名前:デフォルトの名無しさん mailto:sage [2019/09/10(火) 22:41:19.05 ID:KQIOq++N.net]
https://geekly.co.jp/column/cat-technology/1908_004/
>TypeScriptはクラスベースオブジェクト指向です。

こんな転職サイトのお世話にはなりたくない

313 名前:デフォルトの名無しさん mailto:sage [2019/09/10(火) 22:57:35.54 ID:bRYQFbtI.net]
これはひどい



314 名前:デフォルトの名無しさん mailto:sage [2019/09/10(火) 23:33:47.24 ID:A1/RuLsT.net]
バズワードに踊らされてるだけなのか、ツッコミどころてんこ盛りなのは置いておいて・・・

Geekly Media ライター
バスコ

最新の記事がXAMPPで草生えた
10年前からタイムスリップしてきたのか?

315 名前:デフォルトの名無しさん mailto:sage [2019/09/11(水) 10:05:57.98 ID:3t6F0b74.net]
>>307
>TypeScriptはクラスベースオブジェクト指向です。
完全に合っているが…何が問題なんだ?

316 名前:デフォルトの名無しさん mailto:sage [2019/09/11(水) 20:26:00.45 ID:P5SVRA88.net]
TypeScriptはクラスベースでJavaScriptはプロトタイプベースって対比しているのは完全におかしい
クラス構文はただの糖衣構文で実態はプロトタイプベースだし、そもそもクラス構文はES2015にあるんだからJavaScriptもクラスベースという話になってしまう

317 名前:デフォルトの名無しさん mailto:sage [2019/09/11(水) 21:06:44.69 ID:IEmfVi5w.net]
JavaScriptをプロトタイプベースのオブジェクト指向言語と言うべきではない
blog.anatoo.jp/entry/2015/05/05/163225

318 名前:デフォルトの名無しさん mailto:sage [2019/09/12(木) 02:40:31.86 ID:hFthHt+S.net]
Haskellは最終的に再代入しまくりのCに変換される(出来る)けど、Haskellは純粋な関数型言語と言われている
オブジェクト指向言語の様に書けてその通りに動けば、オブジェクト指向言語と言える
TypeScriptが言語仕様を全く変えずにWebAssemblyにコンパイルされるようになっても、TypeScriptはプロトタイプベースと言い張るのか?

319 名前:デフォルトの名無しさん mailto:sage [2019/09/12(木) 08:27:51.94 ID:ome0ZpEu.net]
オブジェクト指向的な言語機能に関して言えばTypeScriptはJavaScriptと何ら変わりはないんだから
そのHaskellの例は思いっきり的外れというか牽強付会というか。

>TypeScriptが言語仕様を全く変えずにWebAssemblyにコンパイルされるようになっても、TypeScriptはプロトタイプベースと言い張るのか?

プロトタイプが動作しなくなるなら別だが、仕様をまったく変えないという前提なら何も変わらんだろ。
ところで、こんなこと言い張っていた奴なんて見当たらないが、

>TypeScriptはプロトタイプベース

もしかしてクラスベースを否定したらプロトタイプベースを主張していることにされちゃうんだろうか。

320 名前:デフォルトの名無しさん mailto:sage [2019/09/12(木) 16:14:58.14 ID:y6P0yrLb.net]
TypeScriptはprototypeをいじくるような

321 名前:コーディングは推奨してないだろ
型システムが破綻する
その時点でプロトタイプとは関係無い単なるオブジェクト指向言語なんだよ
最終的にどう動いてるか何て関係無い
Haskellの様にね
[]
[ここ壊れてます]

322 名前:デフォルトの名無しさん mailto:sage [2019/09/14(土) 21:17:37.20 ID:1MUQqrBS.net]
いやなんでそんな必死にその糞ガイジ記事を擁護したがるのかわからん
バスコ本人か?
ちゃんと頭のお薬飲めよ

323 名前:デフォルトの名無しさん mailto:sage [2019/09/18(水) 08:52:01.19 ID:F+0EZiKQ.net]
知らなかったが、AssemblyScriptなんてあったのか。
既存のTypeScriptのコードがそのままコンパイルできるわけじゃなくて
文法だけが共通の別言語って感じだが。



324 名前:デフォルトの名無しさん [2019/09/18(水) 10:08:51.34 ID:L8SHYgAR.net]
Ruby と Elixir みたいなもんか
https://mevius.5ch.net/test/read.cgi/tech/1565187727/

325 名前:デフォルトの名無しさん mailto:sage [2019/09/18(水) 17:14:10.63 ID:reuwXmQ7.net]
ES5以前はともかく、今はPrototypeを意識することは全然ないな
ずっとJavaとかPHPだった人でも違和感なく始められると思う






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<267KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef