0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【入門】TypeScriptの概要をまとめてみた

Last updated at Posted at 2022-04-20

はじめに

現在、独学でプログラミングを学習している
「駆け出してもいなエンジニア」です!:bicyclist:

Reactを学習する中で、TypeScriptも触れた方がいいということを聞き、アウトプットと備忘録として、
今回この記事を投稿しました。

訂正が必要な個所などあれば、お知らせいただけると大変助かります:bow:

本編はここから!↓

Typescriptとは

TypeScriptはJavaScriptの上位互換でJavaScriptに型が追加されているもので、TypeScriptはJavaScriptにコンパイルされます。

JavaScriptだとデータなどに明確な型がなく、チーム開発の際はうまく機能しない場合がありますが、TypeScriptは型が追加されているので、開発の規模が増えた際でも管理しやすいのです!

逆に言うと、TypeScriptで拡張されたのは、主に型に関する部分で、それ以外のほとんどはJavaScriptそのまんまってことです!:baby:

超ざっくり言うと、TypeScriptとは型の定義ができるJavaScriptなのです:bangbang:
(厳密にはJavaScriptとは別言語です)

TypeScriptを使うべき理由

TypeScriptを使うべき理由を4つに分けて説明します!!

1,大規模開発に最適

通常JavaScriptは、実行してみないと型にエラーがあるかないかが分かりません。

ですがTypeScriptでは、型が追加されていることにより、静的チェックが可能になっているので、実行する前に型にエラーがあるか検出できます!

この静的チェックバグ早期発見によって修正コストも抑えることができ、大規模開発において最適なのです!:family_mmbb:

2,JavaScriptの知識があれば使える

TypeScriptはJavaScriptの仕様はそのままに、新しい機能や利点を追加したものなので、JavaScriptの知識があれば使い始めることができます。

これにより学習コストを格段に抑えられます:bangbang:
(裏を返せば、JavaScriptが分からなければ全く分かりません)

3,古いJS環境での開発でも、最新の構文が使える

プロジェクトによっては、古いJavaScript(ES5など)しかサポートされていないブラウザでも動作するように実装す場合もありますが、TypeScriptはそれにも対応できます:bangbang:

4,利用者人口が多い

利用者人口が多い利点として、次のものが挙げられます。

情報が豊富に出回っている

・エコシステム(他のIDEやフレームワークが、TypeScriptをサポートする機能)が充実している

・採用や就職の面でも有利(企業側にとってプログラマが探しやすく、求職者にとってはプロジェクトを探しやすい)

まとめ

大規模開発に不向きだったJavaScriptに、大規模開発向きの機能(型の追加など)を付けてパワーアップさせたのがTypeScriptということです!

どんなに小規模な開発でも、複数人が関わるプロジェクトがほとんどかと思いますので、JavaScriptを使って仕事をしたいと考えている人は、TypeScriptを導入したほうがよいかと思います!

0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?