
こんにちは。
素朴な質問です。
20年ほど前のPC-8001時代からBasicをときどき使っています。途中で、N系BASICからVisual Basicに変更しています。そして、ちょっとした仕事のツール作りにVBやVBAを使用しています。
VBは結構本格的業務プログラムに利用できると思います。ただ、「業務ならVBではだめだ、C言語だな」という声もよく聞きます。VC++もいいとは思うのですが、VBに比べて面倒という印象が強く、なかなか本格的には手を出せません。ちなみに、VBでいくつかの業務用プログラムを制作しました。数年間問題なく、社内で動いたりもしている現状を考えると、なぜ、本格的プログラマーはVBを毛嫌いするのであろうと思ったりします。
さて、みなさまがたは、VBで何をお作りになっているのでしょうか。
規模などを含め、実際のこころをお話いただけないものでしょうか。
[過去の履歴も探しましたが、うまくは見つかりませんでした]

No.1ベストアンサー
- 回答日時:
言語って業務やシステムに対して向き不向きがあると思うんですよ。
VBのメリットで言えば、
Windowsに特化している為相性がいい事とコーディングのしやすさ、フォームの作りやすさ等があげられます。
逆にデメリットとして、
Windows以外のOSでは動作しない。
マシンにインストールされているモジュールに動作が依存されてしまう。(IE等)
経験の浅い人(素人)でも作れる為バグが多い。(さらに仕事の単価が安い)
処理が遅い。(致命的ですね)
さらにWindowsの開発のデメリットとして、
開発者がMS(ゲイツ君?)の思うがままに振り回される!
等々デメリットの方が多い気がします…。
別にVBがだめだという訳ではなくて、
画面等のユーザインターフェースはVBで作ってC++で中身を書くなんてのは実際の業務でもよく行われてます。
要は使い分けですね。
⇒でも今後はJAVAにとって変わられるんだろうな…。
VBの仕事ってなくなってきたし…。
期待してたVisualStudio.NETもあんまり使い勝手よくないし…。(ぼそっ)
P.S.
面倒なんて少しでも思ったらこの業界では働けません。(^^ ;)
ありがとうございます。
> 面倒なんて少しでも思ったらこの業界では働けません。
おっしゃるとおりです。
面倒なのは、言語を覚えることそのものよりも、覚えている過程の生産性の低下のフォローかもしれないです。
> 開発者がMS(ゲイツ君?)の思うがままに振り回される
うーん、それでなくともいろいろに振り回されるのですから、お○ゃくとか、し○○ょうとか。せめて間発環境くらいは、たしかに振り回されたくはないですね。
> VBの仕事ってなくなってきたし…。
うーん、そうですか。VBの仕事って減っているのですか。他の言語が増えているのでしょうかねぇ。
No.2
- 回答日時:
VBのみの機能(関数)だけであればメモリ操作を考えなくてもいいというところが大変便利なのですが、その分VB内部で独自のメモリ処理をしているために、同じ機能を持ったプログラムをCとVBで作成した場合には、Cで作成したソフトの方が、EXEの大きさも小さくまとまりますし、処理も高速です。
それとVBはバイト/ワードの扱いがし辛いです。上位8ワードと下位8ワードの&HFFFFFFFF&はロング型に納まらない長整数が存在するのですから・・・これじゃ長整数の変数も意味がありません。。。
#1の発言にもあったように、VBソフトには素人プログラマが関わっていることが多いです。メモリ消費量を考えることや、チャートを書くことができない人間がVBプログラマに多いという点が主にあります。
最近の会社は言語の勉強をVBから始める会社が多く、その勉強も「メッセージボックスの出し方(パラメータのあれこれ)」「印刷の方法(画面系)」などの機能から学習をする人間が多いからです。
Cから勉強をする人は、内部でどのような処理を行って、出力するかということから始めてたはずなのですが、VCが普及したために、VBと同じような勉強の仕方をする会社が多いのも事実です。
>VBを毛嫌い
ぼくもそうでした。ぼくは本来アセンブラやCでの開発を多くしてました。アセンブラの開発は命令一つ一つにどれだけの負荷がかかるかなどの計算をしながら、開発を行ってました。Cで開発する時も、混合モードでどれだけの負荷があるかを計算しながらしてます。銀行システムや航空システムなど、「落ちるなんてもってのほかだ」という世界では、ハードに負荷をかけるわけにはいきません。どれだけハードの性能がよくなっても、それに甘えて妥協してメモリを消費して落ちるということも許されません。開発者のプロジェクトのメンバ次第ではCだけで作成する場合がありますし、画面はVB/内部処理はCといった方法がとられる場合もあります。
でも試作品は変更しやすいVBで作成しますけどね・・・
それと税金にかかわるものもVBでの開発が多いです。これは試作品と共通する部分が多いですが、VBで作成したソフトはバージョンアップしやすい事も特徴です。VBプログラマはうちの会社も多いので、簡単にソースを読み取ることができるVB作成ソフトは、バージョンアップを他人に任せやすいです。
それに税金はコロコロ変わりますからね・・・
VC6/VB6が出た今は、それほどの信頼性を求めるソフトでなければ、(ハード次第で)製作者の得意な言語でよいと思います。Cでできなかった途中でのソースの変更もできるようになったし、VBでできなかったアドレス監視など、どちらも機能が歩み寄ってきてます。Cでできるならそれが一番だと思うけど、肝心なのはバグのない仕様を満たしたプログラムだと思います。
VBの開発は安い?
確かにそれは傾向としてあります。しかしそれは開発の実績次第だと思います。
1.客先にVBをちょっとだけ知っている人がいて、VB=素人プログラマの集団という目で見られている。
2.会社自体にVBの実績しかないので、安く仕事を引き受けている。
3.客先で機能設計がすでにできていて、設計自体に負荷回避が考慮されていない。(設計者自体がVBしかしらず、プロジェクト自体が安くなってる)
詳しくは言えませんが・・・
先輩SEの請け負った仕事で、VBで高額な受注を受けたこともあります。その先輩はCもVBも熟知しています。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAでCOPYを繰り返すと、処理が...
-
【マクロ】シートの変数へ入れ...
-
【マクロ】並び替えの範囲が、...
-
【ExcelVBA】5万行以上のデー...
-
vbsでのwebフォームへの入力制限?
-
vba textboxへの入力について教...
-
複数のExcelファイルをマージす...
-
【マクロ】売上一覧YYYYMMDDHHS...
-
改行文字「vbCrLf」とは
-
Vba Array関数について教えてく...
-
【ExcelVBA】値を変更しながら...
-
【マクロ】開いているブックの...
-
【VBA】値を変更しながら連続で...
-
VBAの「To」という語句について
-
算術演算子「¥」の意味について
-
以下のプログラムの実行結果は...
-
VB.net 文字列から日付型へ変更...
-
[Excel VBA]特定の条件で文字を...
-
VBA ユーザーフォーム ボタンク...
-
ワードの図形にマクロを登録で...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAでCOPYを繰り返すと、処理が...
-
複数のExcelファイルをマージす...
-
【ExcelVBA】5万行以上のデー...
-
vbsでのwebフォームへの入力制限?
-
vba textboxへの入力について教...
-
Vba セルの4辺について罫線が有...
-
【マクロ】シートの変数へ入れ...
-
【マクロ】並び替えの範囲が、...
-
Vba Array関数について教えてく...
-
【ExcelVBA】値を変更しながら...
-
【マクロ】開いているブックの...
-
【マクロ】売上一覧YYYYMMDDHHS...
-
エクセルのマクロについて教え...
-
エクセルの改行について
-
VBA 入力箇所指定方法
-
[VB.net] ボタン(Flat)のEnable...
-
VBAでセルの書式を変えずに文字...
-
vb.net(vs2022)のtextboxのデザ...
-
Excelのマクロについて教えてく...
-
改行文字「vbCrLf」とは
おすすめ情報