• ベストアンサー
  • 暇なときにでも

DelphiとVBの開発コスト

あるシステム開発をベンダ-に出したところ VBでの提案があったのを蹴って、Delphiでの 開発を行うように現在交渉中です。  ベンダ-がDelphiでの開発はコストがかかる と難色を示してますが、果たして本当のところ そうなのでしょうか?  コンパイル、デバック作業にコストが大と 言われてますが、逆にVBでありがちなプログラム 実行後の結果をみて構文の誤りの発見されるとい うのが、少ないと思うのですが・・ OS環境の影響を受けず、インタプリタよりはるかに 実行速度が速いDelphiで行うのがベストのシステム なのですが(広く配布するプログラムでクライアン トの環境を把握出来ない)  **(実はこのベンダ-VBでの開発経験は 豊富ですが、Delphiでの開発はないらしいです。)  

共感・応援の気持ちを伝えよう!

  • 回答数8
  • 閲覧数602
  • ありがとう数7

質問者が選んだベストアンサー

  • ベストアンサー
  • 回答No.7
  • ymda
  • ベストアンサー率37% (668/1777)

入札というのが、一番いたいですね。 それに、確かに、「2,3週間でモノにできる」といっても そのベンダーにとっては、どれだけの教育期間の為に 損害を受けてしまうかというのも考えられるでしょう。 ちなみに、2,3週間でモノにできるというのは、 プログラマー各個人の話であり 実質それだけの為に場合によっては2ヶ月かかってしまう ことも考えられます。 言語を覚えるのでさえ、個人差があるわけですし・・・ #参考までに、昔契約で入っていた所で急遽Delphiでの  プロジェクトが入ったようなのですが、その中で  一番覚えるのがはやかったのが、VB歴3年の  女性社員でした。(わずか1週間)  そのプロジェクト自体には私は参加しませんでしたが

共感・感謝の気持ちを伝えよう!

関連するQ&A

  • Delphiで、出来にくい事って。(欠点

    Delphiしか経験がないのですが、私はDelphiの開発効率は、けっこう上だと思っています。 VBと迷ったんですが、選んでよかった。 過去のサンプルが多く、基本Win上で動く事、ネイティブコンパイルな事。 究極的にはOSも作れるはず。 Win32APIが、使いやすいこと。 はいはい、「そんなのはどの言語でも、似たような物だよ!!」とあおっておいて、Delphiで出来にくい技術?手法?アプリ?ってありますか? 個人的には、ゲーム系を作ったことがないので、作ってみたいかなー、と。 スレッドやオブジェクト指向もサポートしてるから、いけるとは思うのですが。 サイズが大きくなるのは、Delphiの欠点ですねー。 あとは、配列がちょそいのが、ちょっと欠点かなー。 Perlから、プログラムを始めたもので。^^; 他にも、Delphiの欠点があれば、教えてくださいな。

  • VB開発環境をカスタマイズしたい

    VB開発環境についてです。 たとえば、プログラム内で使用している変数にコメントをつけることができれば便利だと感じましたが、そのような機能を実現させることはできないかと。 つまり、開発環境に機能を追加するためのプログラミング技術などをご存知のかたお願いいたします。

  • 今、開発言語をどれにしようか、迷っています。

    マシンはデュアルコアのAthlon64 4800+は 決定しているのですが開発言語をどれにしようか、迷っています。 Windows: ASM, C, VB, Delphi, C++Builder, VC++, Java, VB2005, VC2005, C# ... Linux:GCCが良いよでしたら、Linuxにするかもしれません。 計算とグラフ表示が主な処理で、なかなかアルゴリズムが難しく、開発途中で試行錯誤しますので、開発のし易さも選ぶポイントです。 以下の優先順位です。 1番目:実行速度の早いもの(最適化など) 2番目:Profile機能がある(サードパーティでもよい) 3番目:ソースの記述量が少ない。(簡単) 4番目:書籍や情報が多い 5番目:汎用性が高い(今後のメンテナンスも考えて) 1番目の実行速度にこだわるのは、VB6でプログラムを書いて実行させたところ、昔BCCで書いていたプログラムより遅かったので驚愕しました。 簡単なのはよいのですが、速度が遅いのとプロファイル機能が手に入れなかったので、VisualBasicは断念しようと思います。 仕事とは直接関係ないのですが、今後の参考にしたいので、皆さまのご意見をお聞かせください。

その他の回答 (7)

  • 回答No.8

コンパイル後の実行速度で言うとDelphiの勝ちでしょう。 VBでの開発経験が豊富と言うことは、ユーザインターフェースのために、OCXを開発したり、買ってきて、使っているかもしれません。 Delphi5でもOCXが使えるみたいですが、開発効率から言って、今からDelphiに乗り換えさせるのは大変だと思います。

参考URL:
http://www.zdnet.co.jp/pcweek/archives/980703/980703p2001.html

共感・感謝の気持ちを伝えよう!

  • 回答No.6
  • ymda
  • ベストアンサー率37% (668/1777)

みなさんが回答されている中で やはり、そのベンダーに頼まないというのが 最もいい部分ではないかと思います。 VBの開発者はもう飽和しているものの、Delphiの 開発者はまだ足りない部分もあると思います。 その分の多少のコスト増の部分がベンダーによっては あるかもしれませんが、この場合においては、この 程度のコスト増は一種の保険とみなすのもどうでしょうか? とはいえ、Delphiであるとしても、VBほどではない ですが、配布に関するトラブルは出る可能性はある でしょう。(かなり少ないでしょうが)

共感・感謝の気持ちを伝えよう!

質問者からの補足

入札でベンダ-が決まったので変更は出来ないのです。 ただ、別のベンダ-で近年、うちから出す開発をDelphi で行っている開発者達に聞くと、基礎がしっかりして いて、VB,VCの経験があれば、2、3週間あればDelphiもものになると言うのですが・?? 一番大事なのは、システムの設計で、これがしっかり できれば、あとは、何の言語を使ってプログラミング を行っていくかで、言語の違いは、方言の違いみたい なもので、システム開発の根幹ではないと思うのですが  

  • 回答No.5
  • ARC
  • ベストアンサー率46% (643/1383)

皆さん仰るように、ベンダ側に開発経験のない言語での依頼をすれば、コストがかさむか、粗悪品が出来るか、あるいはその両方だと思います。 ですから、選択肢としては、 1:ベンダの得意な言語(VB)で開発させる。 2:そのベンダは切り、Delphiの出来るベンダと交渉しなおす。 というのがいいのではないかと思います。 DelphiとVBの開発効率の差ですが、言語としては、ほとんど差はないです。(業務アプリを作った場合) 実行速度の面では、Delphiに分がありますが、普通に使う分には、まぁ無視出来る程度の差です。

共感・感謝の気持ちを伝えよう!

質問者からの補足

みなさん有り難うございます。 今回の件の補足は、#ymdaさんの欄に書き込みました。  実行速度の点でもDelphiでやりたいのですが、 もっとも、重要視しているのは、システムが インスト-ルされるクライアントPCの環境が 把握出来ないことなのです。 Win95/98/NT/2000すべてで使われるのです。 しかも、VB2のアプリも残っているもあるし・・ 

  • 回答No.4
  • ryoyama
  • ベストアンサー率56% (45/80)

ベンダ-さん側の立場ではDelphiでの開発経験がないのであれば難色を示すのは当然でしょう。 ただでさえノウハウがなくて工数がかさみそうなのに、もし厳しい工数で開発をしなくてはならないとしたら最悪納期に間に合わないという事態になりかねません。 Visual Basicの欠点については実行速度も含めてかなり良くなっているように感じます。 Visual Basicでの開発経験が豊富なベンダーであれば欠点を補うノウハウがあるのではないかと思います。 Visual Basicでの開発が心配であれば、Bound Checkerなどのデバッグツールを使用することを条件にすることで、品質は上がるのではないでしょうか。 実行速度だけで言えば、Visual C++での開発がベストではないかと思います。(工数は多くなりますね) (実は私は日常的にVisual C++で開発をしている者です。ちょっとVisual C++びいきですが。)

共感・感謝の気持ちを伝えよう!

  • 回答No.3
noname#9414

一言いいでしょうか・・・ VBは、当たり前ですけど、開発言語はVisual Basic、 Delphiは、開発言語はPascal、文法的に考えても 異なる言語です。 そこへ、突然やったことのないPascalでの開発を やってくれと言われたら、まずPascalの勉強から はじめて、それからシステム開発に移ることに なります。 当然メンテナンスもPascalで行うわけですから、 さらにPascalを勉強する必要があります。 それを考えると、元々知っているVBと比較すると 新たに覚える必要があるDelphiでは、当然工数も よけいにかかり、コストも上がるでしょう。 というのが私の考えです。 ではでは☆

共感・感謝の気持ちを伝えよう!

  • 回答No.2

構造化プログラムができるという意味ではDelphiの鵬がきちんとしているでしょう。 ただし、Visual BASICがインタプリタというのは昔の話です。 Ver.5(だったかな?)からは、最適化コンパイラになって、実行可能ファイルを生成できます。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

takakohnoさんどうも有り難うございます。 ところで、VBが4.0から5.0になったとき、ネイティブ コンパイルが可能になるとアナウンスでかなり期待 したのですが、実際は、ネイティブコ-ドコンパイル されたプログラムの実行時にランタイムライブラリ が必要としたので、かなり期待はずれという感じを 持っているのですが・・  いや、つい、別のプログラムでDelphi化したら 劇的に早くなった経験があるので、VBの実行速度 最適化は、サイズは多少でかくなるし、やや早く なるという印象が強くて・・・

  • 回答No.1
  • ymda
  • ベストアンサー率37% (668/1777)

ちょいと、質問の意味がわかりにくいのですが nagisatomoさんのほうは、クライアントのほうでしょうか? ---- 多くのベンダーではVBとDelphiはほとんど同じ程度の コストといわれていますが、VBよりDelphiのが安くなると いうことはまずないと思われます。 コード自体はVBのが速くあがる分、初期の見積もりでは Delphiよりも安くみえるものの、何かトラブれば 結局一緒のような気もします。 #とかいって、私、Delphi経験ないんですが(汗)

共感・感謝の気持ちを伝えよう!

質問者からの補足

みなさん、回答有り難うございます。 今回開発するのは、クライアントに配布するシステム です。私は某中央官庁の情報システム部門にいます。 うちの地方機関、全国の自治体、企業に毎年、ある 統計のデ-タを入力してもらうものです。 (従来は紙の調査表で集めて当方でサ-バ-へデ-タ 登録していた)  全国集計した統計は、庁内のイントラで提供してますが、情報公開法が出来たので、近い将来インタ-ネットで公開します。。サ-バ-側は別ベンダ-が担当。 こちらは、元々ASPを使っていたのですが、複雑な検索 や集計を行うと途端にレスポンスが低下してのを、最近 Delphiに切り替え、大幅に改善されました。  本題に戻ると、インスト-ルが予想されるPCの環境がまちまちでかつ企業内のPCのようにクラアント環境の標準化ができないことなのです。 過去、別のもので、VB2からVB4に移行した際、何の機能 変更もないのに大きなコストをかかったり、IEやOffice のバ-ジョンアップでVBのソフトが動かなくなったり、 VBで作られた他のソフトをインスト-ルされ動作しなく なったりと、かなり苦い経験があります。  省内にも、VB4で使っているプログラムがまだ、いくともありますし、Win95のPC9821Na7など、初期のWin95 がたくさん残ってます。まして、自治体はマシンの リプレ-スは中央官庁よりかなり遅れています。   プログラム配布に伴うトラブルを最小に押さえる ためにも、Delphiでと言っているのですが・・・ 

関連するQ&A

  • ACCESS+VBの開発は業界の方はどう見られますか!?

    現在、社内でデータベース開発をしております。この業界は初心者に近いのですが、 現在の開発環境はVB+ACCESでデータベースを作成しております。 フォームをVBで作成し、データはACCESに格納しております。 そこで、質問なのですがACCESSにはフォーム作成の機能もありますし、 VBA機能もあるので、単純に私は、ACCESだけで作成しても同じじゃないの?? そもそもVB+ACCESSの開発はメジャーなのでしょうか??現在ならば、VB.netやOracleなどの方が・・・ と思う気持ちもあり、この先自分のスキルアップの為にも、このままでいいのかな?? と迷っております。 詳しい方、アドバイスを頂けたらと思います。 何卒よろしくお願い致します。 また現在、よくデータベースでOracleという言葉を聞きます、Oracleはこのソフト1つで DB作成が可能なのでしょうか?プログラムは何を使っているのでしょうか??

  • HTMLの開発環境について

    HTML言語初心者です。 HTML言語を記述するとき、テキストエディタさえあれば、実行できるとよく言われていますが、VBやC等、開発環境があって大変便利と思っているのですが、HTMLにもエラー等すぐに分かるような開発環境(コンパイラ)は無いものなのでしょうか。

    • ベストアンサー
    • HTML
  • VBA

    基幹系システム開発を外部委託するために 色々業者選定を行っているのですが 開発言語が、各社違いVBAやVB、Delphiなど あるのですが、VBとVBAの違いはどのような ものなのでしょうか? 業者は、DBが同じなら開発言語はVBもVBAも かわりないと、おっしゃるのですが それで宜しいのでしょうか? 教えていただけますでしょうか?

  • WindowsCE6とPC間のソフト開発(VB)

    Hiroです。 現在、PDAを用いたソフト開発をしています。 PDAにあるファイルをPCにコピーするため、 WindowsMobileを使って、同期をとっていましたが、不安定です。 そのため、PCからソフトを実行し、 PDAにあるファイルをPCにコピーするプログラムを作りたいのですが、 PDAのドライブがわかりません。 調べると”コンピュータ\WindowsCE\\\・・・”PATHになっていますが、 当然ですが、VBでは認識できません。 PDAにあるファイルをPCにコピーすることは可能でしょうか? もし、わかる方がいらっしゃいましたら、教えてください。 よろしくお願いします。 環境 PC:Windows7 プログラム:VB.NET 2008 PDA:WindowsCE6

  • VB5.0からのバージョンアップ

    VB5.0+XPの開発環境ですが、マイクロソフト社のHPで調べるとVB5.0+XPは対応OSではありませんでした。 http://www.microsoft.com/japan/msdn/vs_previous/vstudio/techinfo/toolos.htm 今後、VB5.0→VB6.0にバージョンアップをしたとして、その際に開発に大きく影響がある 変更点等はございますか?なるべく慣れた開発環境がいいのですが、そうも言っていられません。 既存のVB5.0で作成したプログラムを編集したりは可能なのでしょうか? また、VB6.0に当たり、開発でつまずく様な点はございますでしょうか?? VB5.0→VB6.0のバージョンアップに際し、メリット・デメリット、注意点等ありましたら、 教えて頂きたいです。

  • Delphiでデバッグ時の識別はできますか?

     現在、2重起動防止のため下記のようなコードにしています。 Delphiではデバッグ実行時のフォームも2重起動の対象となるため、開発環境があるときは、2重起動のチェックをしないようにしてあります。  これでうまく行くのですが、何だか野暮ったい気がします。 こう少しスマートな解決策はないでしょうか? program Sample; uses  Forms,  Windows, Dialogs,  uFrmSample in 'uFrmSample.pas' {frmSample}; {$R *.res} var  MainWnd: THandle; begin  {Delphi開発環境の存在をチェックする}  MainWnd := FindWindow(nil, 'delphi 6');  if MainWnd = 0 then begin   {間発環境が実行中でなければ2重起動をチェックする}   MainWnd := FindWindow('TFrmSample', nil);   if MainWnd <> 0 then begin    ShowMessage('既に起動しています');    SetForegroundWindow(MainWnd);    Exit;   end;  end;  Application.Initialize;  Application.CreateForm(TfrmSample, frmSample);  Application.Run; end. 以上、よろしくおねがいします。

  • VB2005のMDIについて

    はじめまして。現在、VB2005で開発しております。 MDIの操作で判らないところがありますので、ご存知の方がいましたら、教えてください。 MDIで開発しております。親フォームで発生したイベント内で子フォームに対してコントロール操作(画面を操作する関数を実行)を行うのですが、画面は全く動作しません。 ※デバックで確認するとコントロール操作しております。 対象の子フォームは必ず表示されていますが、必ずしも最前面にはいません。 今回のように親フォームから子フォームのメソッドを実行する際に動作する方法を教えてください。それとも、操作することは不可なのでしょうか。宜しくお願いします。

  • DelphiのPersonal版について・・他

    DelphiのPersonal版について質問させて下さい。 プログラミングの経験は全く無い所からのスタートです。 以前、ここで言語選択の漠然とした質問をさせて頂き、ご回答を踏まえた上で「java」若しくは「Delphi」の何れかを選択しよう!と言う所まで気持ちが固まって来ました。本当はまだ若干の迷いがありランク付けをすると、「Delphi」>「java」>「C」 と言った感じです。 さて前置きが長くなってしまいましたが、 DelphiのPersonal版ではデータベース機能が無いとの事ですが、資産管理ソフト(基本的にデータベースですよね?住所録と同じイメージでいます。)のプログラムは作れないって事なのでしょうか? それとも「データベース機能」の解釈を間違っているのでしょうか? 又、残念ながら資産管理プログラム等を作れないのであれば、この様なプログラムを作る場合「java」と「C」、どちらが向いている言語なのでしょうか?(二択だとした場合です。) 「Delphi」に限らず有償の開発環境もある様ですが、仕事に使いたいと言うよりは、趣味の範囲で勉強出来ればと思い、書籍代位の投資は已む終えないとしても、数万円の出費は今の所考えてません。 また、プログラム自体はスタンドアロンって言うんですか?単体で動く物を作る予定です(出来上がるのは先の先でしょうが・・)。 お手数ですが、ご回答頂ければ幸いです。

  • VB2005.NETプログラムから、エクセル2007へのマクロ実行を無効にしたい。

    <PC1 動作環境> ・OS :Vista Business ・ソフト:office2007 Excel <PC2 動作環境> ・OS :Vista Ultimate ・ソフト:office2007 Excel <目的> VB2005.NETで開発したプログラムから、 エクセルのセルに値を入れるソフト開発しており、 エクセル側にマクロを仕込み動かしています。 VB側から、エクセルのマクロを動かしたくない場合があります。 セキュリティセンター⇒マクロの設定⇒警告を表示して全てのマクロを無効にするを選択しました。 <問題> PC1では、VB側から、エクセルのマクロが実行できなくなりますが、 PC2では、VB側から、エクセルのマクロが実行できてしまう。 PC2でも、VB側から、エクセルのマクロを実行しないようにしたいのですが、どなたか解決方法を知っている方いませんでしょうか。 宜しくおねがい致します。

  • キネクトV2 の開発言語について

    キネクトV2と、開発環境VS2013を使って、物体の認識を行うプログラムを作成しようと考えているのですが、開発言語は VBもサポートしていますでしょうか。