1

巨大なWindowsデスクトップアプリを開発する必要がある場合、MS(またはMS製品でない場合はその製造元)によってより長くサポートされると思われる言語/テクノロジーを教えてください。

新しいバージョンのWindowsがリリースされたときに実行するために、適応や書き直しを必要とせずに、どの言語/フレームワークでアプリの寿命を延ばすことができますか?

C ++ Win32 API?(MSはそれらを書き換えますか?)

C#.NET?WPF?

Delphi、wxWidgets、Qt、またはその他のクレイジーなもの?

議論のために、質問の他の側面にこだわるのはやめましょう。アプリの寿命を延ばすのは、ここでの質問です。

4

6 に答える 6

2

本当に安全な賭けはありません。主要なものの1つを選んで、最高のものを期待してください.

私の雇用主は、1995 年に開始された 200 万行の Windows アプリを作成しています。その時点で、彼らはそれが大規模で長寿命のコード ベースになることを知っていたので、同じ選択に直面しました。当時、Java は無意味であり、.NET は存在せず、qt と wxwidgets は地平線上の無意味な斑点でした。選択肢は、C++/MFC、Delphi、および VB でした。彼らが Delphi を選んだのは、VB は十分に強力ではないように思われ、C++ は既存の開発者を再教育するには複雑すぎるように思われたからです。

Delphi は以前も今も、これら 3 つの市場シェアで最小のプラットフォームですが、驚くべきことに、Delphi が最良の選択であることが証明されています。VB の世界では、.NET への移行に伴う主要な移植作業は行われていません。同時に、Delphi は、導入された新しい Windows API に対応してきました。重要なのは、C++ よりも高レベルであるため、コードベースが小規模なチームにとって非常に扱いやすいことが証明されていることです。

これはすべて、自分の選択が正しいかどうかわからないということです。主要なプラットフォームの 1 つを選択すると、適切なアップグレード パスが得られる可能性があります。可能性は高いですが、一定ではありません。

于 2009-07-07T06:13:09.667 に答える
0

Win32は、Windowsでの実行に関心があり、レガシーになる時期を考慮している場合は、安全な方法です。これが意味することは、あなたの目的に合うWin32上に構築されたいくつかのライブラリがあるということです。

Windowsは長い間強力な消費者基盤を持っていましたが、Win32から離れようとするにつれて変化が見られることを覚えておいてください。カーネルコードとユーザースペースの実装の同じコアに依存する代わりに、低レベルのコード(Vista、Windows 7)を生成する能力が大幅に低下し、オペレーティングシステムが改善されています。私にとって、これは必ずしも最も賢明な投資ではないかもしれない会社のしるしです。

したがって、WINEのようなプロジェクトは、Microsoftによって放棄された後も、Win32の「無料」バージョンを実装し続ける可能性が高いことを知っておくとよいでしょう。人々がコモドール64またはNESエミュレーターを入手する方法が好きです;)会社がまったく新しい方向性をとるか、競争によって侵食されるか(Linux)。

したがって、今Windowsである必要がある場合、WINE上で正常に実行されると報告されているライブラリ。Windowsに基づかないプラットフォームのアイデアを与えることができれば、無料のオープンソースソフトウェアのメリットを享受できます。ほとんどの場合、Windowsやその他の無数のプラットフォームで実行できるソフトウェア。

Javaについての提案もありますが、それも安全な方法ですが、Javaは特定の人々にとってイライラすることがあります。

Javaアプリの寿命が最も長く、正しくコーディングすると、すべてのプラットフォームで話題になります。

しかし、繰り返しになりますが、あなたをいかなる方向にも連れて行こうとはしません。それはただ物事の風景です:)

于 2009-07-07T05:57:57.280 に答える
0

.netは長い間サポートされると確信しています。

于 2009-07-07T05:58:03.957 に答える
0

.NETの多くはWin32上で実行されます。久しぶりですが、今後もサポートされる可能性があります。

于 2009-07-07T05:52:43.233 に答える
0

絶対的なネイティブ感を与えるJava+SWTを選びます。SWTはどういうわけかJavaの世界でwxWidgetの生まれ変わりだと思います。ただし、別のプラットフォームで実行できます。

于 2009-07-07T05:55:36.380 に答える
0

大規模なアプリケーションを作成している場合は、とにかく何らかの方法でメンテナンスが必要になります。時々、新しいOSをサポートするために変更が必要になります。それを乗り越えてください:)

Microsoftが何かをなくすことはないと思いますが、互換性のない変更を行う場合があります。

私たちはアプリケーションを「クラウド」で実行し、人々にSaaSを提供します。古いものはハードウェアベンダーによってサポートされなくなったため、新しいOS用に変更する必要があります。

于 2009-07-07T06:10:52.510 に答える