いつTypeScriptを始めるのか
LL祭り「Beyond JS ~ JavaScriptの改良に未来はあるか?」の裏番組へようこそ
「この中に2人、非初心者がいる!」
(把握してる範囲で)
注意
注意
- 使い始めて一ヶ月くらいです
- これまでの言語経験はJSとPerlが主です
- 4、5人で使ってる途中です
- メインのエディタはWebStorm使ってます
いつTypeScriptを始めるのか
今じゃない
今じゃない
- まだ結構変更がある
- コマンドライン引数なくなったり
- 安定性が低いバージョンが公開されたり
- 更新頻度も結構高いし
- わりと重い
今じゃない
- ES6 simとしてもサポート範囲がまだちょっと。。。
- (TypeScriptの問題じゃないけど)WebStormの安定性もいまいち
- (思ってたよりは多いけど)型情報がない既存ライブラリも結構
- JSで書かれたライブラリは結構使いにくい
JSベースの人が手を出すならver 1.0.0を待つ方がいい
「じゃあ、まだ使わない方がいいの?」
そういうわけではない
今始めたほうがいい人
- 静的言語がベースの人
- 複数人での開発
- 大きなフレームワーク上での開発
- 長くメンテする可能性が高いコード
静的言語がベースの人
- 静的言語の概念がそのまま使える
(静的言語の概念がないと辛い)
- エディタのサポートも得られる
(エディタのサポートがないとリッチなLint)
- 既存言語に近い設計が自然にできる
(JSっぽい設計は気持ち悪い)
複数人での開発
- ドキュメント書くよりは楽
(他人のコードいじるときは型があると嬉しい)
- コード間の整合性がとれているか確認しやすい
- メリットがわかりやすいので型を書くモチベーションになる
- (コードのクオリティを保てるかは正直疑問)
大きなフレームワーク上での開発
- 型情報もドキュメントになるので、ドキュメント参照する回数が減る
- 静的言語の概念の上に構築されていれば理解しやすくなる
(「きれいな設計」の共通概念が持ちやすい)
- (ただし、JSで書かれたフレームワークの場合、正直このメリットは大きくない)
長くメンテする可能性が高いコード
- 既存部分を変更しても全体の整合性が保たれる
(もちろんUnitTestがあるならそのほうがいい)
- IDEのRefactoringサポートを得やすい
(ただ、現状WebStormの対応度はいまいち)
これに当てはまらない人は使っても「?」という感想になると思う
今後どんな位置づけになるか予想
今後どんな位置づけになるか予想
- 正直「これまでJSを書いてきた人」に刺さる感じはあまりない
- 他言語からの呼び水としては非常にありそう
- 独自の言語圏になりそうな感じもする
- 型情報を外してES6 simとしてだけ使うオプションとか出るんじゃないか
使ってみた感想
使ってみた感想
- TypeScriptっぽく書くには多少慣れがいる
- WebStormの警告がコンパイラの警告と違ったりする
- 動くドキュメントとしては便利
- 型情報書いてないライブラリもあるのでOSSにコミットしてみたい人とかにはおすすめ
- そういえば、ケツカンマ自動的に変換してくれるね
(ついでに)コマンドラインオプションに関して
コマンドラインオプションに関して
- なんでか--exec消えてたり
- --allowboolいるのかな。。。?(ない方がいいのでは)
- --allowimportmoduleコマンドラインオプションじゃなくてもいいのでは
- コンパイル遅くて辛いなら--noResolveという方法も
「JSよりCoffee」な人はver 1.0.0までまつのおすすめ
個人的には「Delphiと同じ作者が作ってる」というだけで使う理由は十分
ご清聴ありがとうございました