アプリケーションのフロントエンドを構築するために利用できる技術やツールは他にもたくさんあります。
見栄えがよく効率的な GUI を構築できる、より優れた GUI を構築できる、利用可能な最高のテクノロジ/ツール/プラットフォームはどれですか?
「より良い」の定義には、効率、使いやすさ、より優れたコンテンツ制御メカニズム、ナビゲーションなどの要素が含まれます。
アプリケーションのフロントエンドを構築するために利用できる技術やツールは他にもたくさんあります。
見栄えがよく効率的な GUI を構築できる、より優れた GUI を構築できる、利用可能な最高のテクノロジ/ツール/プラットフォームはどれですか?
「より良い」の定義には、効率、使いやすさ、より優れたコンテンツ制御メカニズム、ナビゲーションなどの要素が含まれます。
これは、どの GUI ツールキットを使用すべきかという問題であることは承知していますが、ユーザー フレンドリーな UI を作成するための最初のテクノロジはペンと紙です。いくつかのモックアップをスケッチします。画用紙にボタンやメニューを描いて切り抜き、のりで貼り合わせます。次に、約半ダースの人々でモックアップを試してください。優れた UI の条件はすぐにわかります。
UI の見栄えや、最新のおしゃれな効果を使用しているかどうかは問題ではありません。ユーザーがその使用方法を理解できない場合、別の場所に移動します。1 行のコードを記述する前に、ターゲット ユーザーにとって何が効果的かを理解する必要があります。
Don't Make Me Thinkを読んで、モックアップの作成方法とユーザー テストの方法を学習してください。
IP アドレスを追跡している場合は、間違いなく Visual Basic で GUI インターフェイスを作成する必要があります。
デスクトップ、モバイル、Windows、Linux、データベース、OpenGL:NokiaQt。Pythonを使用-PyQtの開発プロセスは最短で簡単です。必要なすべてのpython&qtライブラリとモジュールを含むアプリケーションは約30MBで、InnoSetupのインストールは8MBで、Windows2000以降で動作します。Python2.6.x以降のPython2.5.xベースのアプリケーションはWindows95からWindows7で実行されます。
Visual Studio 2005/2008/2010 Studio で .NET フレームワークを使用します。他の環境で開発したことはありませんが、この IDE / フレームワークで見栄えの良いアプリを作成できました。
「最良」は、評価関数が何であるかによって異なります。
開発を容易にし、高品質の UI を実現するために、非 Web ベースのアプリでは、C#/VB やその他の .NET 言語および Windows ベースのアプリ環境に勝るものはありません。UI の品質に応じて、MPF を使用すると柔軟性と制御が向上しますが、Windows フォームを使用すると開発が容易になります。
Windows Presentation Foundation をしばらく使用してきたので、強くお勧めします。かなりの学習曲線があり、正直に言うと、MSFT には、既定では含まれていなかったいくつかのコントロール (データグリッドが最大のもの) が含まれているはずです (ただし、.NET 4.0 には含まれる予定です)。WPF と XAML が優れているのは、あらゆるものを構築できる基盤を提供することです。任意のコントロールの任意の部分をスタイルし、独自の複合コントロールをゼロから作成できます。バインドと値のコンバーターについては多くの検討が行われました。XAML の宣言型の性質に慣れると、元に戻したくなくなるでしょう。私が働いている会社は数年前からそれを使用しており、私たちが開発していた GUI (主に winforms と asp.net) と現在開発している GUI の違いは、外観と肌触りと機能性。
場合によります。
ハンドヘルド、PC、Mac のどのデバイスで GUI を使用しますか? Windows、Linux、Web のどのプラットフォームですか? 経理、メールクライアント、Webアプリ、どのようなアプリになるのでしょうか?アプリケーションを使用するのはどのようなユーザーですか (子供向けの GUI と大人向けの GUI は異なる場合があります)。
質問への回答を作成する前に、これらすべてのことを考慮に入れる必要があります。
GUI の開発にはいくつかの選択肢があります。まず、クロス プラットフォームが問題になる場合は、Java または Python の使用を検討してください。Adobe AIR を使用して、Flex で GUI を開発することもできます。
製品を Windows のみのユーザーに向ける場合は、非常に豊富なコントロールとサンプルを備えた .NET WPF が最適なソリューションです。クロス プラットフォームの互換性のために mono で .NET を使用することもできますが、WPF は現在サポートされていません。
あなたが列挙したすべての属性 (効率、使いやすさなど) は、優れたツールキットではなく、優れた設計の属性だと思います。これらの目標を達成するために、ほぼすべてのツールキットを使用できます。目の保養や派手なマルチメディアなどについて質問している場合は、質問が異なる可能性があると思います。他のツールキットよりも優れたツールキットがいくつかあることは間違いありません。
最初にユーザビリティに関心がある場合 (そして、そのように思えます)、デザインに焦点を合わせてから、現在の能力を満たし、デザインを処理できるツールキットを選択してください。たとえば、選択肢を狭める可能性のある 3D 画像が必要な場合。同様に、ビデオを表示する必要がある場合は、選択できるツールキットに影響します。
だから、良いデザインから始めましょう。そこから、ツールキットに必要なもののリスト (リッチ編集コントロール、ビデオ、3D など) を作成します。次に、必要なものを提供するツールキットを探します。
世界最高のツールキットは、貧弱な設計を補うことはできません。
個人的には、Win32、Forms、および WPF を使用した後、Mac/iPhone GUI の開発に進みましたが、Mac/iPhone GUI の柔軟性とビジュアルの高品質が非常に気に入っています。
最も有用な例の 1 つは、NSTable/UITable コントロール (Windows の ListViews など) では、すべてのセルが完全にカスタマイズ可能なビュー (Windows のコントロール) であるという事実です。
ListView では、実際のコントロールではなく詳細のみを提供するため、ビュー内の各セル/アイテムのカスタマイズはほとんどありません。NSTable/UITable は、ボタン、スイッチなど、何でも追加できるテーブルセルを要求します。と画像ビュー。
私にとって、Mac OS GUI の開発は、その点ではるかに柔軟で、より一貫して柔軟性があります。すべてがビューなので、自分のコンテンツを何でもできます。
Silverlight を検討したことがありますか?
インターネット アプリケーションの作成に使用できますが、ブラウザから実行してデスクトップ アプリケーションを作成することもできます。WPF とかなりの重複がありますが、あるものから別のものに交換するときに気づくかもしれない違いがあります。
Expression Blend 3 は非常に優れたビジュアル デザイナーであり、生成されるコードは非常に効率的です。