TypeScript part3

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2018/04/26(木) 21:48:23.07ID:mMDBzDaB
http://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/
430デフォルトの名無しさん
垢版 |
2020/06/25(木) 08:55:25.54ID:3QV8gPE9
逆に使えない意味がわからない
2020/06/25(木) 09:53:31.94ID:2LahzjFh
Ruby on Rails では、React も多いけど、

TypeScript を使う香具師は、いるのかな?
2020/06/25(木) 10:01:29.46ID:PKyG+WtC
ルビカスは宗教上の理由からTypeScriptなは絶対に使えないんで消えて
フロントエンドの方が厳格な言語で書かれてるとか頭おかしいからなw
2020/06/25(木) 10:37:01.47ID:V5BYtNqQ
かわいそうに。
434デフォルトの名無しさん
垢版 |
2020/06/25(木) 11:14:26.11ID:2XRewe5U
CoffeeScriptとは何だったのかω
2020/06/25(木) 11:57:37.69ID:2LahzjFh
Ruby on Rails 6 から、Node.js, webpack が標準になったから、

もう、Coffee Script には依存していない
2020/06/25(木) 14:16:09.33ID:3QV8gPE9
だからどうしたRubyガイジ
さっさと消えろ
2020/06/25(木) 14:49:25.12ID:V5BYtNqQ
webpack使えるなら、普通にもうRoRでhtml作る必要ないのでは
2020/06/25(木) 14:51:02.50ID:V5BYtNqQ
ほんまやな
PHPもRubyも、型無し糞言語は滅びるべきや
json以外を喋る邪悪なWebサーバーは1台残らず破壊しろ
2020/06/25(木) 14:52:55.59ID:3edAgV/k
この場違いRuby妖怪はアンカ飛ばさんでも一応レス見てる素振りを見せるのがちょっとしたホラー
440デフォルトの名無しさん
垢版 |
2020/06/26(金) 03:43:22.98ID:4Xp41V6m
GUI は、React, Bootstrap で良いけど、
サーバ側が、Node.js じゃ辛い

Rails, Sinatra などの、Ruby の方が分かりやすい

Rubyの欠点は、web アプリだけしか作れないこと!
スマホ用アプリも必要なら、Electron, React Native + Expo

それか、Unity
441デフォルトの名無しさん
垢版 |
2020/06/26(金) 07:42:47.69ID:Sd6G194T
Rubyの欠点はお前みたいなキチガイがスレチのクソ宣伝で評価を下げてることだよ
2020/06/26(金) 14:54:51.55ID:6IXnju0o
https://twitter.com/yokatsuki/status/744702839558017024

多言語disをついやってしまう癖を止めて欲しい。
最後に参加したTokyuRubyKaigiで「Javaやってる人手を挙げてはーい♪今挙げた人はすぐに帰ってくださーい♪」って言ったのは忘れたくても忘れられない。
https://twitter.com/5chan_nel (5ch newer account)
2020/06/26(金) 16:51:07.25ID:Z5HJiD+l
型無し糞言語やってる人は帰るだけじゃ済まされない
死んでください
2020/06/26(金) 18:00:16.15ID:9etEQyfp
俺も東横線代表として参加してくるわ
2020/06/26(金) 20:32:19.16ID:aHXqCiQW
>型無し糞言語

今どきの言語で何があったっけ?
2020/06/26(金) 22:12:45.13ID:TcIyIoqu
>>442
10年以上前に同じようなJava disやってたスピーカーがいたが
別のスピーカー/コミッター達にあれはやめたほうがいいって厳しく批判されてたけどな
その時代の話なのかな
447デフォルトの名無しさん
垢版 |
2020/06/27(土) 01:29:27.09ID:9wE9An+g
ありますで喩えると
Java山中さん
*by笹井さん
2020/07/01(水) 14:29:27.01ID:OAvcKBIQ
Talking TypeScript with the engineer who leads the team
https://stackoverflow.blog/2020/06/15/talking-typescript-with-ryan-cavanaugh/
449デフォルトの名無しさん
垢版 |
2020/07/15(水) 11:01:56.72ID:IqfNcqeZ
TypeScript で、無名配列のJSON ファイルは、import できない

[
["a", 10],
["b", 20]
]

名前を付ければ、import できる。
import { xyz } from "./a.json";

{"xyz": [
["a", 10],
["b", 20]
]
}
450デフォルトの名無しさん
垢版 |
2020/07/15(水) 12:14:33.71ID:cL9c5hZ8
typescriptに限らず
そういう実装結構ある
全体は{}を仮定してるの
2020/07/15(水) 13:02:18.34ID:pL8+4mwq
jsonってトップレベルはObject必須だと思ってた
そういう仕様あるのかな
2020/07/15(水) 15:59:04.81ID:T1dYtDa5
Type Script 使ってみて思ったけど
最初から ES がこの仕様だったら本当に助かってた
そして今の課題は既にある ES のライブラリ摂りこむのが面倒
なんとかならんのか??っていう
453デフォルトの名無しさん
垢版 |
2020/07/15(水) 16:48:00.29ID:cL9c5hZ8
C# 使ってみて思ったけど
最初から C がこの仕様だったら本当に助かってた
そして今の課題は既にある C のライブラリ摂りこむのが面倒
なんとかならんのか??っていう
2020/07/15(水) 16:58:29.54ID:pL8+4mwq
割とマジで攻守共にTypeScriptが最強だわ
TSに欠けてるのは、あとはパターンマッチくらいだろう
TypeScriptがネイティブバイナリ吐くようになればいい
2020/07/15(水) 19:14:22.28ID:Iul+D8/c
>>449
そもそもimportはjsonを読むためにあるわけじゃないから読めなくても不思議はないが、
ts3.9.6で試してみたら普通に読めるんだが?

>>451
rfc読めばわかるがトップレベルだけ特別扱いする必要ないしね。
456449
垢版 |
2020/07/15(水) 19:20:18.72ID:IqfNcqeZ
./a.json に以下だけを書いて、どういうimport 文を書いたの?

[
["a", 10],
["b", 20]
]
2020/07/15(水) 20:06:40.11ID:Iul+D8/c
ふつうに
import j from './a.json';

"module"は"commonjs"
2020/07/15(水) 20:24:52.52ID:guZu56HE
esModuleInterop か allowSyntheticDefaultImports は true になってる?
false や未設定なら、 `import * as j from './a.json';` でインポートする必要がある
2020/07/15(水) 20:31:01.05ID:Iul+D8/c
ああすまん、"resolveJsonMdule": true してた。
つまりmoduleじゃないjsonをロードしたいならこれが必要ってことね。
460449
垢版 |
2020/07/15(水) 21:20:34.32ID:IqfNcqeZ
あれ? 普通に、これで、import できた!
漏れの勘違いだったみたい

import j from "./a.json";

漏れの設定は、

"module": "es2015",

"esModuleInterop": true,
"resolveJsonModule": true,
2020/07/16(木) 13:16:30.71ID:Bj5j4Y6i
こういうのはだめなんだっけ
[
["a", 10],
["b", 20],
]
462デフォルトの名無しさん
垢版 |
2020/07/16(木) 15:09:37.34ID:J/CG/YnB
TypeScript の開発中は、
Webpack のオフライン機能、workbox を使わないから、

package.json の、"workbox-webpack-plugin": "^5.1.3" を、
コメントアウトしようとしたが、形式エラーになって出来ない

削除はできるけど、コメントアウトで残しておきたい
2020/07/16(木) 15:10:33.56ID:L+apgnKF
gitを使いましょうよ・・・
2020/07/16(木) 15:13:26.35ID:J/CG/YnB
>>461
JSON ファイルでは出来ない

よく知らないけど、新しめの、JS/TS ファイルでは出来るかも
2020/07/16(木) 18:14:40.47ID:QwF0ci9g
よく知らないなら黙ってろrubyガイジ
2020/07/16(木) 18:31:21.38ID:L+apgnKF
>>461
ケツカンマをファックできるのはECMAScript 5以上
JSONはファックできない
467デフォルトの名無しさん
垢版 |
2020/07/22(水) 02:36:42.07ID:2/9nnKBr
クライアント向けの開発サーバーが付いている、Parcel を使っている香具師いる?

Postman を使っている香具師いる?
これは、REST クライアントかな?
漏れは、VSCode の拡張機能の、REST Client を使っているけど

他には、TypeScript で、Express サーバーを実行する、ts-node-dev は?
2020/08/01(土) 03:44:15.17ID:BmlbAE5y
pacage.jsonのバージョンを取得したくて
src/index.tsで
import {version} from '../package.json'
を思いついたのですが、これだとコンパイルでdistに排出されるときにpackage.jsonも排出されてしまいます
これを解決する(依存関係をdistに持ってくるのではなくが./package.jsonを常に読むようにしたい)方法はあるのでしょうか?
2020/08/01(土) 07:24:44.96ID:WBys/bG4
コンパイルするたび常に最新のpackage.jsonがdistに排出されるんだから
それでええんちゃう?
2020/08/01(土) 19:08:50.40ID:BmlbAE5y
>>469
自分的にはdistに排出される先にもう一つpackage.jsonが作られるのが気持ち悪いと感じたのですがそうでもないんですかね?
2020/08/01(土) 21:11:01.65ID:PGLLO5uD
たしかにキモい
2020/08/01(土) 21:32:06.85ID:WBys/bG4
普通にgitignoreしてるだろうしdistにpackage.jsonがあっても特にデメリットないし
distに何が吐かれててもええんちゃう?
473デフォルトの名無しさん
垢版 |
2020/08/03(月) 07:34:16.45ID:qdvto+rV
>>468
process.env.npm_package_version
じゃダメなの?
2020/08/03(月) 09:46:39.86ID:l1ICYS01
>>473
横からだけどサンキュー
こんなことできるんだね、勉強になった

package.jsonの各種要素を読み込みたい! - DEV
https://dev.to/origamium/package-json-1626
475デフォルトの名無しさん
垢版 |
2020/08/03(月) 10:52:32.11ID:qdvto+rV
>>474
公式にもこんなところにしれっと書かれてる
https://docs.npmjs.com/misc/scripts#packagejson-vars

package.jsonの各フィールドの説明してるページには書いてないんだなぁ…
2020/08/05(水) 08:07:16.62ID:uWbem7nq
Announcing the new TypeScript Website
https://devblogs.microsoft.com/typescript/announcing-the-new-typescript-website/
2020/08/21(金) 08:26:54.83ID:D9+iHL3k
Announcing TypeScript 4.0
https://devblogs.microsoft.com/typescript/announcing-typescript-4-0/
2020/08/21(金) 09:31:14.74ID:pu35Qu/1
もう4.0の時代なのか・・・
それなのにおまいらのプロダクトときたら・・・
2020/08/21(金) 11:12:40.65ID:7l2hhkMF
現場猫『ヨシッ!』
480デフォルトの名無しさん
垢版 |
2020/08/21(金) 11:15:43.37ID:6zccVHNz
監督猫『ヨシッ!』
2020/08/21(金) 13:28:51.80ID:pu35Qu/1
一次請猫『ヨシッ!』
2020/09/14(月) 09:29:26.60ID:CfIbX1f0
ここで聞いて良いのかわからないけどimportの拡張子(.js)を省略して、js変換時に拡張子をつけることってできないかな?
開発中はtsc使って開発者終了時だけwebpack使いたいのだけども
2020/09/14(月) 09:33:13.37ID:/HJ+wc6C
そのようにwebpack設定するだけでは
cssやjpgとかの非プログラムファイルにしかimport文に拡張子書いたことないわ
2020/09/14(月) 21:55:40.83ID:CfIbX1f0
webpackの方でなんとかするしかないか。
ありがと
2020/09/15(火) 00:09:40.68ID:g6ghhz4T
typescript のポリシーからすると将来的にも対応される可能性は低い
2020/09/28(月) 14:36:37.18ID:NZq3hOP+
マイクロソフト発のオープンソース言語「TypeScript」、生みの親が語る開発当初や背景
https://japan.zdnet.com/article/35159882/
487デフォルトの名無しさん
垢版 |
2020/09/28(月) 19:49:45.93ID:kE1qWQhp
TypeScriptのまえにWebAssemblyが登場していたらみなそっちに飛び付いたのだろうか。
2020/09/28(月) 22:54:37.39ID:t2I6kwxp
何だかんだ言ってみんなJavaScriptが大好きだからな
それにブラウザに実装されているAPIはJavaScriptから使うこと前提だからWebAssembly使っても余計な苦労するだけだ
ゲームには向いてるだろうけど
2020/09/28(月) 22:56:43.96ID:L69JRisQ
既存のJS資産を流用できたのも強みの1つだったと思うから、やっぱTSの戦略勝ちじゃねえの
つかWASMって一時期騒がれてたけど今どうなったんだ?
2020/09/28(月) 23:49:19.24ID:XJOyCoAG
>>489
Unityが実用?になってるぐらい。

なにしろ、仕様も含めて
今後どうなるかわからん状況では?
2020/09/29(火) 09:41:15.62ID:tKw94fLv
FlutterがDartじゃなくてTSだったら良かったのに
2020/09/29(火) 11:21:16.26ID:P1Q7o4iq
ほんとそれな
あんな劣化Javaみたいな言語ありがたがってる連中の頭が理解できない
2020/09/29(火) 12:10:42.86ID:aaxcyAZi
大して機能違わないじゃん。
何が足りないと思ってるの?
494デフォルトの名無しさん
垢版 |
2020/09/29(火) 13:15:04.46ID:pjrsoCYz
知能
努力
向上心
2020/09/29(火) 13:35:36.65ID:P5R6/7cr
そうだな、JavaとJavaScriptも一緒だしな
2020/09/29(火) 14:11:13.25ID:Y54HkFIW
>>493
NULL安全とか?
2020/09/29(火) 15:46:22.91ID:aaxcyAZi
>>496
あるよ
>>494
ないよ
2020/09/29(火) 18:45:22.24ID:fbgKh1ZX
マイクロソフト発のオープンソース言語「TypeScript」、生みの親が語る開発当初や背景
https://japan.zdnet.com/article/35159882/
2020/09/30(水) 13:09:08.11ID:pBMNn9J9
>> Microsoftが2018年に75億ドル(約8000億円)を投じて買収したGitHub
知らんかった
オンライン版のvscodeがGitHubにあるのはそういうわけか
500デフォルトの名無しさん
垢版 |
2020/10/02(金) 00:47:34.12ID:c4z818i5
ピチャイのマイクロソフトは良いマイクロソフト。
501デフォルトの名無しさん
垢版 |
2020/10/10(土) 13:18:23.70ID:hWE3VueY
こんにちは。プログラミング初心者です。
TypeScriptとJavaScriptはどっちが最強なんでしょうか?
これから始める場合はどっちがいいのですか?

TypeScriptはJavaScriptとくらべ実行速度は変わらないのに
静的型付けのため記述が面倒で学習する価値がないと友達が
言ってたんですがこれは正しいですか?
2020/10/10(土) 14:42:01.38ID:xtGRZD/P
>>501
普段からめちゃくちゃな
読めないコード書いてる人には
難しいと思いますよ。
503デフォルトの名無しさん
垢版 |
2020/10/10(土) 15:45:53.37ID:hWE3VueY
>>502
なるほど。つまりTypeScripはtコードをきれいに見せるためだけの言語ってことなんですね。
2020/10/10(土) 15:53:32.39ID:PAS52Dcu
価値がわかるようになるまではJS使うのをおすすめする
今TS触っても嫌いになるだけだと思う
505デフォルトの名無しさん
垢版 |
2020/10/10(土) 16:35:21.67ID:hWE3VueY
ん。。。価値が分かる人にしかわからないプロ向けの言語なんですね。。。
2020/10/10(土) 16:57:30.55ID:OrgjdyW8
綺麗に見えるということは他人が書いたコードであっても理解しやすいといえる
2020/10/10(土) 17:08:45.97ID:hWE3VueY
複数人で開発するとき用ってことですね。
一人でWEBアプリ作って満足してる分には必要なさそうですね。
2020/10/10(土) 17:26:29.17ID:BjY8+1pb
ソースを公開する時に型は必須だな
複数人開発だと必然的に他人にソースを公開する訳だから型は必須だな
一人で開発してる時も未来の自分にソースを公開すると考えれば型は必須だな
2020/10/10(土) 17:30:06.10ID:BjY8+1pb
この理屈で行くと型が必要無い状況は使い捨てのコードを書く時になる
実際、実験的なコードを書くときはJavaScriptでサクッと書いてる
2020/10/10(土) 17:31:37.81ID:hWE3VueY
型を指定するのは実行速度のためだと思ってましたが違うんですね。
2020/10/10(土) 17:41:03.06ID:myt/k5c7
個人で、1ファイル、2, 300行程度のオモチャしか書かない奴にはいらないかもしれんな
複数人で、2ファイル以上のまともなコード書くなら、型は必須

「全てのfunctionが何かを引数にとって何かを返します。その『何か』はコードを読まないとわかりません」
じゃ困るだろ
2020/10/10(土) 17:46:03.97ID:hWE3VueY
複数人でも一つ一つ関数定義を確りして
コメントを残せば後から見返してもわかりそうな気がするのは
私がまだ未熟なんですね。
2020/10/10(土) 17:46:21.26ID:jqYiciHv
3ヶ月前の自分は他人
webのようにリリース後にメンテする可能性があるなら確実に過去の自分を恨むだろう
2020/10/10(土) 17:56:33.59ID:myt/k5c7
>>512
でもそのコメント、人によって書き方バラバラだし、その通りに実装・使用されているかわからないよね
そのコメントが規格化されていて、その通りに実装・使用されていることを保証してくれるのがTypeScriptとでも思え
2020/10/10(土) 18:02:00.15ID:hWE3VueY
わかりました。TypeScriptの勉強をしてみます。
バックにはMicrosoftとGoogleがついてるみたいですので
安心して学習してみます。
2020/10/10(土) 18:14:27.06ID:myt/k5c7
せや
どこの馬の骨ともしれんバカではなく
MicrosoftとGoogleの天才たちを信じろ
2020/10/10(土) 18:32:27.26ID:ekvQuOcm
型情報による補完などのエディタの支援機能がないと書けない体になってしまった…
2020/10/10(土) 18:36:49.23ID:jkmsbl3z
>>502
これさ無茶苦茶なコード書いてる人がキレイなコードかけるようになるって点でTSって素晴らしいと思う
2020/10/10(土) 18:39:08.90ID:hWE3VueY
今日までエラーがでなければどんなコードでもいいと思ってました。
2020/10/10(土) 18:52:40.99ID:jqYiciHv
最終的にはそうだよ
同じ動きをするならユーザーにはどんなコードも同じ
開発側から見てどうか?ってだけ
2020/10/10(土) 19:08:51.73ID:hWE3VueY
開発側の立場で考えるとTypeScriptが必要になるんですね。
522デフォルトの名無しさん
垢版 |
2020/10/10(土) 19:15:05.89ID:SwfxuCYC
>>501
なんか…Javascriptやってる人達ってこれくらいのレベルなんだよな…
今から始めるあなたはともかくとして、そのアドバイスしてくれたお友達のレベルもたかがしれてそう。
2020/10/10(土) 19:19:58.24ID:PAS52Dcu
Pythonなんかもっとひどいぞ
ただ色んなレベルの人がいるというのは新しい人が入ってきている証拠でもあるので、歓迎すべきことでもある
誰でも最初は初心者なんだしさ
2020/10/10(土) 19:42:13.27ID:w1paHL08
技術ブログ等で公開されているTypeScriptなコードの品質の平均はJavaScriptのそれと比べて高い。そういう意味でも使う価値がある。
もちろん例外はあるけどね
2020/10/10(土) 21:06:49.30ID:tFVag5PE
>>521
開発環境でリファクタリング機能の
性能に注目出来るぐらいになりましょう!
2020/10/10(土) 21:08:17.35ID:tFVag5PE
javascriptの言語仕様では
まともな物は作れませんので。
2020/10/10(土) 22:14:14.78ID:fDny8+f1
>>524
それはTypeScriptの採用によって品質が向上したというより、タイプ量やビルドの複雑さの多少の増大と引き換えに静的型付けを取るという
極めて正しい選択ができるだけの能力があるエンジニアが書いたからだろうね
2020/10/10(土) 22:15:54.62ID:6sdqDrQt
俺はC/C++からやってるけど、JavaScriptで型がなくって困るって事はないなあ。
ただ、形無し言語しかやったことないのなら、TypeScriptの方を薦めるけど。
(なお俺は生JSしかやっておらず、TSは触ってもいない)

Cみたいにメモリ領域を厳密に規定する為ならともかく、
Java以降の言語の型って、コンパイラで落とす為でしかない。
しかも、入口と出口で都合2回書いて、それが合っているかを確認するだけ。
実際、それでもタイポを落とせるので大変役に立つのは事実だけど、
型を間違ってエラーになるなんて事はほぼ無いし、有ってもスモークテストで確実に落とせる。
だから、言ってしまえば、スモークテストが通るまで捗るだけ。

この点、現状のC++やRustは空回りしてて、
コンパイラで落とす為に厳密に書く必要があり、結果的にやたら遠回りしてたりする。
俺が思うにあれは完全に本末転倒。コード構造が制限を受けてどうするんだよ?

この点、TSは無駄に気負わず、
型の恩恵を受けつつ、面倒になれば省略出来る、位だから受けているのだと思う。


ただ、型の恩恵なんて上記の通り、スモークテストが通るまででしかない。
その後のメンテナンス性は、特にオブジェクト指向(OOP)を正しく適用出来てるかがキモになる。
ところが、JSではOOPは学べない。これはTSも同じだと思う。
周りの環境が酷すぎて、初心者〜中級者にはOOPするメリットを感じられないから。
(HTMLも酷いが、ネイティブオブジェクトを拡張してもろくに動かないのも酷い)
Javaや.NETみたいにびしっと作ってあれば、比較的小さな規模でも恩恵を受けられるが、
JSはそれらよりは断然高レベルプログラミングで、その分行数も少なく済み、
大体においてそんなに大規模にもならないし、OOPガッツリやる意味もほぼ無く全て済んでしまう。

だからその先、具体的にはソースコードが10k行を越えるまでは、
JSやTSは学習用言語としてはいいと思うよ。
その辺になってきて、一つの言語しか使えないってのもほぼ無いから、杞憂かもしれんが。
2020/10/10(土) 22:22:26.76ID:A0BwGHo+
何言ってんだこいつ
2020/10/10(土) 22:29:28.83ID:xMQUNHWy
OOPなんて使えて当たり前。OOPを神格化してる奴でOOP以外の技法も使いこなせてるヤツ見たことない。
それにOOPの価値はコードの大小に依らない
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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