2009-07-09 10 views
2

歴史的な理由と開発のスピードアップのために、WinFormsのために高められたエンタープライズアプリケーションを開発/保守しています。将来のWeb開発でWinFormsの考え方を開発するためのヒント

私たちは遅かれ早かれ(遅かれ早かれ早く)アプリケーションがWebベースである必要があると考えています。

「ウェブへの」動きを考える。私たちは考慮すべき最も重要なことは何ですか? MVPのパレード(または他のもの)のような何かが、あなたが使用しようとしているプラ​​ットフォーム/フレームワークの種類を今決定します...

winformsからwebへの移行経験はありますか?世話をするための提案はありますか?

嘆願:私たちのシナリオでは、アプリケーションはWebベースであるといいですが、私たちは現実的です。私は、すべてのアプリケーションがWebベースでなければならないわけではないことに同意します(これがWinFormsで開発した主な理由です)。しかし、要件が変更されることがあります。このシナリオでは、そのアプリケーションをSaaSとして提供したいと考えています。

答えて

4

主なことは、ユーザーインターフェイスを他のものと完全に分離することです。これを済ませたら、アプリケーションを移植するためにアプリケーションを書き直すことはありません。上にWeb UIを作成するだけです。

1

NESBAWA(すべてがWebアプリケーションである必要はありません)。

+2

SIGTMWA(時にはWebアプリケーションに移行するのに良いことです)。 – FerranB

0

ジョンが正しいです。 しかし、「空のクライアント」のアプローチについて聞いたことがありますか?これは、プレーンブラウザでWebアプリケーションとしても実行できる.NET WinFormsアプリケーションを開発するためのかなり新しいアプローチです。そのアプローチにより、WInFormsアプリケーションを開発し、追加の開発や調整を行わずにWeb上に配置することができます。 これを行う1つのフレームワークは

1

私はモノリシックなWinFormsアプリケーションで同様の状況にあった企業で働いていました。その経験から、考慮すべき2つの事項があります。既存のWinForms UIからすべてのデータアクセスロジック(DAL)をデカップリングします。ウェブ開発が始まる前にこのプロセスを開始することができます。

このリファクタリングは、6週間ごとの一連のスプリントで行いました。アプリのいくつかの部分は簡単に変更できました。他の部分は、WinFormのコードの背後にあるDAL、インラインSQL、およびUIコードを相互に入れ替える完全に地獄のスパゲッティコードで作成されました。

この分割が完了したら、2つの異なるUIをサポートする方が簡単です。

2] ASP.Net MVCとターゲットWebフォームを無視します。 WebFormsは、従来のWinForms UIコード(イベント駆動型、コンポーネントベース)を作成する経験に近いWebアプリケーションを作成するように設計されています。

あなたはページのライフサイクルを理解する必要があります。多くの新規参入者を巻き込む傾向のある動的に生成されるコントロールについてはいくつかの概念がありますが、それ以外の場合は、WinForms開発者のチームがWeb 。 MVCは現在、Webサークルでは非常に人気がありますが、懸念事項をよりよく分けることができます(勤勉で強力な設計リーダーシップを持っているWebFormsでも同様の結果が得られますが)。 MVCでは、HTTPリクエスト/レスポンスサイクルのメタルに近づいて作業しています。 WebFormsは、あなたのためにその多くを抽象化します。

あなたの努力の中で最高の運勢!

関連する問題