（2020年12月9日更新）VB.NETの.NET CoreにおけるWinForms、WPFのサポートはどうなるのか

# TL;DR

- .NET Core 3.0の段階では、VB.NETのWinForms / WPFのプロジェクトテンプレートは追加されなかった。

- **（2019年12月15日）** MicrosoftのデベロッパーコミュニティでのMicrosoft担当者の発言まとめ

    - VB.NETをWinForms / WPFに導入するための作業が行われている。
    - Microsoftには、アプリケーションイベント、アプリケーションモデル、シングルインスタンスアプリケーションなどのVB機能を完璧にしてから、テンプレートを追加したい、という意向がある。
    - VB.NETでASP.NET Web APIはサポートされている（[ASP.NETとAngularの例](https://devblogs.microsoft.com/vbteam/combining-angular-visual-basic-and-net-core-for-developing-modern-web-apps/)）。ただし、今のところテンプレートはない。
    - VB.NETでBlazorはサポートされない見込みが高い。

- **（2020年3月3日）** [Microsoftのデベロッパーコミュニティ](https://developercommunity.visualstudio.com/idea/750543/add-visual-basic-support-to-net-core-3-wpfwindows.html)にてMicrosoft担当者より、**[ロードマップにこの機能を追加した](https://devblogs.microsoft.com/vbteam/visual-basic-support-planned-for-net-5-0/)**ことが発言されました！つまり、.NET CoreのWPF/WinFormsのVB.NETサポートがロードマップに追加された、ということかと思います。

    - [VB.NETのブログ](https://devblogs.microsoft.com/vbteam/visual-basic-support-planned-for-net-5-0/)のコメント欄でも興味深い議論が行われています。

- **（2020年7月27日）** GitHubのVBLang上で[将来に関する議論](https://github.com/dotnet/vblang/issues/545)が行われています。
    - VB.NET開発にかかわっていたAnthony D. Green氏が[ブログ投稿](https://anthonydgreen.net/2020/07/27/resume-next/)で反応しています。

- **（2020年10月20日）** GitHubのVBLang上で[新機能に関する議論](https://github.com/dotnet/vblang/issues/494)が行われています。
    - VBのLDM(Language Design Meeting)に関する言及が行われています。

- **（2020年12月9日）** **.NET 5でのVisual Basicサポート**について発表されています。
    - [Visual Basic WinForms Apps in .NET 5 and Visual Studio 16.8 | .NET Blog](https://devblogs.microsoft.com/dotnet/visual-basic-winforms-apps-in-net-5-and-visual-studio-16-8/)

        > Visual Basic は、アプリケーション フレームワークと共に、.NET 5 および Visual Studio 16.8 でサポートされています。Visual Studio 16.8 には Windows フォーム デザイナーが含まれているので、既存のアプリケーションを移行したり、新しいアプリケーションを作成したりできる状態になります。 

    - [Announcing .NET 5.0 | .NET Blog](https://devblogs.microsoft.com/dotnet/announcing-net-5-0/)

        >  Visual Basicは5.0 SDKにも含まれています。言語の変更は含まれていませんが、.NET Core上のVisual Basic Application Frameworkをサポートするための改良が加えられています。

    - [What's new in .NET 5 | Microsoft Docs](https://docs.microsoft.com/ja-jp/dotnet/core/dotnet-five#visual-basic-updates)

        WPF、WinFormsがサポートされている旨の記述が記載されています。

    - [.NET 5 + VB でも WinForms がしたい！ - Qiita](https://qiita.com/yaju/items/b3f99b828a3d10125bb7)
    - [.NET 5 + VB でも Wpf がしたい！ - Qiita](https://qiita.com/yaju/items/1cb2c28627ba56cce88a)



# 投票

Microsoftのデベロッパーコミュニティで要望が挙げられているので、望むなら、どのようにサポートしてほしいかも含め投票したほうがよいかもしれません。

Microsoftから継続的にコメント（2020年1月7日時点で、最新は2020年1月4日）が行われており、どれくらい要望があるのか（優先順位を上げるため？）という点も大事なようです。

[Add VB.NET Support to .Net Core 3 WPF/Windows Forms Projects](https://developercommunity.visualstudio.com/idea/750543/add-visual-basic-support-to-net-core-3-wpfwindows.html)

# 個人的には

.NET を使うならば、C#でもVB.NETでもそれほど差はありません。
なので、新規プロジェクトではできるだけ.NET Coreを使用したほうが良いというように、新規プロジェクトでは、C#を使用する、というスタンスでもよいと考えます。

既存のプロジェクトも、Microsoftのサポートが続くのであれば、.NET Framework（VB.NET）でよいと思います。

しかし、

- 顧客の費用、開発人員等でVB.NETが望ましいということがあるかもしれない
- .NET Frameworkで永遠にサポートが続くのか（見捨てられないのか）

という点が気になります。

VB.NET特有のアプリケーションモデルはなくしてもよいので、.NET Core 3.X以降でも、VB.NETでWinForms,WPFをサポートしてほしいと、個人的には希望します。

# 最新情報はどこで確認できるのか

##  MicrosoftのVisual Basicに関するブログ

Visual Basic Blog
https://devblogs.microsoft.com/vbteam/

### 最新情報　2019年10月8日

この中の最新情報として、以下の記事で、2019年10月8日に状況が追記されています。
Visual Basic in .NET Core 3.0
https://devblogs.microsoft.com/vbteam/visual-basic-in-net-core-3-0/


|原文|日本語訳|
|:--|:--|
|**Update: Oct 8, 2019**<br><br>.NET Core 3.0 contains portions of the Visual Basic.NET Runtime (microsoft.visualbasic.dll) that do not depend on WinForms.<br><br>Visual Basic.NET support for WinForms, WPF, and other application types in .NET Core 3.0 is similar to C#. Special features of the Visual Basic.NET Runtime (microsoft.visualbasic.dll) are not in .NET Core 3.0. As an example, application startup using application models are not supported. Visual Basic.NET desktop templates are not in .NET Core 3.0 because the Visual Basic.NET experience is lacking these features.<br><br>Due to the embedded nature of WinForms in Visual Basic.NET parts of the My subsystem and application models that are not WinForms specific are also not in .NET Core 3.0.|**更新：2019年10月8日**<br><br>.NET Core 3.0には、WinFormsに依存しないVisual Basic.NETランタイム（microsoft.visualbasic.dll）の部分が含まれています。<br><br>.NET Core 3.0のWinForms、WPF、およびその他のアプリケーションタイプのVisual Basic.NETサポートは、C＃に似ています。 Visual Basic.NETランタイム（microsoft.visualbasic.dll）の特別な機能は、.NET Core 3.0にはありません。例として、アプリケーションモデルを使用したアプリケーションの起動はサポートされていません。 Visual Basic.NETエクスペリエンスにはこれらの機能がないため、Visual Basic.NETデスクトップテンプレートは.NET Core 3.0にはありません。<br><br>MyサブシステムのVisual Basic.NET部分のWinFormsの埋め込みの性質のため、WinForms固有ではないアプリケーションモデルも.NET Core 3.0にはありません。|

ポイントは、

- Microsoft.VisualBasicランタイム(microsoft.visualbasic.dll)は、WinFormsに関する部分をのぞき、.NET Core 3.0に含まれている。

    ※筆者注：確かに、`Mid`関数等は使えるところは確認しました。（`Val`関数はなくしてほしかったですが。。）

- 現時点でVB.NET特有のアプリケーションモデルは含まれない

    ※筆者注：以下の考え方が含まれない、ということかと思います。

    ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/204150/25c7920d-afe4-7bd8-07e1-95932b432d84.png)

- よって、今のところプロジェクトテンプレートは含まれない

    ※筆者注：WinFormsもWPFもないようです。

## Microsoftのデベロッパーコミュニティ

### 最新情報　2019年12月15日　23時27分

以下の投稿で、.Net Core 3 WPF/Windows Forms について、VB.NETサポートを追加してほしい、という投稿が行われています。

#### [2019年9月27日 07:03 AM  Add VB.NET Support to .Net Core 3 WPF/Windows Forms Projects](https://developercommunity.visualstudio.com/idea/750543/add-visual-basic-support-to-net-core-3-wpfwindows.html)

> VSを新しいバージョン16.3.1に更新したばかりで、Visual Basic .NETでWindows Forms .Net Coreプロジェクトを作成したかったのです。
> しかし、私が知ったように、Visual Basic .Net Core Win Forms / WPFプロジェクトのサポートはありません。
> 残念ながら、Microsoftはかなり長い間、VB .NETコミュニティを失望させてきたという印象を持っています
。
> 私はこれがMicrosoftの間違ったやり方だと思います、そしてここに私の理由：
> 
> - 数百万のVB.NET開発者がいます
> - Visual Basicは、使用されているプログラミングプログラミング言語のトップ10の1つと見なされています。
> - VB.NETで書かれたWPF / Win Formsアプリケーションがたくさんあります（これはASP .NETにも当てはまると思います）
> - 既存のプロジェクトは移植できません
> 
> このため、VB.NETのWPF / Windows Forms .Net Coreサポートを追加し（可能であればASP.NET Coreも）、このプログラミング言語をさらに注意してください。

##### コメントから回答を抜粋（主に、★Microsoft[MSFT]）

Microsoftのキャスリーン・ダラード（Kathleen Dollard）さんは、MicrosoftのVisual Basicに関するブログに、[Visual Basic in .NET Core 3.0](https://devblogs.microsoft.com/vbteam/visual-basic-in-net-core-3-0/)を投稿された方です。

###### [2019年9月27日 07:03 AM ★Jane Wu [MSFT]](https://developercommunity.visualstudio.com/comments/751176/view.html)

> ご意見をお寄せいただきありがとうございます。さらに先に進むことができるように、いくつかの予備チェックを行います。製品チームが問題のトリアージを行った後、アップデートを提供します。

###### [2019年10月7日 06:43 PM ★Kathleen Dollard[MSFT]](https://developercommunity.visualstudio.com/comments/763791/view.html)

> あなたの提案は優先順位付けのためにキューに入れられました。機能の提案は、より広範な開発者コミュニティへの価値と製品ロードマップに基づいて優先順位が付けられます。すぐにこれを追跡することはできないかもしれませんが、コミュニティからの意見を求めて最大90日間監視し続けます

###### [2019年10月20日12:42 AM ★Kathleen Dollard[MSFT]](https://developercommunity.visualstudio.com/comments/785019/view.html)

> まず、皆さんに謝罪します。旅行や家族のイベントのために私は遅れをとっていたため、今日までこのスレッドに到達しませんでした。完全に私の悪い。助けようとして、私が物事を置きたい方法ではないメッセージが投稿されました。あなたのコメントのいくつかの意味を損なうので、私はそれを削除しないことに決めました。
> 
> フィードバックと投票は重要です。.NET Coreに移行したいということとその理由を理解してください。既存のアプリを移動したり、新しいアプリを作成したりしますか。WinFormsなどですか？VBを機能させる特定の機能、または一般的なアプローチはありますか？
> 
> 私たちはロードマップに取り組んでいます。私たちの計画が堅実になるまで、私はそれについて話しません。

###### [2019年10月20日 08:59 PM ★Kathleen Dollard[MSFT]](https://developercommunity.visualstudio.com/comments/785194/view.html)

> デスクトップテンプレートについて：デスクトップテンプレートがないのは、私たちのVBデスクトップストーリーに満足していないという事実のマーカーです。それは恣意的ではありません。アプリケーションイベント、アプリケーションモデル、シングルインスタンスアプリケーションなどのVB機能がなく、中途半端なテンプレートを追加したくないということです。
> 
> .NET Core Console / libraries用のテンプレートがあり、C＃アプリのように見えるWinFormsとWPFでVBアプリを作成できます。.NET FrameworkのVBはサポートされており、多くの新しいVisual Studio機能がVBで機能します。

###### [2019年10月21日 08:41 PM ★Kathleen Dollard[MSFT]](https://developercommunity.visualstudio.com/comments/787132/view.html)

> .NET Frameworkにコミットしています。これはWindowsコンポーネントです。
> 
> あなたの質問はツーリングに関するものです。はい、非常に長い間、.NET FrameworkのVisual Studioツールに取り組んでいます。.NET Frameworkには膨大な量のコードと人間の専門知識があることを理解しています。また、Microsoftの他の多くの重要なソフトウェアと同様に、Visual Studioが.NET Frameworkアプリケーションであることを知るという当社のコミットメントに対する自信を高めることができます。
> 
> ここと他のコメントにご意見をお寄せいただきありがとうございます。すぐに戦略を明確にすることを楽しみにしています。

###### [2019年10月22日 05:37 PM ★Kathleen Dollard[MSFT]](https://developercommunity.visualstudio.com/comments/788810/view.html)

> @Brandon B. Stewart
> ここで忍耐をお願いします。
> 
> 私たちのメッセージは混乱を招き混沌としているため、混乱を増すのではなく、戦略について話す前にメッセージを固めようとしています。私はフラストレーションを理解しています。
> 
> Visual Basicの価値提案は「機能するだけ」であるため、これは特に混乱を招きます。.NET Coreでは、WinFormsとWPFは機能しますが、「機能するだけ」ではありません。WinFormsデザイナーはまだプレビュー中です（別途ダウンロードされます）。.NET Core 3.0では、スタートアップとVisual Basicランタイム（多くのVisual Basicプログラマーが考えていないこともあります）は完全ではありません。また、シングルインスタンスアプリケーションはまだ導入されていないなどです。このエクスペリエンスはまだ十分ではありません。
> 
> 私たちはオープンソースです。Visual Basic.NETを.NET Coreに導入するために16.0で行われたすべての作業について喜んでお話しします。これらは、パブリックリポジトリのPRです。Visual Basic.NETは無視しません。私たちはそれに取り組んでいます。できるだけ簡単に言えば、現在.NET Coreで：Visual BasicでWinForms / WPFを構築することは、C＃でWinForms / WPFを構築することに似ています。それはVBには十分ではありません。

###### [2019年11月6日 02:59 PM ★Kathleen Dollard[MSFT]](https://developercommunity.visualstudio.com/comments/809554/view.html)

> @cuizhengrong
> 
> 「Microsoftはasp.netコアとモバイル開発のサポートをVB.NETに追加する必要があります。Microsoftは、VB.NETプログラマーがWindowsフォームプログラムのみに従事することは重大な誤りであると想定しています。」
> 
> ASP.NET Web APIでVisual Basicを使用できます。現在、そのためのテンプレートはありませんが、これは1つの例です：
> https://devblogs.microsoft.com/vbteam/combining-angular-visual-basic-and-net-core-for-developing-modern-web-apps/。
> この記事はASP.NETとAngularの両方の基本を扱っているため、比較的長いことに注意してください。
> 
> 現在、Web APIのテンプレートはありません。上記の記事は、出発点としてコピーできるものとして意図されています。はい、テンプレートの面で改善できました。
> 
> 悲しいことに、Razorのサポートの欠如は変わらないでしょう。Visual BasicでのMVCの作業が非常に少ないときに単一言語ツールとして設計され、JavaScriptベースのフロントエンドに移行しているように見えました。

###### [2019年12月5日 10:26 PM ★Kathleen Dollard[MSFT]](https://developercommunity.visualstudio.com/comments/846280/view.html)

> 私はこれらのコメントをすべて読んでおり、フィードバック、特にVisual Basicを好む理由をお寄せいただきありがとうございます。それはわたしを助ける ：）
> 
> WinFormsとWPFの多くは、.NET Core 3のVisual Basicで動作します。デザイナーは（C＃のように）別のツールであり、イベントからコードビハインドに移動したときに正しく動作しません。WinForms / WPFアプリを作成したり、プロジェクトを移動したりする際のフィードバックをお待ちしていますが、追跡用の新しいアイテムを作成してください。少なくともC＃の課題があります。
> 
> Visual Basic開発者にとっては十分なエクスペリエンスではないと考えているため、これについてはあまり話していません。確かに、やるべきことがあります（問題の背後にあるイベント/コードと、発見した他の問題）が、また、.NET Coreでは、サービスへのアクセス方法を再考することをお勧めします。VisualBasicでgRPCやOneAPIのサンプルを確認して、過去だけでなく未来への一歩となるようにしたいと考えています。私は数週間外出していたので、その仕事は行われていません。そのため、これはまだ「検討中」です。

###### [2019年12月6日 08:21 AM venkatraman kasinathan](https://developercommunity.visualstudio.com/comments/847009/view.html)

> Windows10とVisual Studio 2019のコミュニティエディションと.NET Core 3.0があり、VB WinFormsを正常にコンパイルしてGUIを取得しました。
> WPF私は試みています。それは希望を与えています。私はここで私が頑固なVB.Netの男であることに言及する必要があります。
> 
https://www.codeproject.com/Articles/1034366/New-Method-of-XML-Binding-to-DataGrid-WPF-VB-NET
> 
> C-Padスタイルのプログラミングを作成しました。このスタイルでwinformプロジェクトを正常にコンパイルしました。心配することはありません。WPFも機能します。私は途中です。VB.NetとC＃の両方が信頼されています。子供たちは偏見を示すことはありませんが、あなたの困難を表してください。

###### [2019年12月12日 Dave Bacher](https://developercommunity.visualstudio.com/comments/853364/view.html)

※筆者注：ASP.NET CoreのVB.NETサポートに対するIssueの登録と改善のコードを投げた、ということのようです。

> @Kathleen Dollard [MSFT]
> 200万行を超えるVisual BasicおよびJavaScriptを使用したWebフォームを使用しています。私たちには8人の常勤スタッフがいますが、そのうち4人はVisual Basicプログラマです。
> 
そのため、現状では、プロジェクトを.NET Coreに移行することはありません。ほとんどのサイトでクラシックASPからASP.NETに移行するのに15年以上かかりました（一部はまだクラシックです）。管理者にC＃に移行するよう説得するように頼むことは、乗り越えられません。
> 
しかしながら...
> 
MVCのユースケースがvbhtmlビューエンジンであるため、すべてのASP.NET Coreが欠落しているようです。
> 
> その場合はコミュニティに尋ねましたか？ASP.NET Coreチームがリソースを投入できない理由を理解しています。また、あなたのチームがリソースを投入できない理由も理解しています。Microsoftがそれをしてはならないこと、ASP.NET Coreチームにそれを達成するためのリソースを与えてはならないことに必ずしも同意しません。しかし、そうではないことを理解しています。そうではありません。
> 
> そしてとても現実的に-マイクロソフトの公式な能力でそれをしていない誰かがあなたの作業ビューエンジンを手に入れるために必要です。そして、Web APIのものが働いているので-すべてのルーティング、コントローラーなどのものが働いている必要があります、そしてそれはあなたがMVCのために欠けていた唯一の作品だろう。
> 
> それがあなたにBlazorをもたらすかどうかはわかりません、それはそうかもしれません-あるいは、あなたはBlazorのために何か違うことをしなければならないかもしれません。
> 
> 数日中にここでこれを試してみて、GitHubで機能する場合はそれを投げます。

###### [2019年12月12日 Jeff Bowman](https://developercommunity.visualstudio.com/comments/853456/view.html)

> @Dave Bacher
> Dave、これは素晴らしいですね。VBandCsに接続したいと思うかもしれません。彼は最近、あなたが話していることの始まりになりそうな何かをまとめました。
> 
> https://github.com/dotnet/vblang/issues/397
> https://github.com/VBAndCs/VB.NET-Razor

###### [2019年12月15日 venkatraman kasinathan](https://developercommunity.visualstudio.com/comments/856922/view.html)

> 親愛なる友人、
> 
> 私はVB.Netでnetcore3.0 WPFアプリを正常にコンパイルしました（以前のコメントを参照してください）1つのC-Padスタイルの複数のウィンドウが可能です.C-Padスタイルは何の問題もなく使用できます。 WPFネットフレームワークで回避している余分なファイルを使用するには、アプリケーションの起動時にApplication.xamlとApplication.xaml.vbを追加で使用する必要があります。これらはすべてのWPFアプリに共通です。詳細を提供し、許可される文字で十分です。

###### [2020年1月3日 ★Kathleen Dollard[MSFT]](https://developercommunity.visualstudio.com/comments/872518/view.html)

> @ Hankins, Kevin (DBHDS)
> リンク：https://github.com/dotnet/vblang

###### [2020年1月4日 ★Kathleen Dollard[MSFT]](https://developercommunity.visualstudio.com/comments/875072/view.html)

> vblangでの会話が問題になっています。誰かが間違ったリンクで言及したので、私はそのリンクを含めました。
> 
> これは、.NET CoreでVisual Basicを見たいとコミュニティが共有できる会話の理想的な場所ではないことに同意します。他のVBの人たちが自分の意見を追加できるように、一般の人々に会いたいのですが、LinkedInでの会話もそのためには最適ではないと思いがちです。
> 
ランタイムやその他の.NET Coreに焦点を当てた作業の変更に伴う変更のため、言語作業があまり行われていないことは間違いありません。VBはそのままでは非常に優れた言語です。
> 
あなたが人々を見つけることができる別の場所は[https://gitter.im/VB-NET](https://gitter.im/VB-NET)です
> 
人々はまだ休暇から戻ってきています。コミュニケーションが不十分であるという不満を実際に理解していますが、コミュニケーションの前に明確な計画があることを確認したいと思います。VBを.NET Coreに配置してチェックボックスをオンにしてくだらないようにするつもりはありません。これは、.NET Core 3より前に起こったこととほぼ同じです（それについてはほとんど何も聞きませんでした）。3.0と3.1には問題がありましたが、それは明らかであり、私はそれを認めます。私は3.1で動作するWebAPI（3.0でも動作すると想定しています）とVisual BasicランタイムのWinForms部分としてメインブランチをチェックインしています（OSSは素晴らしい、それについて話すことができます）。まだやるべきことがありますが、現時点では、WinFormsデザイナーも開発中です。また、Visual Studioを使用すると、アナライザーを含むVBエクスペリエンスが各バージョンで向上します。これはステートメントの代替ではありませんが、VBを無視するように特徴付けることは正しくありません。
> 
> 一方で、.NET Coreへ移行する予定のVBを使っている人々（サポートされているワークロードを使用）の声は、特に市民の場合、特に.NET Coreで何を行おうとしているのか（アプリの種類、企業の種類、コンバージョン、影響など）は非常に役立ちます。
> 
> （サポートされているワークロードとは、.NET Core（WebForms、WCF、WF ...ではない）でサポートされており、.NET Framework上のVisual Basic（Razorベースのワークロードではない）でサポートされているものです。 Webの場合、WebAPIはVB.NETでうまく機能します。）

###### [2020年1月4日 Riaan Pretorius](https://developercommunity.visualstudio.com/comments/875129/view.html)

> 私は、私はいくつかのサンプル、何より良い場所そしてMicrosoftの公式サンプルを探してみようと思ったので、私は、WPFとMVVMを試して忙しい私はDARE VBフィルタをクリックし、表示されているかを確認することができます。
> 
> https://docs.microsoft.com/en-us/samples/browse/
> 
> そして、これは過去10年間のVBサポートに対する私の個人的な不満です。それは衰退しており、過ぎ去って言及されるところまで消えています。これが行われた最後の製品は、シルバーライトでした。サポートされていることについて多くの話がありましたが、何も起こりませんでした。最終的には、「より新しい」技術に賛成して消えてしまい、人々に使用できないものを残しました。HTML5はかなりそれを置き換えることができますので、それはそれをドロップすることは意味をなされたが、それはだった道、今vb.netの懸念であること、それはそれを使用する開発者のために行われました。
> 
これは私の個人的な見解です。MSFTは今年のサポートを中止しないかもしれませんが、過去5年間のすべてのコメント、リンク、苦情を読んだことから、サポートが徐々に姿を消していることに気づかずにはいられません。 3年後はどうですか？
> 
> MSFTの誰もが間違いなく、vb.netが今後10年間も存続することを確認できますか？これまでに誰かがこの質問をすると、コミュニケーションは沈黙し、MSFTの誰もその質問に答えられない、または答えられないように見えます。同じ「ステートメント」を何度も繰り返しますが、アクションはありません。
> 
> @Kathleen Dollard [MSFT]何も聞こえない理由は、VB開発者として「ただそれを理解する」だけで、C＃コードをvb.netコードに変換することに慣れているためです（通常、C＃はMSFTが本当に気にする言語のみ）。ドットネットエコシステムの一部であるため、機能すると想定しています。
> 
> 最近、C＃で導入された言語機能はコード変換中に機能しなくなりました：名前付きタプル変数はC＃では機能しますが、VBでは機能しません。実際のサポートはvb.netに存在しないようであり、これはC＃7.0（Visual Studio 2017 ）。私たちは二流市民のように扱われることにとても慣れており、たとえそれを報告したとしても、SILENCE（個人的見解）
> 
> ソリューションを一緒に「ハッキング」する必要があるという事実は、MSFTの専門家ではありません。私は幸運にもNANCYFXをDOTNETコア2と動作するAPIで動作させることができたので、すばらしかったです。パフォーマンスとメモリフットプリントに感銘を受けました。その後、DOTNETコア3が登場し、Nancyがまだドットネットコア3をサポートしていないため、またvb言語にはアップデートで使用されていた機能の一部が欠けているため、これらの「ハッキング」ソリューションは機能しなくなりました。そのため、コード変換は機能しなくなりました。
> 
> C＃が享受しているのと同じ種類の治療を求めるのは多すぎるでしょうか？

###### [2020年1月7日 Arlo Weston](https://developercommunity.visualstudio.com/comments/876254/view.html)

> OK-すぐに言っておきます-Microsoftはvbで大きなチャンスを逃しています。
> 
> VBには、いくつかのユニークな初心者エントリポイントがあります。私のお気に入りはvbaとWinFormsです。vbaを使用すると、Microsoft Office内のすべてのビジネスプロセス（Excel、Word、PowerPoint）を使用できます。そしてそれを自動化します。マクロを記録してから、マクロが生成したコードを確認できます。このコードを変更して、改善することができます。より弾力性のある機能を追加します。そうすると、プログラマーになり始めます。そのコードはvbコードです。このパスは誰に利用可能ですか？Officeを持っている人。Visual Studioや他のプログラミングIDEは必要ありません。しかし、Officeを持っているのは誰ですか？企業、政府、さらには消費者。巨大市場！それで、長年にわたってvbaを開発するために何が行われてきましたか？なし。vbaはまだvb6です。もちろん、VSTOはありますが、Visual Studioが必要で、VSTOにマクロを記録できますか？
> 
> vbaの後の論理的なステップ-WinForms。このフォーラムは、コア3.0のWinFormsのvbの状態をすでに知っているため、これ以上説明する必要はありません。コードビハインドを使用したドラッグアンドドロップは、初心者にとって非常に直感的で簡単に理解できます。マクロプログラミングを行ったことがあれば、自然で簡単にフィットします。それが私が辿った道です。それはすごかった。その他？ダン・アブラモフはどうですか。彼はvbから始めました。なぜ彼は去らなければならなかったのですか？
> 
> vbは「本物の」プログラミング言語ではないと主張する人もいます。何らかの理由で、「C」スタイルの構文を使用しないと、プログラマーではなくなると考える人もいます。歴史は、特定のスタイルよりも使いやすさが重要だと言っていると思います。PearlとPHPの例を見てください。PHPが登場したとき、Pearlプログラマーは「実際のプログラマーだけがPearlを使用している」と言いました。今日、Pearlを使用しているWebサイトとPHPを使用しているWebサイトはいくつありますか？今日、Web上のすべてのWebサイトの79％という高い統計がPHPを使用しています。使いやすさが勝ちます。
> 
> ここで注意点を1つ追加します。使いやすさは勝ちますが、私が「ジョージジェットソン」と呼ぶ使いやすさではありません。ジョージジェットソンは、毎日仕事に行く漫画のキャラクターで、ボタンを1つ押すだけです。それ以外はすべて自動化されています。これは実際には機能しません。プログラミング言語では機能しません。すべてを自動化しようとすると、あまりにも具体的になりすぎて、変更を処理したり、複数のアプリケーションで使用したりすることができません。プログラミング言語は、開発者が解決する必要のある問題に合わせてコントロールを成形および整形できるようにする必要があります。再利用可能で柔軟である必要があります。言語を開発するときは、すべてを自動化する「George Jetson」に近づかないで、代わりにプログラマーを管理してください。
> 
> VBは、他の非C言語と同じ方向に進むことができます。多くの成功を収めてきたものがたくさんあります。たとえば、Ruby on Rails。MicrosoftはRuby on Railsに似たvbを開発できますか？たぶん、VBはC＃に従う必要はありません。VBのSub / Functionは、コマンド/クエリの原則を実装するのに役立つと思います。C＃に対して他にどのような利点がありますか？これらの改善がVBAでも使用できるとしたらどうでしょうか？
> 
> C＃といえば、言語は過剰に開発される可能性がありますか？どの時点で変更が非常に速く行われるかは、開発者がそれらを実装することを学ぶことができないか、開発者が気にかけないほど取るに足らないものになることです。最新のC＃アップグレードに関するコメントを読みました。「決して使用しない可能性のある機能を見るのに遅すぎることはありません」などです。VBにリダイレクトされる可能性のあるリソースがC＃で浪費されていますか？

###### [2020年1月7日 Richard Ladendecker II ](https://developercommunity.visualstudio.com/comments/876298/view.html)

> Arloは「C＃といえば、言語が過剰に開発される可能性がありますか？開発者はそれらを実装することを学ぶことができないか、開発者が気にしないほど重要ではない」という点で「重要なポイント」を作成します！
> 
> イノベーションと変化が生産性と効率を向上させるために不可欠であることを認めましたが、「言語」と「方法論」に関しては、求人を見て、企業が開発者またはアーキテクトに求めているテクノロジーの数を確認してください。信じられないほど事態を悪化させるために、だれもが何十もの言語に習熟できるのでしょうか？そして、これらの「新しい」光沢のある技術を使用するすべての人々は、これが新しい「1」であると公言しています。80年代、90年代、2000年代にC ++のことを聞いて、何を推測しましたか。VBは現在も存在し、世界中の「大規模」ソリューションの一部として、教えられ、実装され、洗練され、統合され、販売されています!!!!!!
> 
> 軌道に乗るには; BASICの略語は、60年代半ばに作成され、KemenyとKurtzが思いついた言語と、「その言語が表すもの」、「その時点で」を特定しました。これは60年代ではなく、VB.NETはあなたの祖父の言語ではありません。これは、COBOLとほぼ同じ期間、メインフレーム、スーパーミニ、マイクロ、IoTのすべてに実装されてきた、高度に採用され、進化した、進化した言語です。
> 
> 構造に関する限り; Cプログラマーは、Cを使用していない場合、コードは効率的でなく、論理的で、構文的に整理されておらず、他にも多くの形容詞がありません。しかし、「すべて」の言語から、非効率で、適切に作成されておらず、設計が不適切なコードがどのように見えるかを直接目にしました。あなたはそれに入れたものを手に入れます。繰り返しになりますが、以前のメモから、「これまでにない」人々のグループを取り、C＃とVB、同じ例、同じ要件を提示し、彼らが何を言っているかを確認します。
> 
> 私たちはここで、VBが主要な言語である可能性があるため、ITとビジネスに関連するさまざまな問題を使用、統合、学習、さらに改善、解決するという点で、すべて同じ状況（おそらくMSスタッフを除く）にいます。「Day-1」プログラミングまたは最もよく使用した言語から、コーディングの定番フォーマットになりました。理由が何であれ、MSはこの機会を「逃し」、MSの将来のVBの窮境に関する時代遅れで役に立たない情報を伝える無関係なリンクを持つMSスタッフはイライラする以上であり、誤解であり、無知と偽装を伝えます。
> 
> GE、アルカテル、タイコラボで大規模な組織のテクノロジーイニシアチブに参加しており、管理とマーケティングの両方のビジョンの変化が、多くの業界で使用されている非常に成功し、収益性が高く有用なテクノロジーをどのように消し去ったかを見てきました。私の過去を再訪するようなものです。
> 
> 繰り返しますが、変化と革新は成長、持続可能性、市場シェアの鍵となりますが、非常に多くの開発者、ソリューション、ベンダー、テクノロジーが統一テクノロジーであるVBに基づいている場合、Microsoftによる明確なコミュニケーションの方向性の欠如は、Microsoftの経営陣は、これらの事業体とそれが表す「収益」と「忠誠心」に対する明確な理解、ビジョン、懸念を欠いています...
> 
> LinkedIn経由でのケビンスコットからの情報のリクエストから返事はありませんでしたが、多くのテクノロジーサークルで懸念を表明する他の手段があります。
> 
> CESみなさん.....
> 
> よろしく

※CESみなさん.....の原文は「CES Everyone...」となり、CESで会いましょう、ということだろうか。

###### [2020年2月27日 ★Kathleen Dollard[MSFT]](https://developercommunity.visualstudio.com/comments/931554/view.html)

> 私は辞任していません。私もするつもりはありません。
> 
> 私は広報担当者ではありません。（原典：I am not a PR person.）それはかなり明白に見えるかもしれません;-)
> 
> 人々が求めている論理的なことは声明です。私はそれを理解しており、それができなかったという不満を理解しています。多くの理由で非常に長い時間がかかりました。フィードバックスレッドにコメントすることは、声明ではありませんが、進行状況については既にコメントしています。まだ言っていないことはありますが、おaび申し上げます。
> 
> -言語およびコンパイラとしてのVisual Basicは、長い間.NET Coreにありました（1.0と確信しています）。
> -Visual Basicは単なる言語ではありません。また、VBランタイム（Microsoft.VisualBasic.dll）です。 Coreに移行するために必要な設計変更を行いました。 FrameworkのVB RuntimeのすべてがCoreにあるわけではありませんが、.NET 5のプレビューはまだ出ていないため、API Portability Analyzerにはまだ入っていません。
> -Visual Basicはアプリケーションモデルでもあります。私たちはまだこれを正しく機能させるために取り組んでいます。
> 
> 人々がアプリを.NET Coreに移行したいと思っていることをうれしく思います。フィードバックを提供できるようにプレビューを発表できることを楽しみにしています。


###### [2020年3月3日 ★Kathleen Dollard[MSFT]](https://developercommunity.visualstudio.com/comments/936177/view.html)

> あなたの貴重な提案がコミュニティに幅広い影響を与え、製品のエクスペリエンスを改善すると判断しました。ロードマップにこの機能を追加しましたので、進捗に合わせて最新情報をお届けします。製品の改善にご協力いただきありがとうございます。

###### [2020年3月3日 ★Kathleen Dollard[MSFT]](https://developercommunity.visualstudio.com/comments/936203/view.html)

> ステータスを「ロードマップ上」に更新しました。.NET5にWinForms / WPFが追加される予定です。
> 
> サポートがバイナリのyes / no質問になることはめったにありません。ここのコメントを読むと、人が異なればそれが何を意味しているのかが異なることがわかります。さらに明確にするための発表に取り組んでいます。それはVBブログに表示されます：https://devblogs.microsoft.com/vbteam/