- - PR -
たくさんの言語があふれていますが…
投稿者 | 投稿内容 | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-10-19 09:15
元記事を読まないと用語を誤解しそうですね。 「プロフェッショナル」:医師、弁護士、建築士など 「デベロッパー」:システム開発者 旧VBに関して言えば、大規模システムの開発には向かないと思いますね。 オブジェクト指向抜きで大規模なのをやるのはツライ。 あとは旧VBは例外処理もきつかった気がします。 (最近いじっていないのでうろ覚えなのです…) ただし、手軽にGUIを作成するという話であればいまだVBは最強なのかな、 とも思っていますね。敷居の低さがVBの魅力ではないでしょうか。 そしてこのメリット(手軽にGUI)はプロフェッショナルの立場では 大きく評価され、デメリット(大規模や例外処理に弱い)は あまり気にされないのでしょう。 デベロッパーの立場では手軽さよりも堅牢さといったところが重視されますから 「手軽である」ことのアドバンテージが (EoZであることはよいことなのですが)そこまで大きくない。 そしてデメリットが非常に大きくうつるのでしょうね。 新VBになってからは、デベロッパーでも使えるようになったな、と思いました。 # 本業はJavaなので無知ゆえに外している点があればご指摘ください | ||||||||||||||||
|
投稿日時: 2006-10-19 09:44
旧 VB でも、「オブジェクト指向」 ありきで開発はできますよ。 一応、インスタンスという概念もありますし、Implements キーワードもあります。(完全に手動ですけどw) こういう時に 「継承がないから...」 などと言われるのですが、 「継承」 は、それほど重要ではないと思います。(武器にはなりますが) 重要なのは、Multiple Instance であって、Inheritance ではないです。 # VB に関して言えば、継承よりか、明示的な 「継承階層」 の方が欲しいです... むしろ、
(まあ、3 ~ 5 は、カバーできるのでまだ良いのですが)
そうですね、On Error ~ は、構造化を強制できないので使い難いです。 例外処理というよりは、エラー処理 (エラーロジック) といった感じです。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||||||||||
|
投稿日時: 2006-10-19 21:11
ognacさん、こんばんは。
あ、私がそう思ったというわけではありません(主語がありませんでしたね…)。 #ちなみに私は普段、殆ど VB(主に2005)しか使いません。 件の、 MS のエライ人の発言部分が「C#、ASP.NET などの開発者はスキルレベルが高いが、VB の人はそうではない」と言っているように読めるので、そのように受け止めてしまう人も多いのでは無かろうかと、ま、そう思ったわけです。 でも、よく考えたら「.NET開発者への道」なので、ひょっとしてこれ、以前の VB(6以前)を使い続けている開発者に対して「スキルアップ」しようよ、という意味で言っているんでしょうか…? だとしたらなんか、誤解させる書き方だなぁ。 しかし、「糞」だとか「頭の悪い人向け」だとか言われているのも、「開発者は使うべきでない」とか言われているのも、以前の VB 限定ではなく、現在の VB(2002以降)も対象に含まれているようですので、じゃあ、その根拠は何なんだろうか、と疑問に思ったわけです。 | ||||||||||||||||
|
投稿日時: 2006-10-19 21:56
interfaceのimplementsが問題なく出来るのであればデメリットが薄れますね。 実装の継承ができないとなるとTemplateMethodパターンは使えなさそうですが…。 どこかに新旧VB向けのデザインパターン講座みたいなページないかなぁ。 と思って探したら講座ではないですがML総括のページがひっかかりました。 http://www.ogis-ri.co.jp/otc/hiroba/MailingList/digest/mail200002.html しかし、読んでみると厳しそうに思えますね。
なるほどなるほど。非常に参考になります。 型に関してはオプションでチェックを厳しくできるのでしたっけ? 入門用としては「まず触れてみる」の敷居の低さはメリットですが デベロッパー用となると「危なげな場所の早期発見」が重視されるので このあたりのスイッチが充実するとよいのですけどね。 | ||||||||||||||||
|
投稿日時: 2006-10-19 22:05
説得力の有無は置いておくとして、私がそう考える理由について、明確にします。 私が一番に思うのは、 「プログラムとはなんぞや?を知らなくても、それなりのモノが作れてしまえる」 というところです。 元々、プログラム初心者の教育用として設計された言語ですから、「プログラムとはなんぞや?」を学ぶためのモノのはずなのに、(これは IDE のせいではありますが)部品をポトリペタリすると、それなりのモノが出来てしまいます。 また、型を意識しなくてもいい、というところも、よくないと考えます。 わんくま掲示板のほうで、"06_10_01" と、"06___10_01" を比較している例を見ました("_" はスペース)。 文字列は年月日を表しているのですが、「年月日」と人間が認識できるのは、そういうアバウトさが人間にあるためです。しかし、プログラムにはありません。空白がありますから、数価とも認識されず、文字列として比較されます。 当然、同じではありません。 これを、「なぜ?」と質問するのは、VB 使いならでは、ではないでしょうか。 (スクリプト使いの一部も、かな?) 構造化とかオブジェクト指向とか、それはそれでいろいろあるんだけど、、、はぁ。。。 _________________ | ||||||||||||||||
|
投稿日時: 2006-10-19 22:11
すみません。言葉足らずだったようで。 本題は、一郎さんが VB 6.0 と混同しているのでは? という指摘です。 | ||||||||||||||||
|
投稿日時: 2006-10-19 22:40
まあ、オブジェクト指向を前面に推している言語と比べちゃうと目劣りするでしょうね。
VB6 以前はできないです。(慣れれば、ミスなんてなくなりますが)
VB7 からは、Option Strict オプションがあります。 VB8 は既定のインスタンスが復活しているので、制御するオプションが欲しいところですね。
おk、了解しました。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||||||||||
|
投稿日時: 2006-10-19 22:42
Jittaさん、こんばんは。
ま、その辺は最近、何でも一緒のような気が…。
うーん、つまり易しいが故に、逆に理解するに至るまでが遠回りになってしまうから、デベロッパーを目指す若人は使うべきでない、という事でしょうか。 |