TypeScript 学習記録 #1(学習ルート策定やTS参考教材一覧)
これまでJavaScriptのみを扱ってReactなどを触ってきたが、TypeScriptを本腰入れて学ぼうと思ったので都度メモを残しつつ学習することにした。
物は試しで記録として残そうと思っているだけなので、合わなければ途中でやめる。
見返す用リスト(主に自分用)
TypeScript基礎学習を完走したので、いつでも見返すことの出来るようにリスト化しておく(5/17)
- TypeScript 学習記録 #1(学習ルート策定やTS参考教材一覧)
- TypeScript 学習記録 #2(TS / ESLint / Prettierの環境構築)
- TypeScript 学習記録 #3(基本の型定義・関数の型定義)
- TypeScript 学習記録 #4(オブジェクトと配列の型定義)
- TypeScript 学習記録 #5(ジェネリック型(ジェネリクス))
- TypeScript 学習記録 #6(InterfaceとType Alias)
- TypeScript 学習記録 #7(非同期処理の型定義(Promise))
- TypeScript 学習記録 #8(Reactに関わる型定義)
Who are you?
フロントエンドエンジニアになりたい実務未経験者です。
プログラミング自体の学習開始は2020年の8月から。
初めのうちはRubyやRailsなどのバックエンドを学んでいたが、後に自分の興味関心がフロントエンド寄りにあることに気付いたためReactを中心にフロントエンド学習を始める。推しはReactとNext.js。Vue(Nuxt)も触ってみたい。
TypeScriptに対する現状の理解
TypeScriptが「どういうものなのか」についてはある程度理解しているつもりではあるが、「具体的な書き方」については基本的には殆ど知らない、そんなレベル感。個人開発はJSで開発した。
「動的型付け言語のJavaScriptに型を付けることで、開発段階で起こりうる潜在的なバグを防ぐことができる」、その程度の理解。
学習ルートの策定
おおまかにTSを理解するまでのルートでも決めておく。
文字情報よりは動画情報の方が自分には合っていたりするが、そこはケースバイケースで対応。
アウトプット主体で必要に応じてインプットが理想だが、さすがに何も知らない状態でアウトプットは出来ないので、必要最低限のインプットのラインをどこに置くかが重要となる。実際問題どのあたりに置くかは今後検討。
何を以てゴールか
何を達成したらTSを最低限理解できていると呼べるのかを自分なりに考えて、それをマイルストーンにして進んでいく。
- TSの環境構築や設定の仕方を理解し、TSの設定項目を最低1つ変更できる(tsconfig.json)
- 記事や動画を参考にしながらTSで開発ができる
- 自分なりにアレンジできるところはアレンジする
- 自分で1から考えて簡単なものをTSで作ることができる(Next.jsベースで作る)
- データを扱う場合はFirebaseやSupabaseを用いて簡単に。
- ※型の付け方については恐らくやっていくうちに理解するので無理に覚えようとはしない
- ※ひとまずの期限は5月末
教材候補
参考にしようと思っている記事や動画などの一覧。
インプット中心
- ★日本一わかりやすいTypeScript入門
- 信頼のトラハックさん
- ESLint&Prettier含めた環境構築まで行えるのは魅力
- アップされた日も直近であるため情報鮮度も高い
- ★サバイバルTypeScript
- よさそう。TSの必要最低限を学ぶといった感じ?現行(2021.05.07)時点での分量としては比較的軽めに思えるので並行して取り組むのもありかも。TSの歴史的経緯なども学べる?
- ★TypeScript Deep Dive 日本語版
- 分量は多いが有益そう。上2つのあとにやったら丁度良いか?
- 最速で学ぶTypeScript
- TypeScript学習ロードマップ
-
『りあクト!』
- 3冊あるため少し重そう?
- 仕事ですぐに使えるTypeScript
アウトプット中心
- ★モダンJavaSciptの基礎から始める挫折しないためのReact入門
- 安心のじゃけぇさん。じゃけぇさんのこの入門講座をTSで作り直す
- コンポーネント設計まで意識できたらなお強い?
- ただなぞるだけではなくて、自分なりに機能追加やデザイン組み直したり、Firebaseでデータ保存できるようにするとかして個人的に使いたい説 is ある🤔
- kazuさんのFirebase×TS講座(最速で学ぶFirebase + React Hooks (TypeScript))が参考になるかも。ただちょっとSupabase使ってみたい欲がある…😒
- React中心なので、ここは個人的にNext.jsで置き換えたい&Tailwind追加も
-
Reactに入門した人のためのもっとReactが楽しくなるステップアップコース完全版
- じゃけぇさんのReact講座ステップアップ編
- 講座後半にTS×Atomic Designで開発できる
- 入門編同様、React中心なので、ここは個人的にNext.jsで置き換えたい
- 究極は個人開発物(Qli)をTSでリプレースしたい
注意点メモ
tsconfig.json
で”strict”: true
にする。これをしないと型定義を実施しなくてもエラーにならないらしい。
→ 続く(続け)
→ 続いた(TypeScript 学習記録 #2 )
Discussion