- ベストアンサー
VB6かVB.netか
初歩的なことですが教えて下さい。 現在、VB6(SP5)で開発したアプリ(製品)があります。これはJet(Access2000)を使用したDBや自作のActiveXを使用して構築されております。今度この製品の改良を行う予定で、新規開発(但し使えるものは流用したい)を考えています。ここで使用する開発言語をVB6かVB.netのどちらにするべきか悩んでいます。世の中の流れが.netに進んでいる為.netで開発した方が良いとも思いますし、その反面VB6で開発したアプリが今後発売されるOSなどの環境で使用できなくならないのであれば使い慣れたVB6にしようかなとも思っていいます。何か良きアドバイスなどあれば教えて下さい。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
>・VB.netは後2回アップデートがあるとありましたが、まだ十分な言語ではないということなんでしょうか?またこのアップデートで下位との互換もなくなるのですかね。 は、参考URLを見てください。 正式には、バージョンアップではありません。説明が難しいのですが、今度発表が予定されている。バージョンは明確に利用目的と対応技術が存在します。 あくまで、今出ている情報と公開されている情報からの読み解きになるのですが、WinFX 等の技術が出てくるのは、.NET Framework 2.0が出てくる事が前提になっています。Yukon に関しても同様で、先日行なわれた PDC 等でも同様の解説がされています。この説明だけでも、長くなるので・・・。参考URL を熟読してください(としか言えません)。 また、誤解されると嫌なので・・・Jet はDB にアクセスする方法で、MSDE はデータベースの事を言います。したがって、同列扱うものではありません。 MSDE に対して、Jet で接続は出来ないのですが、ADO.NET を使ったアクセスが推奨されます。 したがって、VB6 で作り直す場合でも、データベースの接続方法だけは、ADO に移行する事をお勧めします。 っと言うのも、Longhorn が発売される頃には、データベースは現行の MSDE(SQL Server)から 間違いなく Yukon(開発コード)に移行しています。 今出ている情報だけでは、Yukon では、データベースの接続方法や今までの管理方法ががらりと変わります。出来なくなるわけでは無いようですが、推奨されないのは間違いないし、もしかしたらサポートからもハズレる可能性もあります。 等々の事を踏まえて、システムのリプレイスを行なうのなら、VB.NET をお勧めします。 なんといっても、インストールディスクを作るのが楽。DLL 地獄からの解放。等々、いろいろ産物はありますからね。 問題になるのが、開発者のスキルと対応する為のコストが必要になってしまう事がありますけどね。 後、MSDN に加入していれば、Longhorn のβ版の入手は出来るので、気になるようでしたら、今作っているアプリケーションが動作するのかを確認する事は出来ると思いますよ。
その他の回答 (3)
- mnabe
- ベストアンサー率33% (427/1283)
>パッケージソフトウェアの製品でADO.net(MSDE)を使用した場合、重たくなったりしないのでしょうか。 重くとは、何を指しているのか解りませんが、作りに依存します。しっかりしたデータベース設計を行ない、DB 側の処理とアプリケーション側の処理を明確に区分できるのなら、速度は飛躍的上がります。少なくても、Jet でアクセスするよりは速度面・容量面共に安心出来ると思います。 しかし、それも全て設計の力に依存してしまいます。 >MSDNに加入とありましたがどのように行えるのか押して頂けたら幸いです ですが、参考 URL を見てください。 具体的には、MSDN 関連の製品を購入する事で、加入する事ができます。 技術情報だけでは無く、最新の製品などにも触れる事ができます。 もし、会社でやっているのなら、入っていて損はないと思います。 少々値段は張りますが・・・それだけの価値は絶対にあります。
- mi-si
- ベストアンサー率35% (200/567)
工数を考えればVB6で良いかと思います。とりあえず、. netに移行するかに関しては2006年が節目だと思います。 WindowsDNAやRDO/ADOがどこに行ったかとか考えてみると、.netも同じ運命をたどる可能性を秘めているのと、VB.netは、後2回はアップデートが有る開発過程のバージョンなのに対し、VB6は安定バージョンです。 ロングホーン世代になるとまた、アプリケーション開発手法ががらりと変わる可能性があります(データベースエンジンすらもJetではなくMSDEが標準になる可能性がある) 従って、.netでもVB6でも移行プロセスが発生する可能性があると考えた方が良いかもしれません。VB.netの移行で工数かけてまた次のOSで工数かけるのは2度手間になりますので。 まだ、ODBC/DAOが消える気配が一向に無い(Microsoftは5年前からなくしたがってる様ですが)。そんな感じです。
補足
早速の回答ありがとうございます。 つきまして何点か確認したいことがあります。 ・VB.netは後2回アップデートがあるとありましたが、まだ十分な言語ではないということなんでしょうか?またこのアップデートで下位との互換もなくなるのですかね。 ・データベースの標準がMSDEとなるだろうとありましたが、VB6でもMSDE(SQL7.0?)を使用できると思いますが やはりJetよりもMSDEの方が良いってことですか? (MSDEの入手方法など分かりましたら教えて下さい) 宜しくお願い致します。
- mnabe
- ベストアンサー率33% (427/1283)
VB6 と VB.NET はまったくの別物です。 また、Jet を使っているとの事ですが、VB.NET では、ADO.NET への移行が強く薦められています。 それらを踏まえて・・・。 作り直すつもりなら、VB.NET の方がこれから、息の長いシステムになるでしょう。 たんなる改良であるのなら、VB6 で作った方がよいでしょう。 今後のOS に関しては、正直マイクロソフトに聞かなければ解りません。 ただ、今までの例から考えると、動作するとは思いますが、保証はしてくれないと思います。 近々で発売が予定されている OS は、Longhorn ですが、まだちょっと先ですので、そのアプリケーションのリリース時期等を考えて、対応を考えてみてはどうでしょうか?
お礼
早速の回答ありがとうございます。 同じVBという名前なのに全く別物となると、とても考えさせられますね。でも長い目で考えると.netですかね。
補足
早速の回答ありがとうございます。 やはりVB.netとVB6で全然考え方が違うのでしょうか。 新しい言語で開発すると生産性も落ちると思われます。 また、パッケージソフトウェアの製品でADO.net(MSDE)を使用した場合、重たくなったりしないのでしょうか。 最後にMSDNに加入とありましたがどのように行えるのか押して頂けたら幸いです。