第2回 Visual Basic祭り 〜帰ってきたVB研公開ゼミ〜:連載:業開中心会議議事録
C#の存在感が強まる中、VBに未来はあるのか? 今からC#に乗り換えた方がよいのか? Visual Basic開発者が集まり、VB開発とVB開発者の未来について講演・議論した。
powered by Insider.NET
2013年4月13日(土曜日)、@IT/.NET開発者中心コーナー主催のオフライン・セミナー「第2回 業開中心会議 Visual Basic祭り 〜帰ってきたVB研公開ゼミ〜」(スポンサー:グレープシティ)が開かれた。
今回のテーマは、「Visual Basic祭り 〜帰ってきたVB研公開ゼミ〜」。最近ではC#の存在感が強まってきているのとは対照的に、VB(Visual Basic)が話題になることは少なくなってきている。VBに未来はあるのか? 今からC#に乗り換えた方がよいのか? 多くのVisual Basic開発者が集まり、VB開発とVB開発者の未来について講演・議論した。セミナーの構成は、下記のとおり。
- 基調講演『今だからこそ最新のVB新機能の話をしよう』
- 技術セッション『非職業プログラマーのための開発戦略』
- パネル・ディスカッション『VB開発とVB開発者のこれから』
- 交流会
本稿では、基調講演および各セッションのUstream中継の動画を視聴・閲覧できるようにしている。なお、Twitter上でさまざまなコメントがツイートされたが、その内容は「Togetter」に残されている。
基調講演『今だからこそ最新のVB新機能の話をしよう』
基調講演では、VB開発者の初音 玲 氏が、LINQ以降のVBの新機能について説明した。
基調講演の詳しい内容については、以下のプレゼンテーション用スライドとUstream中継の動画を閲覧・視聴してほしい。
基調講演のプレゼンテーション用スライド
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
基調講演のUstream中継の動画
技術セッション『非職業プログラマーのための開発戦略』
続いて技術セッションでは、多様なVB開発を見てきた原 敬一 氏(アントシステム有限会社、株式会社東京紙工)が、極めて小さなアプリや自分用のプログラムを作る開発者が新技術にどういうふうに向き合えばよいかについて説明した。
技術セッションの内容については、以下のUstream中継の動画を閲覧・視聴してほしい。
技術セッションのUstream中継の動画
パネル・ディスカッション『VB開発とVB開発者のこれから』
パネル・ディスカッションでは、「VBの現在の状況」と「今後のアクション」という2つのテーマで、VB開発のこれまでとこれからを議論した。ご登壇いただいたのは、下記の方々である。
以下は、パネル・ディスカッションで筆者が重要だと思ったポイントである(以下、敬称略)。ここに書き出している以外にも注目すべき発言が多々あったので、興味がある方はぜひUstream動画を視聴してほしい(本稿の最後に埋め込んでいる)。
●VB開発のこれまで
―― 「業務アプリInsider 読者調査レポート」の「現在使用している開発言語」を見ると、38.1%で1位のJavaに続き、VB(.NET)が33.6%で2位になっています。さらに「5年後のアプリ開発で習得/使用したい開発言語」でもVB(.NET)が26.7%で3位になっています(2位はJavaScript)。
このように業務アプリ開発において、VBは依然として人気の開発言語です。しかし、メディアやブログなどの技術情報で使われる開発言語や、わたしの回りの開発言語の好みを見ると、C#の方が人気で、「VBは利用者が減っている」かのような印象があり、印象と現実にギャップがあります。
そこでお聞きします。実際の開発現場とつながりのあるマイクロソフトから見て、実際の現場では、どのくらいVBは使われているのでしょうか?
ジニアス平井 VBの案件は少ないです。一時期は.NETへの移行で、案件の半数がVBのこともありましたが、.NET化が一段落したため、減ってきています。.NET開発の新規開発でも、(C#ではなく)VB開発を続けるというケースは1割程度にとどまっている印象です。
初音 わたしの印象はここ最近、違ってきています。確かに2005〜2010年あたりは「C#」名指しの案件が多かったです。しかし、2011年以降では「VBまたはC#」という言語指定や、そもそも言語指定が明示されていない新規案件が増えてきており、開発言語の選択に柔軟性が出てきています。さらに、決裁権を持つ層がVBのコードを読めたりするケースも多く、そういったケースではVBは採用されやすいです。このように風向きとしては、VBにとって“逆風”ではなくなってきていると思います。
―― 言語機能として、VBはC#と肩を並べる実力になってきています。そこで(C#と比べて)VBの特色を教えてください。
原 VBは、コードを声に出して文章として読める開発言語です(C#は「{」などがあり、声に出して文章として読むことはできない)。これによって、コードの意味が頭にすんなりと入ってきやすい。また、そもそもBASICとは「Beginners All purpose Symbolic Instruction Code: 初心者向け汎用記号命令」の略語であり、初心者が容易にコードを記述できるように作られています。ただし、「最近の進化でVBの言語仕様が難しくなってきているので、もっと簡単にすべき」という声もあります。
初音 Visual Studioとの親和性は、C#よりもVBの方が高いと思います。例えばVBは大文字・小文字の区別がないので、全部小文字で書いても、Visual Studioが正しい大文字・小文字の単語に自動的に置き換えてくれます。これと同じような挙動をC#でできないのは、根本の言語設計の差です。やはり、大文字・小文字などを気にせずに書けるVBの方が(C#よりも)初心者に向いていると思います。
●VB開発のこれから
―― マイクロソフトは今後もVBをサポートしていくのでしょうか?
ジニアス平井 もちろんです。BASICで始まった会社ですから、VBを外すことはありません。マイクロソフトとしては、C#もVBも平等に力を入れていきます。ただし、「市場ニーズ」と「マイクロソフトのポリシー」は必ずしも一致しておらず、現状では「技術情報がC#に偏ってしまっている」というのは事実です。これをどう捉えていくか、少ない技術情報の中でどこまでVBを持ち上げていくかについては、これから検討する必要があります。
―― VBのサンプル・コードが少ないのはどうすればよいでしょうか?
ジニアス平井 マイクロソフトが提供するサンプル・コードは、社内ツール(非公開)によって機械的にC#からVBにコードを翻訳しています。
―― やはりVB開発者はC#のコードも読めるようになった方がいいのでしょうか?
初音 結論からいうと、C#のサンプル・コードが大量にあるので、読めるようになるべきだと思います。できれば読まないで済むように、VBのサンプル・コードを増やすようにしていきたいです。
―― C#が読めるなら、C#でそのまま書いた方がよいのではないでしょうか?
樋口 方言みたいなモノで、「自分は何が得意か」ということが重要です。VBで書いた方がC#で書くよりも開発生産性が高いなら、(C#が読めても)やはりVBを使った方がよいです。今やC#とVBは機能差がほとんどないので、純粋に開発生産性が高い方の言語を選択するのが自然だと思います。
●VB開発者へのメッセージ
―― 最後にVB開発者へのメッセージをひと言ずつ。
初音 VBはおわコンではありません。新しい技術や機能はこれからもVBに搭載されてきますので、これまで以上にVBを使って、新しい技術を習得し、アプリを作っていきましょう。
原 VBを使っている人や使いたい人は、Webにも「使っています」ということを書かないなど、まだまだアピールが足りません。利用者の規模ではC#とそれほど変わりませんので、ぜひ積極的にVBの利用をアピールしていきましょう。そうしないと、本当にVBが消えてしまうかもしれませんよ。
樋口 自分が好きな範囲でよいので、興味のある技術を調べて学んだことを、VBのコードでブログなどで情報公開してください。ネットで得た知識に恩返しするつもりで、ネット上のVB技術の情報充実に貢献していただくと、VB開発の状況がより良くなると思います。
ジニアス平井 マイクロソフトとしてもVBの発展が途切れないように頑張っていきたいと思います。VB開発者を長年やってきて思うのは、今や1つの開発言語だけを習得する時代は終わったということです。HTML5、JavaScript、通信技術のRESTなどを総合的に身に付けておかないと、VBだけで飯を食える時代ではなくなってきているのです。もしかしたら何十年もすると、COBOLみたいにVB開発者は貴重な価値を持つようになることもあり得ます。ですから皆さまもどん欲にいろんな技術を身に付けていってほしいと思います。
―― 皆さま、ありがとうございました。
パネル・ディスカッションのUstream中継された過去動画
次回の業開中心会議のテーマは、「マルチデバイス対応のための技術&サービス活用」。7月6日(土曜日)に開催する(参加申し込みページはこちらだが、満席のため申し込みの受け付けは終了している。申し込みに間に合わなかった方は、ぜひUstreamによるオンライン配信を利用してほしい)。
Copyright© Digital Advantage Corp. All Rights Reserved.