2022年1月12日水曜日

TypeScript 4.5はJavaScriptに置き換わる?


アンドエンジニア編集部

「TypeScript 4.5」公開!

Microsoft社は2021年11月17日(米国時間)に、オープンソース・プログラミング言語「TypeScript」の最新版、「TypeScript4.5」を公開しました。 
TypeScript4.5では「Awaited」型の導入を初めとして、数多くの新しい機能追加、改善などがあり、プログラミングの生産性向上、パフォーマンス向上などのメリットがあります。

TypeScriptは「JavaScript」をベースとするオープンソース・プログラミング言語で、JavaScriptとは互換性を持ち、大規模開発にも適しています。

TypeScriptはJavaScriptのスーパーセット(上位互換)の位置づけにありますが、知名度ではまだJavaScriptに後れを取っています。 
では、両者は何が違うのか、TypeScriptはどんなメリットを持っているのか、TypeScriptはJavaScriptに置き換わるのかなど、「TypeScriptの超入門編」として解説をしていきます。


そもそも「TypeScript」とは

「TypeScript」は大規模開発向けに開発された「JavaScript」のスーパーセットです。

JavaScriptは1995年に誕生しましたが、もともと大規模開発には向いておらず、Webアプリケーション開発が活発になるにつれて、その弱点が顕在化をし始めました。 
何度もその対応を迫られましたが、ベンダー同士のコンセンサスには至らず、ここで「JavaScript」の進化が止まってしまったのです。

一方で、JavaScriptのコミュニティでは、その解決策が模索され続け、 MicroSoft社から2012年に「TypeScript」が発表されました。

TypeScriptはJavaScriptのスーパーセットとして、「モジュール性」や「型」などの特徴を備えて登場し、特に大規模開発で活用されるようになりました。GoogleではTypeScriptを6番目の社内標準言語として採用するなど、大規模開発で活用されています。

TypeScriptとは?JavaScriptとの違いも解説!

「TypeScript」の特徴

TypeScriptのTypeとは「型」のことです。言ってみれば TypeScriptは「型」が付いた「JavaScript」です。

プログラミングでは型があることのメリットが大きいため、AltJS(代替JavaScript言語)の代表格としてTypeScriptの人気が高まっています。


TypeScriptはJavaScriptと同様にオープンソースで、TypeScriptで書かれたコードはJavaScriptにコンパイルされて動作します。 
JavaScriptが実行できるOSやブラウザであれば、TypeScriptは問題なく利用可能です。続いて、TypeScriptの特徴を列挙してみましょう。

▪JavaScriptのスーパーセット 
TypeScriptはJavaScriptに型(Type)が追加されたスーパーセット(上位互換)であり、JavaScriptを書ける人であれば習得は早いでしょう。

▪実行時のエラーが起きにくい 
TypeScriptはタイプセーフです。 型があることでコンパイル時にエラーが分かり、実行時のエラーを回避できます。

▪型推論により型を自動決定 
TypeScriptには型推論があるため、すべてに型指定をする必要がなく、 プログラマのコーディング作業を軽減できます。

▪JavaScriptの悩みから解放 
JavaScriptでは型がないことから起きる、「実行して分かるエラー」から解放されます。

▪オープンソース言語 
TypeScriptはMicrosoftが開発したオープンソース言語です。

「TypeScript」と「JavaScript」の違い

TypeScriptはJavaScriptの進化系のプログラミング言語です。その進化した部分が両者の違いです。では、TypeScriptは何が進化したのかを見ていきましょう。

▪TypeScriptは静的型付け 
JavaScriptは実行時にデータ型が自動で決められます。これを動的型付けと言い、コーディングが手軽に行える反面、実行をしてみないとエラーが見つからないという弱点があります。


一方、 TypeScriptは静的型付けを採用しており、変数のデータ型をあらかじめ決めておけるため、コンパイル時にエラーを判別でき、コードが読みやすいことから大規模開発に向いています。C#ではこの静的型付けが採用されています。

▪TypeScriptはクラスの作成が可能 
クラスとは設計図のようなもので、ソースコードを効率的、簡潔に記述するための仕組みです。TypeScriptではクラスを簡単に定義ができます。

▪TypeScriptはJavaScriptの構文が使える 
TypeScriptはJavaScriptの上位互換であるため、JavaScriptの構文が使え、JavaScriptのライブラリーやフレームワークも利用可能です。

JavaScriptとは?人気のJavaScriptを5分で学ぶ

「TypeScript」のメリットとデメリット

TypeScriptの特徴を挙げましたが、この特徴によって導き出されるメリット・デメリット、それぞれを確認しておきましょう。

「TypeScript」のメリット

最初にTypeScriptのメリットを見ていきましょう。

▪コードが短く読みやすい 
TypeScriptではクラスが作成できるため、JavaScriptと比べてコードの記述を大幅に簡略化できます。この結果、コードは短く読みやすくなり、コーディングの負荷や無駄を軽減できます。

▪「JavaScript」との互換性が高い 
TypeScriptはJavaScriptとの互換性が高いため、JavaScriptのライブラリーやフレームワークを活用できる他、JavaScriptエンジニアを短期間でTypeScriptエンジニアとして戦力化できるのも強みです。

▪エラーが起きにくい 
TypeScriptは静的型付け言語のため、あらかじめ変数の型を宣言できることから、コンパイル時点でエラーを排除できます。そのためJavaScriptのような実行時エラーが起きにくいのです。

▪Visual Studio が強力にサポート 
「Visual Studio」や「Visual Studio Code」などのエディタは、TypeScriptの入力支援機能をサポートしており、開発効率が格段に向上します。


「TypeScript」のデメリット

TypeScriptはJavaScriptの進化系でもあり、JavaScriptと比較してデメリットは少ないですが、強いてあげるなら以下の2つが数少ないデメリットと言えます。

▪「JavaScript」エンジニアも学習が必要 
JavaScriptが扱えるエンジニアでも、TypeScriptではクラスの作り方、データ型の設定方法など、JavaScriptにはない機能を新たに覚える必要があります。その学習ハードルは決して高くはありませんが、 TypeScriptの学習が必要な点はデメリットと言えるでしょう。

▪新しい言語ゆえに日本語の情報が限られる 
TypeScriptは一般的に使われるようになってから、まだ数年の新しい言語であるため、日本語での情報が少ないという弱点がありますが、この問題は時間とともに解消していくでしょう。


「JavaScript」ではなく「TypeScript」をすすめる理由

Webアプリケーションのフロントエンド開発では、 HTMLとCSSに加えて、JavaScriptを習得しておけば、フロントエンジニアとしては不足はないはずです。中には、折角JavaScriptを学んだのに、さらにTypeScriptを覚えるのは面倒だと考えるエンジニアがいるかもしれません。それでも皆さんにTypeScriptをおすすめするのは、 TypeScriptが大規模開発に適した言語であること、需要が急増し、将来性が高いためです。

「TypeScript」の求人状況

TypeScriptとJavaScriptを求人数で比較してみましょう。

2022年1月6日現在の情報です。

     言語               求人数     

「TypeScript」  373件   

「JavaScript」    1,715件    

上記の通りまだまだJavascriptの求人数には劣るものの、Javascriptは最低限のスキルとして求められている中、Typescriptでの開発を指定したフロントエンドエンジニア求人は徐々に増えています。




「TypeScript」の将来性

TypeScriptはMicrosoftが開発した言語ですが、次第に評価が高まり、Microsoft以外にもGoogleやBMW、VMWare社のWebページはTypeScriptで構築されるなど、フロントエンドの標準言語になりつつあります。


実際に、TypeScriptを利用したエンジニアの92%が満足しているという調査結果もあり、エンジニアの間でも既に高い評価を得ています。今回の Microsoftによる「TypeScript4.5」のリリースによって、その人気や需要はさらに高まるでしょう。


これを機にJavaScriptエンジニアの皆さん、フロントエンドエンジニアを目指す皆さんはぜひ「TypeScript」を習得してみてください。


TypeScriptのおすすめ本をレベル別に紹介!学習方法も解説 TypeScript入門編として利用する際に覚えておくポイント 

0 コメント:

コメントを投稿