1 人のC ++ プログラマーが GUI フレームワークをゼロから作成するには、どれくらいの時間がかかりますか?
大まかな仕様:
- ブースト、画像読み込み関数、フォント レンダリング ルーチン、シグナル スロット、Unicode 文字列クラス、Varaint クラスにアクセスできます。(基本的に Qt 4 から実際の GUI (QWidget から派生したもの) を差し引いたもの)。
- ツリービュー、テーブル ビュー、テキスト エディター、リスト ボックス、コンボ ボックス、ボタン、ラジオ ボタン、パネルなどの標準コントロールを実装する必要があります。
- フレームワークはオペレーティング システムから分離されており、OS オブジェクト (ウィンドウ ハンドル) を使用しません。つまり、ラスター イメージまたは OpenGL ウィンドウで操作し、ディスパッチ/解釈する必要がある OS からマウス/キーボード イベントを受け取ります。
- 移動/最小化/最大化、前面への移動が可能な複数のウィンドウがあります。
- ライブラリを使用して、このライブラリを使用して任意の長方形のウィンドウを再実装できるはずです (アニメーション効果が無効になっている Win98 GUI を考えてください)。
- html ページを表示する必要はありません。
- 角を切って、ms ペイントでビットマップを作成し、それを画面にブリットして、「これはウィンドウです」と言うことができません。コンポーネントにはジオメトリがあり、構成可能な色があり、サイズを変更したり、ウィンドウのさまざまな側面に「固定」したり、相互にリンクしたり、相互のサイズやジオメトリに影響を与えたりできます (Qt 4 レイアウト システムを考えてください)。
- プログラマーのスキル - 平均以上、少なくとも 3 年以上の C++ 経験。
基本的にWindowsのgdiを使わない「Windowsデスクトップ」。
私はそのようなものをゼロから開発する人のために働いているので質問しています (彼らのニーズは非常にまれであり、私が知っている既存の GUI フレームワークは彼らに一致するものはありません)。私の「士気」に悪影響を及ぼします。
前の人々はこのプロジェクトで 3 年間を無駄にし (彼らは Delphi で書きました)、それを完了できなかったので、担当者はそれを廃棄して最初からやり直すことにしました。プロジェクトは従来の gui とは大きく異なりますが、複雑さは多少同じである必要があります。
したがって、比較のために、別のプログラマーからの大まかな見積もり (議論または実務経験に基づく) が必要です。
私の見積もりでは、約 1 年以上かかると思いますが、それが長すぎるかどうかを知りたいです。