あけおめことよろ (遅)
社会人になって以来、盆暮れ正月のような長期休みは何か1冊技術書に取り組むことを習慣にしているのですが、2021年年末から2022年年始にかけて取り組んだのがこの本になります。
ちなみにこの本を選んだ理由としてはTypeScriptに興味があったから。自分はSIer勤めの自称サーバサイドエンジニアなのですが、そういうロートルな環境にいてもTypeScriptがフロントエンド屋さんにおいて大流行りしていることは耳に入っていきます。なぜフロントエンド屋さんはそうまでしてTypeScriptを持ちあげるのか、その謎を解明するため、我々調査隊はアマゾンの奥地へと向かった…
さて本書の概要ですが、CLIツールやWebアプリケーションやReactライブラリを実際に手を動かして作成しつつ、TypeScriptの文法や機能を学んでいくというものです。この実際に手を動かすというところが自分の勉強法にあっていて、とてもよかったです。また、実際に手を動かしながら学んでいきやすいように構成や内容が工夫されているように感じました。
「プログラミングやフロントエンドアプリケーション作成の経験はあって、Node.jsの基本的なエコシステムなどは理解しているが、TypeScriptの経験はない」という人が対象読者でしょうか。自分はこれにぴったりだったと思います。今後仕事でTypeScriptを利用する予定などはまったくないのですが、この1冊さえこなしてしまえば即戦力とまではいわないものの、既存のTypeScriptアプリケーションの保守改修ぐらいはできそうです。それだけ本書の記述が丁寧かつ体系的で、しかも実践的であるといえます。
自分の観測範囲が悪いだけかもしれませんが、それほど話題になっていない割には、かなり品質が高い1冊であると感じました。TypeScript学習の特急券が欲しい人にはうってつけですね。基本的には褒めるところしかないのですが、一応よくないところも述べておくと、ユニットテスト関係の記載があってもよかったかなとは思いました。ただその欠点があってもしても、かなり質の高く、勉強になる1冊でした。
ここからは本書と関係のない、個人的な感想ですが、世の中でTypeScriptがもてはやされている理由がわかった気がします。フロントエンドで型を活用した開発ができるというのもそうですが、TypeScriptという言語自体、かなり出来が良いですね。自分は普段Javaによる開発が多いのですが、そのJavaと比べると、TypeScriptの型システムはかなり厳密というか、細かいところにまで手がゆきとどいている印象を受けました。
またTypeScriptの文法・書きぶりですが、CやJavaやJavaScriptになじみのある人であれば、相当受け入れやすいというか、学習コストや頭のスイッチングコストが低そうです。TypeScript特有の機能を除けば、一般的なプログラミングの経験があれば、苦もなく読むぐらいはできそうです。
あとはVSCodeとの連携が容易というのもよいですね。自分はVSCode + WSLという環境で本書の写経を行ったのですが、開発体験はとても良かったです。とても快適でした。VSCodeもITかじったことのある人なら知っていて当然ぐらいになってきた(主観)ので、こういうよく使われるもので利用しやすいというのもTypeScriptのよいところだと思います。