ノート:Visual Basic
リリース順について
[編集]VBは、最初にWindows3.x上の、特にGUI開発を主眼とするアプリケーション開発環境としてリリースされました。英語版のVB、英語版VB2.0、日本語版VB2.0、英語版VB3.0、Windowsの3.xと9xの両方に対応したVB4.0の順で製品がリリースされました(5.0以降は略)。英語版のVBはMS-DOS上でキャラクターベースのウィンドウシステムを開発するVB for MS-DOSという製品もリリースされており、従来の本文の表記では混乱を生じる可能性があるため、この部分を削除しました。219.107.157.105 2005年6月24日 (金) 10:24 (UTC)
実行速度に関して
[編集]VBはデフォルトで言語独自のエラー処理を、実行形式のプログラムに組み込むので実行速度が遅いと記述すべきだと思われます(エラー処理を組み込まなければ、通常のWin32アプリでにおいてMFCを使ったVC++とさほど実行速度の差は出ないと思われます)--以上の署名のないコメントは、221.187.45.161(会話/Whois)さんが 2005年10月25日 (火) 13:47 に投稿したものです。
Visual Basic の位置づけ
[編集]Visual Basic の存在理由・存在価値として、Rapid Application Development ツールと位置づけるという見方があります。 Excelのような表計算ではもの足りない。しかしC++でコツコツ書き上げなければならないほどの大げさな問題でもない。そんなとき、その中間的な存在として、短時間でソフトを書くために最適なツールである。という見方です。--以上の署名のないコメントは、220.145.186.37(会話/Whois)さんが 2006年1月10日 (火) 22:49 に投稿したものです。
実行速度に関して(2)
[編集]Visual Basic(Quick Basicの時代からそうですが)がC系言語に比べて遅いのは、整数演算、条件分岐を中心とした処理の場合です。 私の経験では、実数演算(逆行列の計算など)では、C系言語と変わらないか、むしろ速い結果が出ています。 これはおそらく、C言語では「実数演算は、必ず倍精度実数に変換してから、演算処理する」という規定があるためではないかと思います。--以上の署名のないコメントは、61.210.72.36(会話/Whois)さんが 2006年4月5日 (水) 12:41 に投稿したものです。
VBAについて
[編集]Accessが記述されてないのはなにかわけがあるのでしょうか?--以上の署名のないコメントは、121.1.205.249(会話/Whois)さんが 2007年1月11日 (木) 08:52 に投稿したものです。
私なりの考え
Accessは、ソフトの名称であって、言語を指す言葉ではないからです。AccessはVBを使いますが、あくまでソフト名です。
--TheGreatMilkyWayRailRoad 2010年4月23日 (金) 08:35 (UTC)
Visual Basic(VB)は、.NetFrameWorkに組み込むことができるけれど、一般にC++はInternet用の言語ではない。
[編集]Visual Basic(=VB)、C#、は「.NetFrameWork」に組み込むことが出来る。(=ASP.NET FrameWork)でインターネットを構築できる。
しかし、C++はWebアプリではないため性格が大いに違うと思われます。この項目で触れる必要はなかったように思えます。 ですので、この項目ではC++は問題にすべきことではなかったように思います。(特に処理速度)。
その他の関連あるVB以外の言語にも触れており、各言語に精通している人以外は、頭の中が混乱してしまうように思えます。
しかし、立派に記述されています。ご苦労さまでした。
--TheGreatMilkyWayRailRoad 2010年4月23日 (金) 08:32 (UTC)
Hello, worldプログラムについて
[編集]以下のHello, world!プログラムを追加したほうがいいのでは?
Public Class Form1
Private Sub Helloworld(ByVal e As System.Object, ByVal sender As System.EventArgs) Handles button1.Click
MsgBox("Hello, world!")
End Sub
End Class
上記のHello, worldプログラムについて
[編集]button1コントロールがForm1上に配置された、と解釈してよろしいのですか? それならば、Form1のロード時にメッセージボックスを表示させたほうがよろしいのでは?
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load MessageBox.Show("Hello, wolrd!") End Sub End Class
--Vatch 2011年10月6日 (木) 13:02 (UTC)
サンプルソースコードについて
[編集]上で例示されているサンプルソースコードも、現在記事にあるソースコードもなのですが、Visual Basicのものではなく、Microsoft Visual Basic .NETのものであるように見受けられます。
Module Module1
Sub Main()
console.write("Hello, World!")
End Sub
End Module
現状のサンプルソースコードは以上のようになっていますが、
- Visual Basicでは「Module ~ End Module」というブロックの概念はない
- Consoleというオブジェクトも標準機能には含まれていない(.NET FrameworkにはSystem.Consoleクラスがあるので、Visual Basic.NETでは使用できます)
- Visual Basicでは戻り値を受け取らずプロシージャを呼ぶ時は、引数を()で括らずに表記するか、Call命令を使用する
といった点でVisual Basicの言語仕様を逸脱しており、例としては不適切と考えます。
Microsoft Visual Basic .NETの記事は別にあり、そちらにはVB.NETのサンプルがありますので、こちらはVisual Basic(6.0以前)のサンプルソースコードを掲載すべきと考えますが、いかがでしょうか。 (そういう意味では、ノートページで言及されている上2つのサンプルに関しても、Visual BasicではなくVisual Basic .NETの文法ですので、掲載するのであれば当該記事に掲載すべきと考えます。Visual Basicの記事とVisual Basic .NETの記事を統合するというのであれば、それは議論の余地はあると思いますが) --Ellen(会話) 2016年7月6日 (水) 11:01 (UTC)
- 賛成 VBの記事には、もともとVB.NETも含めた記述が記載されていたのですが、とあるタイミング(2015年7月22日 (水) 23:01)でVB.NETに関連する一部の記述が(議論なく)移動されています。おそらく、その際の混乱がまだ残っているだけだと思われます。本記事すなわち従来のVBとして不適切なコードであれば、修正してもよいのではないでしょうか。なおVBとVB.NETは完全に別物の言語ですが、2016年現在のMSはVB.NETのことも「Visual Basic」と呼んでいるので、非常にまぎらわしいというのが実態です。--sygh(会話) 2016年7月8日 (金) 11:23 (UTC)
- 議題の作成者からその後のリアクションがありませんが、コード例を修正しました。なお2017年現在、「Visual Basic」は公式にVB.NETの意味でも使われているため、旧VBの記事とVB.NETの記事は分けるべきではなかったと考えられます。議論なく勝手に独断で分割されてしまったこれらの記事は、もう一度統合するべきではないでしょうか。--sygh(会話) 2017年1月29日 (日) 17:02 (UTC)
改名提案
[編集]提案 先頭に「Microsoft」と付けない名称が一般的だと思いますし、これらの記事でも付けた表記は殆ど使用されていません。また、他言語版の記事名も付けていないものが殆どです。以上の理由から、改名を提案します。--Momiji-Penguin(会話) 2019年10月8日 (火) 01:42 (UTC)
- 報告 提案から1週間を過ぎましたが、反対意見がありませんので、VBは改名を実施し、VB.NETは移動依頼を提出しました。--Momiji-Penguin(会話) 2019年10月18日 (金) 19:04 (UTC)
- 済 VB.NETの移動を確認したので、改名提案を終了します。--Momiji-Penguin(会話) 2019年10月25日 (金) 14:00 (UTC)