TypeScript part3
■ このスレッドは過去ログ倉庫に格納されています
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/ TypeScriptできる→俺凄い
ネトウヨ的DQN思考法
素直にC#使えばぁ〜 >>47
>詳しく。reactと相性良いよね
詳しくも何も、Windows10はjs+htmlでデスクトップアプリが開発できるから、それでソフトを作っているだけ。
ただUIを全部作る必要がある。 >>49
最近Blazorとかいう強引な技術が出てきてるぞ TypeScriptは折角ならC#と継承とかの書き方も統一して欲しかったなぁ Javascriptのフレームワークででかい顔w
Javaプログラマーからしたらお笑い種ですよ
ヴァカっぽくて笑える JavaScriptやらないでいきなりTypeScriptから勉強するのってアリ?
でもjQuery覚えようとしたらJSも勉強しなきゃならなんのよね つうか型システム以外はJavaScriptなんだから、TypeScriptを覚えることは普通にJavaScriptを覚えることにほぼ等しい 特に最新のJavaScriptに変換すると、単純に型指定だけが無くなったものが出力されることが多くなったな むしろtsから入った方がいいくらいだ
生のjsは危険 俺もTypeScriptから学んだ口だ。
ライブラリの使い方とかvscodeが教えてくれるようになるからむしろjsを巣のまま学ぶより調子が良い ビルドするのめんどくさい
TypeScriptのままレスポンスを返して動くようにしてほしい Typescript からやるにも、良い書籍が無くない?
JavaScript の良い書籍で基礎学んでからTypescript やった方がわかりやすい気がする 書籍とか流れが速すぎて向いてないわ
最初にやる言語以外で言語を学ぶ目的で書籍買うなんてC/C++くらいだろ そこまで変わらないのね 安心
tsから学んでみます
皆さん教えてくれてありがとう〜 TypeScriptに __LINE__ マクロみたいな行番号埋め込む機能ってないよね?
デバッグ用にあったら良かったんだけど。 >>62
んなこたーない
Effective JavaScriptに書いてあるようなことが自然と全て理解できてるなら要らないけど、そんな奴が5chを見てるわけないし Effectiveは確かに読む意味がある本だわ
でもそれJavaScript既に知ってる人間が読む本だろ effは時代遅れ
tsやってりゃ半分は知る必要も無い tsそんなにいいかなぁ?
jQueryからvue、angularまで色々やってるけど、利点がよく分からないよ。 そらjQueryからvue、angularなんて脇道に逸れた時代遅れのゴミ使ってるセンスのない、
ぼんやりしたボンクラにとっては、利点も糞も気付けないわなw angularは1系とか触ってたん?
今はtsで書かれてるはずだからts必須みたいなもんでわ? オワコンω
ウェブ業界に激震、全てのAndroid端末でJavaScriptが標準無効化、jsなしに作り直さないとGoogle村八分
https://hayabusa9.5ch.net/test/read.cgi/news/1535358006/ >>71
> 2017年10月から
なんとゆう今さらωωω
そしてAndroidではKotlin標準化と併せてTSも標準化されたのをご存知ないのですンゴ?ωωω TSの標準化はGoogle社内の話で、Android関係なくね? 別に。何も変わらん。
諸事情でバベってるのにFlowも入れてないゴミどもは
最新のバベルなんて使わないし使えないだろうから相変わらずコヒースクリプト(爆)みたいな生カスジャバスクだし
既にTS使ってる奴らはTSだし
何も変わらん。 今さらドヤ顔でゆるいルール厳しいチェックとか言ってるのくそむかつく
厳しいルールが今まで普通だったのは
アバウトなのを許したらめちゃくちゃなのを差し込んで意図的に環境破壊していく会社がいたからだ
てめーらだけ安全地帯だからって 早く世の全てのJSプロジェクトがTSになりますように >>51
めちゃくちゃ重くてスマホではまず動かないレベルってんじゃなかったっけ? importは他ファイルのクラスを持って来れるようにするのよね
@xxxxxのデコレータの役割がわからないのだけど誰か教えてくれんかね・・・
「付加情報をclassやmethod等に付与するための仕組み」ってなんぞ
Javaでいうアノテーションらしからそれも調べたけどわからない・・・^p^ TypeScriptでジェネリクスを使ったとき、C++でいうテンプレートの特殊化のようなことって
できないもんですかね?
function func<T>(x) でTがnumberとstringの場合とで別の処理ができたらいいんだけど。 型情報で実際に呼ぶ関数のオーバーロードの振り分けはできたりはしない
共用型 string | number を使えば string と number 以外の型は入らなくなる
実装部分は typeof arg === 'string' とかで分岐。返り値の型は推論される
推論が思ったようにいかなそうなら mapped type 使うなりオーバーロードの宣言を書いたりしても良い ありがとう。やっぱりダメか。
> typeof arg === 'string'
Tがstringだったら'string'と比較するってのをやりたかった。 Typescriptのコンパイラのソースコードを見たが、
swicth文による条件分岐が乱用されていて美しいソースコードではなかった。
もっと良い設計があるはず。 構文木のような構造には多態はうまくマッチしないんだよ 構文解析とか条件分岐(状態遷移)の塊だろ
状態遷移とかswitch文そのものだ >>88
そう思うならお前が改善してプルリク送ってもいいのよ >>91
なぜ高貴なハイクラスエンジニアの俺様がただ働きせにゃならんのだ?
バカなのか? Typescriptのコンパイラのアルゴリズムは何ですか?
ソースコードを見たところ再帰下降解析らしいけど、それだと左再帰で問題が出るよね。 ハイクラスの俺様が就職したら低レベルの土方を蹴散らしす 5chになってから急に自分の書き込みに誤植増えた
絶対何かある 就職してないのかよw
ハイクラスなら就職なんてしなくても学生の内から引く手あまただろ
または起業しろよ 今の職場でts+Vue.jsで作ってる案件があるんだけど、コードの肥大化と共に
型チェック付きのビルドに10分以上かかるようになっちゃって型チェックなしのヒルドに変更してしまってるんだけど
そういう事例って他のところにもある? 世界でも有数の大規模ソフトウェアであるVSCodeがTypeScriptでビルドされている以上、
利用者のスキルの問題でしかないな まぁ、今どきVueを選んじゃう技術力・審美眼のないとこじゃしょうがないんじゃないか?
糞うるさいポンコツウインドウズXPとか使ってそう React使いがよく言うよな。技術力&審美眼。
魔窟になってるのを技術力と言い換えて、そのアーキテクチャを美と言い換えるやつ。 うちのプロジェクトもビルド時間5分なんでどうにかしたいなぁ。
makedepend+makeが欲しい。 >>98
それ可笑しくね?vscodeビルドしたことあるの? >>99
mbp2017つかってる。メモリは8gbだけど >>103
チャイニーズに尻尾振るガラパゴスVue民にはお似合いのゴミだなw module と namespaceの使い分けは
どうやればいいの? 使い分けるものではない
moduleはnamespaceに置き換えられた
常にnamespaceを使用せよ type と interface の使い分けは
どうやればいいの? >>108
ほぼ一緒だから気にしなくていい。
Typescriptの仕様書にも「非常に似ている」と書いてある。
ただ、interfaceは
inteface Point {
x:number:
}
interface Point {
y:number:
}
というようにプロパティの追加ができるが、typeはできない。それぐらいしか違いがない。 TSLintのデフォがtypeよりinterfaceを推してくるからとりあえずinterfaceにする事が多い >>110
これメンスだがtypeしか使えない機能なかったっけ? 交差型、共用体型を定義できるのはtypeだけだな。 例えば file1.tsを編集していて、バックアップとしてそのファイルを複製して
file1 - コピー.ts
を作ったとすると、関数名が重複していますみたいなエラーがダダダーと
出るんですが、どのように対策すれば良いでしょうか? 自分はいつもバックアップはfile1.ts.bakって付けてる。 >>115
サーバーが必要なんでしょ?
そんなの持っていないし gitにサーバが必要とか正気か
いいからとりあえずチュートリアルやってみろ >>119
man git
で英語を読む
でも、君にはそんな技術も学も根性もなさそうだから、
やっぱりfile1 - コピー.ts.bak181110ってするのがいいと思うんだ。
いや君をバカにしてるわけではなくて。
猿は猿らしい生活をした方が幸せだと思うからさ。ね。 >>119
これ以上は他所でやってくれ
お前さんの質問に対する回答は
* 編集バックアップをファイルコピーでとるというのがクソ
* 拡張子も変えてないならビルド対象になって当然
でおしまい 流石に不親切すぎる。猿でもわかるgitとか読むと良い TypeScript使うな。汚らわしい。
バカはバカらしくPHPでも使ってろゴミ。 elem.onclick = function () {
if (this.classList.contains('classA')) {
・・・
}
こんなコードを書くと、Visual StudioのTypeScriptで
エラー TS2339 (TS) プロパティ 'classList' は型 'GlobalEventHandlers' に存在しません。
と出るのですが、生成されるJavaScriptコード(上のコードを同じ)は問題無く実行出来る。
これは何故ですか? あのさぁ…何のためにTypescript使ってんのよ… thisを使わないか、addEventListener使う this: GlobalEventHandlers のところは this: thisじゃだめなのかな? >>126
elemにちゃんと型(多分HTMLElement?)が指定されてればそんなエラー出ないぞ >>129
addEventListenerでも同じだろ addEventListenerは要素ごとにシコシコ定義されていて、thisがその要素になっているのでOK
onclickとかはGlobalEventHandlersでmixin的に定義されていて、this: GlobalEventHandlersになっちゃってるのでNG >>135
なるほど。でも、そもそも
this.classList ではなくて
elem.classList と書けばいいんじゃないか ようやくEitherでホイサーできるTSがきたか
しかしleftrightとパタマチがないとダメやろこれ よんだら、これEitherじゃなくホイサーだろ・・・
エラー処理強制できないEitherってナンジャー?
ゴミジャー 通常、string と string | null は同等なんでVSCodeのポップアップでも | null は省略されるけど、
これを省略させないで表示する設定ってないのかな。
strictNullChecks 使ったら区別できなくて困った。 通常、string と string | null は同等じゃないです 他に困ってる人がいないってことは strictNullChecks 自体あまり使われてないのかな。 ■ このスレッドは過去ログ倉庫に格納されています