Microsoft、Igalia、Bloombergは、JSに定義の構文を含めることを提案しています 

マイクロソフト、イガリア、ブルームバーグ 彼らは数日前にそれを発表しました 構文を含めるためのイニシアチブを取りました 仕様の明示的な型定義の場合 TypeScript言語で使用される構文に似たJavaScript。

現在、ECMAScript標準に含めるために提案されたプロトタイプの変更は、予備的な議論のために提出されています(ステージ0)。

本日、JavaScriptにオプションの消去可能な型構文を導入するための新しいステージ0提案に関するサポートとコラボレーションを発表できることを嬉しく思います。 この新しい構文は周囲のコードの実行方法を変更しないため、効果的にコメントのように機能します。 これにより、TypeScriptをあらゆる規模の開発でより簡単かつ迅速に使用できるようになる可能性があると考えています。 なぜこれを追求しているのか、そしてこの提案がどのように高いレベルで機能するのかについてお話したいと思います。

tで明示的な型情報があると、開発プロセスでの多くのエラーを防ぐことができます。 これにより、追加の最適化手法を使用し、デバッグを簡素化し、サードパーティの開発者がコードを読みやすく、簡単に変更および保守できるようになります。

それに加えて オプション関数として型サポートを実装することが提案されています。 型チェックをサポートしないJavaScriptエンジンとランタイムは、型情報を含むアノテーションを無視し、以前と同じようにコードを処理して、型データをコメントとして認識します。 ただし、タイプチェックツールは、利用可能な情報に基づいて、タイプの誤った使用に関連するエラーを検出できます。

A
私たちのチームがJavaScriptの世界で見た最近の傾向は、反復時間の短縮とビルドステップの削減に対する要求です。 言い換えれば、「より速く、よりシンプルにする」ということです。

ある意味で、これはすでに起こっています。 常緑のブラウザの成功のおかげで、開発者は多くの場合、古いランタイムで実行するために新しいバージョンのJavaScriptをコンパイルすることを回避できます。 ある程度、同じことがバンドルにも当てはまります。ほとんどのブラウザーにはモジュールの使用に対するサポートが組み込まれているため、バンドルは必要以上に最適化のステップと見なすことができます。 これはますます当てはまりますが、TypeScriptはどのように持ちこたえますか?

同時に、 指定されたタイプ情報とは異なり コメントとして指定されたJSDocアノテーションを介して、 直接仕様 変数定義構造に直接含まれる型の コードがより視覚的でわかりやすく、編集しやすくなります.

たとえば、TypeScript対応のIDEは、追加の変換を行わなくても、記述されたJavaScriptコードのエラーをすぐに強調表示できます。 さらに、組み込みの型サポートにより、ある言語から別の言語にトランスパイルすることなく、TypeScriptやFlowなどのスクリプト化されたJavaScript方言で記述されたプログラムを実行できるようになります。

タイプのうち、変数、関数パラメーター、オブジェクト要素、クラスフィールド、型付き配列( "number []")を定義するときに使用できる "string"、 "number"、および"boolean"を追加することが提案されています。 混合型(「文字列|数値」)とジェネリックスのサポートを提供することも提案されています。

これらすべてを踏まえ、1年2022月のTC39の本会議で、この提案をステージXNUMXに提示する予定です。 私たちは、この提案の共同チャンピオンであるブルームバーグのロブ・パーマーとイガリアのロムロ・シントラの支援と指導を受けてこれを行います。

ステージ1に到達するということは、標準化委員会がECMAScriptと互換性のある型の構文を検討する価値があると信じていることを意味します。 これは確かなことではありません。委員会には多くの貴重な視点があり、ある程度の懐疑論が予想されます。 このような提案は、多くのコメントと適切な精査を受けます。 途中で多くの設計変更が必要になる可能性があり、結果が得られるまでに数年かかる場合があります。

次の会議で XNUMX月の TC39委員会の第XNUMX段階に移行する予定です ECMA専門家コミュニティの参加による提案の検討。

最後に あなたがそれについてもっと知りたいのなら、 あなたはで詳細を確認することができます 次のリンク。


コメントを残す

あなたのメールアドレスが公開されることはありません。 必須フィールドには付いています *

*

*

  1. データの責任者:MiguelÁngelGatón
  2. データの目的:SPAMの制御、コメント管理。
  3. 正当化:あなたの同意
  4. データの伝達:法的義務がある場合を除き、データが第三者に伝達されることはありません。
  5. データストレージ:Occentus Networks(EU)がホストするデータベース
  6. 権利:いつでも情報を制限、回復、削除できます。