マイクロソフト、次期バージョンでVisual Studio JavaScriptプロジェクトを刷新

Table of Contents

マイクロソフト、次期バージョンでVisual Studio JavaScriptプロジェクトを刷新

Microsoft は、近々リリースされる Visual Studio 2022 の JavaScript/TypeScript プロジェクトを改良し、最新の開発環境に合わせて更新しました。

最新の StackOverflow 調査によると、Microsoft は最も人気のある 2 つの統合開発環境 (IDE) を提供しています。それは Visual Studio Code と、2 位 (ただし、かなり差をつけられている) Visual Studio です。

この調査では、最も人気のある Web フレームワークは React.js であり、最も人気のあるプログラミング言語は JavaScript であることも明らかになりました。これが、Microsoft が現在 Visual Studio の React および JavaScript プロジェクトのサポートを改善しようとしている理由かもしれません。

現在プレビュー中のVisual Studio 2022には、この領域に6つの新しいテンプレートが追加されました。これらは、React.js、Angular、Vue.js用のスタンドアロンテンプレートのJavaScriptおよびTypeScript版です。これらに基づいて新しいプロジェクトを作成する際に、ASP.NET Web APIバックエンドを呼び出すスターターコードを追加して、2つのプロジェクトからなるソリューションを作成するオプションがあります。

表面的には、これは「ASP.NET Core with React.js」や「基本的な Vue.js アプリケーション」など、Visual Studio 2019 (VS 2022 にも存在) に存在するテンプレートに似ていますが、重要な違いがあります。

プログラム マネージャーの Gabrielle Crevecoeur 氏は、「Visual Studio に含まれている現在の Angular、React、および Vue テンプレートは最新ではないことが多い」こと、また JavaScript テストが適切に統合されていないことを説明しました。

古いバージョンに関する点を強調するかのように、Visual Studio 2019 で Basic Vue.js プロジェクトを開始すると、非推奨のバージョンやサポートされていないバージョンに関する大量の警告が表示されます。

Visual Studio 2019でVue.jsアプリケーションを生成すると、多数の警告が表示されます

Visual Studio 2019でVue.jsアプリケーションを生成すると、多数の警告が表示されます

.esproj 拡張子(ECMAScript Project の略)を持つ新しいテンプレートは、動作が異なります。Visual Studio にバンドルされている JavaScript/TypeScript フレームワークに依存せず、システムパス上にある各フレームワークのバージョンを使用します。例えば Vue がインストールされていない場合、npm を使用して Vue をグローバルにインストールするまで、スタンドアロンの Vue プロジェクトを作成することはできません。

従来のASP.NET/Reactテンプレートでは、ASP.NET CoreとReactの両方の要素を含む単一のプロジェクトが生成されていましたが、新しいアプローチではこれらのプロジェクトが個別に保持されます。また、JavaScript/TypeScriptプロジェクトではVS Codeのlaunch.jsonファイルが自動的に作成されるため、開発者は追加の手順を踏むことなく、VS Codeでアプリケーションを開いて実行し、デバッグすることができます。

Visual Studio 2022 プレビューの React および ASP.NET アプリケーション

Visual Studio 2022 プレビューの React および ASP.NET アプリケーション

Microsoftの努力にもかかわらず、JavaScriptおよびTypeScriptプロジェクトにおいてはVS Codeが同種のものよりも優位であり続ける可能性が高く、VS Code構成ファイルの同梱はそれをほぼ認めていると言えるでしょう。Visual StudioはバックエンドのASP.NETプロジェクトに最適ですが、VS CodeはJavaScriptとTypeScriptにおいて依然として優位性を持っています。VS Code自体は主にTypeScriptでコーディングされており、クロスプラットフォームサポート、Web指向の開発者の巨大なコミュニティ、そしてより機敏な開発プロセスといった利点があります。Visual StudioはWindowsとMacの両方である程度クロスプラットフォーム対応していますが、Mac版はWindows版と同等ではありません。

  • マイクロソフトは、JavaScriptのジャストインタイムコンパイルを無効にするとブラウザのセキュリティが向上するかどうか疑問視している
  • Stack Overflow調査:Microsoft IDEが優勢、AWSの後ろでGCPとAzureが激戦
  • Google PlayがAndroidアプリに警告:不正なJavaScript、Python、Luaの使用は禁止
  • 32,000人の開発者を対象とした大規模調査で、JavaScript、GitHub、AWSがトップに

そうは言っても、これらの JavaScript フレームワークの開発ペースが速く、Visual Studio が対応するのが難しいことを考えると、Visual Studio でこれらの JavaScript フレームワークのシステム バージョンを使用する取り組みは理にかなっています。

[JavaScriptアプリケーションの現在の開発アプローチは] 複雑さの巨大な腫瘍である

Ruby on Rails の発明者である David Heinemeier Hansson 氏は先週、ソースコードが webpack などのツールによってトランスパイルされ最適化される (Visual Studio によって呼び出される Create React スクリプトはこのように動作する) 現在の JavaScript アプリケーションの開発アプローチは「複雑さの巨大な腫瘍」であると述べた。

彼はこう述べた。「ES6は現在、主要なブラウザすべてでサポートされています。Chrome、Edge、Safari、FirefoxはES6を完全にサポートしています。最後に大きな抵抗をしていたのはIE11でしたが、Microsoftは今年、ありがたいことにそのサポート終了を発表しました。つまり、ES6をブラウザで実行できるものに変換するためのトランスパイル作業は不要です。変更を加えなくても問題なく動作します。」

彼は、Rails チームがそれをすべて削除することに取り組んでいると述べたが、React は JSX ファイルのトランスパイルに依存していると付け加えた。

Hansson 氏のコメントは、Web 開発がどのように進化し続けているのかを示しており、Visual Studio チームが JavaScript および TypeScript プロジェクトの作成を IDE から可能な限り切り離すという賢明な考えを示しています。®

Discover More