初めに
前提として、この記事は「TypeScriptに精通した私が初心者に向けて教える」という趣旨のものではありません。「JavaScriptならちょっと読める」程度の私が備忘録、モチベーションのために執筆したものであります。
したがって、経験則から書かれるものではなく、ネットの記事やQiitaのまとめからの引用がほとんどになりますので、わかりやすさ、正確さを選ぶ方はそちらを見てもらった方がよいかと思います。
同じような初学者の方にとってモチベーションになれば、経験豊富な方には誤った認識をぜひコメントで指摘していただければ幸いです。
筆者の技術力
- C,Python (基礎文法~ポインタ、アルゴリズムの授業、研究での使用など)
- HTML,CSS,JS (大半を生成AIに支援してもらったため読めるが書けない)
- C++ : (AtcoderのD問題をたまにギリギリ完答できる程度)
TypeScriptについて
特徴
- Microsoftが2012年に開発したオープンソースのプログラミング言語
- JavaScriptのスーパーセット(上位互換)である
- JSと違い型の宣言を可能にした。
メリット
- 型の指定によりエラーの早期発見が可能
- JavaScriptとの互換性がある
- 作れる物の幅が広い
- 大規模な開発に向いている
デメリット
- 日本語の情報が比較的少ない(今後改善されていくと予想できる)
- 学習コストが比較的高い(JS知識+型システム+etc..)
なぜTypeScriptを学ぶのか
学習コストの高さ=覚えられることの多さ
TypeScriptの公式ドキュメントにはこんな文言があります。
We frequently see the question “Should I learn JavaScript or TypeScript?“.
The answer is that you can’t learn TypeScript without learning JavaScript!
出典 : https://www.typescriptlang.org/docs/handbook/typescript-from-scratch.html
つまり、TSの学習を進めるにあたってJSの学習は避けて通れない道であるということです。これは裏を返せば、TSを学べばJSの大部分も学べると認識してもいいのではないでしょうか。加えてTSでは型システムやジェネリクスの様な追加で学ばなければならないことも多くあります
ということで筆者の様な時間とやる気が有り余っている様な人間は是非学ぶべきです!(と思います。)
単純にモダンな技術っていいよね
正直私はミーハーです。どうせなら新しい技術を学びたいなんていう浅はかな思いは無限にあります。
また、当方学生であり、就活を控えています。下記リンクの様なインターンまとめサイトを見るとどうしてもTypeScriptやReactの様なモダンな技術が目立ちます。そこでどれか一つでも"使える技術"として胸を張って言えるようになりたいと思い、始めることにしました。
今後の学習方針について
- ProgateでJavaScriptの基礎をやり直す
- サバイバルTypeScriptを一通りやる
- TSを使ってwebアプリを一つ作ってみる
- なるべく生成AIは使わず、手を動かす
まとめ
最後に、かなり主観的な話にはなってしまいますが、先ほど申し上げた通り、私は就活を控えた学生です。授業である程度プログラミングについて学んだものの、エンジニアの就活で戦えるような技術力はまだ持っていないと認識しています。正直焦っています。 不安でいっぱいです。少しでもこれを解消できるようになればなと、思っています。
TypeScriptへの認識や学習方針について、なにかアドバイスできることがありましたらコメントしていただけると幸いです。😸