3

1 人のC ++ プログラマーが GUI フレームワークをゼロから作成するには、どれくらいの時間がかかりますか?

大まかな仕様:

  1. ブースト、画像読み込み関数、フォント レンダリング ルーチン、シグナル スロット、Unicode 文字列クラス、Varaint クラスにアクセスできます。(基本的に Qt 4 から実際の G​​UI (QWidget から派生したもの) を差し引いたもの)。
  2. ツリービュー、テーブル ビュー、テキスト エディター、リスト ボックス、コンボ ボックス、ボタン、ラジオ ボタン、パネルなどの標準コントロールを実装する必要があります。
  3. フレームワークはオペレーティング システムから分離されており、OS オブジェクト (ウィンドウ ハンドル) を使用しません。つまり、ラスター イメージまたは OpenGL ウィンドウで操作し、ディスパッチ/解釈する必要がある OS からマウス/キーボード イベントを受け取ります。
  4. 移動/最小化/最大化、前面への移動が可能な複数のウィンドウがあります。
  5. ライブラリを使用して、このライブラリを使用して任意の長方形のウィンドウを再実装できるはずです (アニメーション効果が無効になっている Win98 GUI を考えてください)。
  6. html ページを表示する必要はありません。
  7. 角を切って、ms ペイントでビットマップを作成し、それを画面にブリットして、「これはウィンドウです」と言うことができません。コンポーネントにはジオメトリがあり、構成可能な色があり、サイズを変更したり、ウィンドウのさまざまな側面に「固定」したり、相互にリンクしたり、相互のサイズやジオメトリに影響を与えたりできます (Qt 4 レイアウト システムを考えてください)。
  8. プログラマーのスキル - 平均以上、少なくとも 3 年以上の C++ 経験。

基本的にWindowsのgdiを使わない「Windowsデスクトップ」。

私はそのようなものをゼロから開発する人のために働いているので質問しています (彼らのニーズは非常にまれであり、私が知っている既存の GUI フレームワークは彼らに一致するものはありません)。私の「士気」に悪影響を及ぼします。

前の人々はこのプロジェクトで 3 年間を無駄にし (彼らは Delphi で書きました)、それを完了できなかったので、担当者はそれを廃棄して最初からやり直すことにしました。プロジェクトは従来の gui とは大きく異なりますが、複雑さは多少同じである必要があります。

したがって、比較のために、別のプログラマーからの大まかな見積もり (議論または実務経験に基づく) が必要です。
私の見積もりでは、約 1 年以上かかると思いますが、それが長すぎるかどうかを知りたいです。

4

2 に答える 2

3

Wikipediaによると、Qt の開発は 1991 年に 2 人の開発者によって開始されました。彼らは 1994 年に Trolltech を設立しました。最初の Qt のリリースは 1995 年の 1 年後でした。したがって、フルタイム (1994 年から 1995 年) で少なくとも 2 人年に 1994 年以前に費やした時間を加えたものになります。

問題は、彼らが Trolltech を設立したとき、彼らはおそらく会社の財務リスクを負うのに十分な製品をすでに持っていたので、これらの追加の 2 人年は氷山の一角に過ぎないということです. また、活用できた投資によっては、他の人を雇って支援してもらった可能性もあります。

GUI に関連しないすべてのコア機能 (最も書きやすい部分である IMO) を考慮し、非常に楽観的な見積もりを使用したとしても、Qt の最初の GUI 部分にはまだ数人年かかります。上司が期待していた 3 か月とはかけ離れています...

于 2013-06-15T16:34:59.760 に答える
0

ライブラリの構造を計画し、ライブラリに含めたいすべての機能を集めるのに 1 週​​間の時間を費やすとすれば、6 か月で完了する可能性があると言えます。これはすべて、必要な拡張性の程度に依存しますが、1 年は長すぎると思います。

もちろん、これはすべて、C++ での数年の経験と、GUI 設計でのある程度の経験を前提としています。また、あなたや同僚が Photoshop などでさまざまな UI スキンを作成するためのグラフィック デザインの経験があれば、結果として得られるルック アンド フィールにもメリットがあります。

これが役立つことを願っています。

于 2013-06-15T16:37:56.267 に答える