LoginSignup
4
2

More than 1 year has passed since last update.

使える TypeScript を覚える一歩目

Posted at

最初の言語で TypeScript を覚えようとした時や、JavaScript の経験から続きでやろうとして伸び悩むときにお勧めのアイテムを紹介します。一歩目 を踏み出すエントリーポイントにどうぞ。

書籍

プロを目指す人のためのTypeScript入門 安全なコードの書き方から高度な型の使い方まで

リンク先で目次の一覧が見れます。

  • 発売: 2022年4月
  • 著者: 鈴木僚太 氏
  • 頁数: 424 ページ

個人的には、これぞ教典と思える一冊です。
社内では「ブルーベリー本がお勧め」と吹聴してますw

目次を見て圧倒するかもしれませんが、TypeScript ならではの記述法や演算子、テクニックが幅広くぎっしり網羅されています。それでも実際には、1つ1つが程よく短く纏まっているので読み進めやすいというのが理由です。
さらに 38 個にもおよぶコラムで「そうだったのか」と理解を深めれたり、実務におけるノウハウ、周辺の情報も知れたりできます。

主要所の1~8章は各章が70ページ前後にならされているので、各章を区切りとして継続的な学習に凄く便利です。時間に余裕があるなら1日1章のペースで自分でコードを書いて実行しながら読み進めれば、2週間弱でマスターできる計算です。

読み終わる頃には any をよく書いていた自分がもう過去になり、async/await/Promise を自由に操れるようになっていることでしょう。

実務として使えるレベルに言語を習得するにはこの一冊で事足ります。

サイト

TypeScript Deep Dive 日本語版

多くの有志の方々により翻訳されている TypeScript Deep Dive です。
左メニューからポチポチして見れますし、検索もできるのでまずはこのサイトをぐるりと散策するのも良いと思います。

Deep Dive の名の如く主要所に絞って、らしさの紹介がメインのコンテンツです。もっと使えるテクニックを身に付けたいと思ったら(必要を感じたら)上の書籍に手を出すというステップも選択肢になります。

サバイバルTypeScript

「はじめに」に書かれている通り、実務でつかう際によく使うものは大体揃っています。

左のメニューは折りたたまれているので少なそうに見えますが、展開するとそのボリュームに圧倒するかもしれません。
Deep Dive のようにぐるりと散策・・・は結構しんどいので、気になる章から読むのが良いです。

お勧めの章は Next.jsで猫画像ジェネレーターを作ろう です。
プログラマーといえば、猫ですよね? ヨシ!

フロントエンドではおなじみの Next.js を使ったチュートリアルです。猫ジェネから発展させて自分なりの工夫を仕込んでいくと TypeScript 言語自体に加えて、周辺のフレームワーク・関係性も一緒に学べて良いです。

今すぐに試す

プレイグラウンド

ローカル開発環境を準備する手間が惜しい、すぐに試したいんだ!!
というあなた、上のリンクをクリックすれば試せます。

じっくり試す

ローカルでじっくり試したいなら、こちらの記事もお勧めです(宣伝)

おわりに

例え話として「TypeScript は JavaScript みたいなもの」「JavaScript のプログラムはそのまま TypeScript でも大抵動く」とされたりします。ある側面から見れば合っていますが、それは TypeScript のもつ魅力のほんの一部です。がっつり使えるようになるともはや別言語であり、開発環境との組み合わせでその威力も倍増するのを感じれます。

個人的な魅力は、凄まじいまでの型推論のパワーです。

推論の結果、ダイナミックに新しい型が組上がり、それがジェネリクス関数やクラス・別のタイプ等へ広範囲に適用され、それがさらに型推論されて他所で適用される・・・。おまえは何を言ってるんだと思われるかもですが、僕も最初は不可解な挙動で理解が追いつかなかったです。

小さいコードから練習して組み合わせたりして覚えてきたら「はえーすっご!変態的な推理力(誉め言葉)」と関心しました。

一歩目からどんどん進んで、何十歩目か、プログラムを再利用性よく部品化して効率を上げたいときに面白味が増すのではと思います。この辺りはいつか記事に出来たら…。

それではまた!

4
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
2