TypeScriptが使われてるプロジェクトだったから仕方なく使った
面倒な型を書いてる分、色々楽になることを期待してたが思ってたのと違った
JavaScriptだとある場所の値がなにかわからない
コードを追うのも大変だからbreakpointの設置かdeubugger文を置いてたりして、値とスタックトレースを見てみる
TypeScriptだと静的だからクラス名がわかってすぐにどういう値になるかわかると思ってた
だが実際には型は具体的なクラス名じゃなくてインターフェース(もしくはtype)
それだけだと◯◯ってプロパティがあるという情報はわかっても具体的な値まではわからない
最低限◯◯があるだけで書いてないけど実は✕✕もある可能性はある
実装を見るにはそのインターフェースを実装するクラスを探すしか無い
ある程度大きいプロジェクトなら多数見つかるし、呼び出し場所を見てコードを追わないと実際にどれなのかはわからない
結局breakpointかdeubggerを使ってどんな値なのか見てる
それってJavaScriptと一緒
全然楽にならない
あとは補完がちょっと便利になるくらいだけど、JavaScriptだって静的解析をある程度やってくれるし補完はそこまで便利になった感を感じられてない
規約がしっかりしてるチーム開発で効果あるんじゃね使ったこと無いけど