VRChat APIのNode.jsモジュールをつくりました途中
つくりました。
vrchat-client
初めてTypeScript使ったり、NPMモジュール公開したりした気づきなんかを
クリスマスイブ
ですが他にやることもないので書いていきます。
TypeScriptは良い
今までなんとなく別にJSでいいし
と思って使わなかったが今回使ってみたら好きになってしまった
いくらでも書かれた内容ではあるが再度自分が思ったことをまとめてみる
良いと思った点
型指定ができる
-
型指定できるJS
がこんなに書きやすいとは思わなかった - JSではJSDocでコメントとして書かないといけなかったことがほとんどコード内に埋め込める
- 型指定でごちゃごちゃすると思ったらむしろスッキリしたコードになる
- そもそも型をわざわざ書くことが少ない
- 変数宣言は型推論でほとんどどうにかなるのでJSと同じように書きながらIDE補完に肖れる
- 関数定義時はしっかり書く
- 型の定義、エイリアス定義が楽
- 細かいObject設定は
Interface
でできるしtype
句でエイリアスも簡単
- 細かいObject設定は
Classが思い通り書ける
- JSでは意味わからない制約が多くてクラスが思い通り書けない
-
private
等のアクセス修飾子があり明示的に書きやすい - フィールド宣言ができる
-
Interface
がある
これだけって?
いやいやめちゃくちゃ変わる。
どういうときに使うとよさそうか
- オブジェクト指向的に書く時
- 大きめなシステムを作る時 (特にNodeでサーバサイド実装とか)
- ライブラリとかフレームワーク作る時
- 使う側はIDEの補完があって使いやすくなる
もう全部TSでいいんじゃないかな
書いてみてもうJSに戻れなくなりました。
めんどいから・・・と敬遠している方は一度触ってみるといいと思います。
以上、ここまでTypeScriptの感想
npmモジュールを公開しようとしたが失敗
初めてnpmモジュールを公開してみようとした・・・が、失敗!
解決したらこの記事を更新していこうと思います。
原因調査中
- TravisCIのテストがほぼ通らない
- 何故かテストするたびに結果が違う・・・
-
npm publish
したやつがimportできない- tsconfig.jsonを正しく理解できていない気がする
使用例
- まだ未完成なのに使って頂けました。
- むしろどうやって使ってるのか知りたい
- GoogleHomeでフレンドの状態がわかるアプリ
まとめ
- TypeScriptはいいぞ
- npmモジュール公開思ったより難しい・・・