設計者が語るVisual Basicの来た道、進む道 |
||
米Microsoft Technical Lead Visual Basic .NET ポール・ビック(Paul Vick) 聞き手、文責:デジタルアドバンテージ 2005/12/07 |
||
今後のVBについて
―― 最後に、現在Paulさんが取り組まれているVB2005の次のバージョンであるVisual Basic 9(以下、VB9)についてお聞かせください。先日のPDC 2005などでもLINQプロジェクト(言語にクエリの機能を統合するプロジェクト)*についてのお話がありましたが、LINQとVBの関係は、C#と同等なのでしょうか?
* LINQプロジェクトについては「特集PDC05レポート:動的プログラミング言語へと発展するC# 3.0とVB 9.0」で解説している。 |
はい、基本となるテクノロジについてはVBとC#とで共有しています。しかし、文法やアプローチの点で違いがあります。VBはC#に比べてSQLに似た構文を採用しています。 また、私たちはXMLリテラルを言語へ統合しようとしていますが、現時点ではC#についてはそういう話はありません。ただまだ先の話ですので、今後どうなるかは分かりません。私たちはXMLリテラルをよいアイデアだと思っていますが、先ほどいったように、私たちはお互いによいアイデアを盗みあっており、もしかしたらこれもC#にも搭載されることになるかもしれません。 |
―― 以前MicrosoftはObjectSpacesというO/Rマッピングのためのフレームワークをアナウンスされていたのですが、LINQが登場するとそういった仕組みは必要なくなるのですか?
LINQプロジェクトの中にはDLinqというものがありますが、それはObjectSpacesがやろうとしていたことに非常に似ています。DLinqではObjectSpacesすなわちO/Rマッピングでできることを実現できます。 |
―― 言語にクエリの機能を統合するということの意味は、やはりデータベースの扱いを簡単にするということでしょうか? LINQの一番の目的は何でしょう?
LINQには2つの大きなメリットがあると思います。1つは、オブジェクトのクエリという機能がアプリケーションの書き方を変えてしまうほどの非常にパワフルな機能だということです。 そしてもう1つは、単一のクエリで、さまざまな種類のデータを扱えるということです。まずはリレーショナル・データ(DLinq)やXMLデータ(XLinq)、それから先ほど述べたオブジェクトなどのインメモリ・データ(Linq)の3種類をクエリしようということから始めていますが、将来的にはクエリのための1つの文法を学ぶだけで、もっと多くの種類のデータを扱えるようになればよいと考えています。 |
―― いまVBのLINQの方がC#よりもSQLに近いというお話でしたが、それはSQLになじんだプログラマーであれば、VBの方がより使いやすいということでしょうか?
そうです、それが目的です。多くのVBユーザーが現在SQLを使っています。つまり、SQLの知識を持っていればLINQは自然に使えるということです。 |
―― 将来的にはVB10なども開発されると思いますが、よりイージーなプログラミングを目指すといった、将来の展望はすでにあるのでしょうか?
VB9に比べてVB10のことはまだまだ分かりませんが、現在いろいろなことを検討しています。例えば、今後はより多くのマシンが複数のコアプロセッサを持つようになると思います。そうなったとき、それらを簡単なVBのプログラムから最大限に活用できるようにしたいと考えています。いつも念頭に置いているのは、VBプログラマーの作業がいかに楽になるかということです。 |
―― より本格的な動的言語になるといった方向性についてはどうですか?
その方向性はわれわれが非常に関心を持っていることの1つです。この時点では具体的な機能などについて申し上げることはできませんが、多くのスクリプト言語を調査するなどして、VBでの開発に適応できるようないいアイデアはないかと模索しているところです。 |
INDEX | ||
[Trend Interview] 設計者が語るVisual Basicの来た道、進む道 | ||
1.VB6からの移行は進んでいるか? | ||
2.VB2005の新機能、C#との関係 | ||
3.今後のVBについて | ||
「Trend Interview」 |
- 第2回 簡潔なコーディングのために (2017/7/26)
ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている - 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう - 第1回 明瞭なコーディングのために (2017/7/19)
C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える - Presentation Translator (2017/7/18)
Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
|
|