2008-09-16 9 views
6

私はC#/ WinForms(my little app)で書いたアプリを持っています。クロスプラットフォームにするために、私はAdobe AIRでそれをやり直すことを考えています。クロスプラットフォームアプリケーションとしてWinFormsに有利な議論はありますか? Winforms(例えば、Monoなど)のクロスプラットフォームの未来はありますか?クロスプラットフォームUI開発のための提案?C#/ Winformアプリケーションをクロスプラットフォームにする - AIR、Monoなどを使用する必要がありますか?

クロスプラットフォームとは、現在、Mac OSX、Windows、Linuxを指します。

この質問はasked again and answered with better successでした。

+0

私のクリスタルボールを見てみましょう... – GEOCHET

+0

クリスタルボールはいいですが、事実に基づく投機も素晴らしいです。 –

答えて

5

私はAIRで多くの時間を過ごしたない、私の個人的な意見は、それがデスクトップにWebアプリケーションをもたらすための最善であるということであるとするシェルを提供アドビのAIRでそれをやり直すの

を考えていますデスクトップ上で既存のflash/flexプロジェクトを実行してください。

Btw、あなたがActionScriptを知らないのならば、私はその細部、癖などを意味していますが、それはグーグル・グーグル・レスポンスの時間を考慮に入れることを忘れないでください。

クロスプラットフォームアプリケーションとしてWinFormsに有利な引数はありますか? Winforms(例えば、Monoなど)にクロスプラットフォームの未来がありますか?

何が起こるかを予測することは常に難しいですが、少なくともWin、Mac、LinuxでMono Winformsを使用するプロジェクト(Plastic SCM)が少なくとも1つあるので、確かに実行可能です。しかし、彼らは、コントロールの大半を最初から構築し(そしてオープンソースとしてリリースしたいと主張していますが、それがいつ、どこかにあるとは思っていません)、物事を "きれいに"見せるためには、 。

私はWindows以外のプラットフォームでWinformsでプレイしましたが、残念ながら、(特にMacでは)正確に "成熟"していません。あなたが箱から出るものは、あなたのニーズに十分であるかもしれないし、そうでないかもしれません。

デスクトップアプリケーションがクロスプラットフォームソリューションを提供する最良の方法ではないと判断した場合は、常にC#で書かれたビジネスロジックを使用して、ASP.NETで本格的なWebアプリケーションを作成するか、Silverlight、他にも多くのオプションがC#に存在します。

+0

ありがとうございました。 ell。私は、AIRが「Webアプリケーションをデスクトップに持っていくのに最適です」と人々が考えているのは分かりません。 AIRアプリケーションには特別な制限はありますか?悲しいことだが間違いなく、Windows以外のWinFormsに関するあなたの結論。はい、再:シルバーライト。答えをありがとう。 –

+1

数ヶ月後:はいAIRに重大な制限があります。 1つは、任意のコードを実行することはできませんし、大きなXMLを簡単に操作することもできません。それは2つ... –

3

WinFormsはMonoによって完全にサポートされているため、クロスプラットフォームです。

1

確かに、C#で信頼性高くクロスプラットフォームを実現する唯一の方法は、Microsoft Silverlightですが、実際にはWinFormsやブラウザベースではありません。それ以外は、イエスモノはチャンスです。

+0

あなたはモノラルをあまりにも軽視します。 – GEOCHET

+0

そして、皮肉なことに月明かり、モノに頼っていてまだ完成していないから。クロスプラットフォーム== WindowsとMacの場合は、おそらくSilverlightです。興味深い! –

+0

私はそれについて考えたことはありませんでしたが、あなたは正しいのですが... Silverlightは決してうまく採用されないかもしれませんが、今のところAdobe AIRより悪くはないでしょう。 –

0

WinFormsの未来があるとは思えません。 MSFTの世界(Win32の周りには非常に薄いラッパー)でもstop-gapソリューションであったようです。そして、実質的には変化は、私はJavaや空気を使用することになり、両方の.NET 3.0および3.5

</speculation> 

でのSystem.Windows.Formsに行われているように見えます。

+1

なぜこれが投票されたのですか? .net 3.0と3.5でWinformsに変更が加えられましたか? –

6

Flex/AIR/Flashのアクションスクリプトの経験があれば、Adobe AIRの開発環境とコーディング/デバッグツールセットは、現時点ではVisual Studioと.NET SDKのはるかに劣っています。しかし、UIツールセットは優れています。

のように、既にC#コードがある場合、ActionScriptに移植するには、ActionScriptの考え方やプログラミング方法が異なるため、再設計が必要な場合があります。 int float doubleなどの代わりにNumberなどがあり、デバッグツールはVS IMOに比べて静かです。

そして、Mono's GtkSharpはまともなプラットフォームではないと聞きました。

しかし、コーディング/デバッグツールの問題が気にならない場合、AIRは素晴らしいプラットフォームです。私は、AdobeがFlashの体験をそれに統合する方法が好きです。 FlashムービークリップのボタンをクリックしてAIRアプリケーションのインストールを開始することができます。

+0

申し訳ありませんが、私は質問を変えました。私はMac、PC、Linuxのために何かが必要です。同時に、私はUIコンポーネントやあらゆる種類の深刻なUI作業をビルドすることは、.Netではなく、純粋なFlashをオプションとして、Flexで20倍簡単であることを発見しました。しかしそれは意見です。 –

+0

ああ、よく言います。しかし、私の要点は、AIRへのポートがMonoに移植するのと比較して、_big_書き換えられるように、あなたがC#コードを処理しているということでした。 – chakrit

+0

ツールについては、私はデバッグ/コーディングツールを意味します。 Flashプラットフォームは優れたUIツールを持っていることは間違いありません:-)私の答えを今編集しています – chakrit

1

.NET Frameworkを使用したい場合、Microsoft Silverlightは良い(唯一の)選択肢です。ブラウザはシェルとしてうまく機能しますが、独自のアプリケーションシェルを作成することもできます。たとえば、Scott Handelman mentionsはSilverlightで書かれたNY Times ReaderとMacのCocoaでホストされています。

+0

私の無知を許しても、Silverlightは本当のC#DLLを実行していますか? –

3

なぜあなたはAirと一緒に行くのですか?

GTK#を使用すると、クロスプラットフォームフォームエンジンがあり、C#コードを保持できます。

+0

申し訳ありませんが、私はこの回答を9月に見落としました。今、私はこのパラメータを使ってメソッドsigを作成しますか?私は3日間でMonoのWinformsへの移植を行った、それは私にとって90%働いています...今は残りのものを買っています... GTK#はそれをするかもしれません...もう一度ありがとう... –

+0

GTK#rocks!man –

0

あなたが書いたビジネスロジックコードがクロスプラットフォーム(すなわち、パス上のバックスラッシュを使用することはWindows上でしか動作しません - フォワードスラッシュはすべてのOSで動作します)であることを確認する限り、Monoはメジャー変更されていないWinFormsプログラムを実行する際の問題。グラフィカルな不具合がないかどうかテストしてください。

+0

System.IO.Path.Combineでパスを構築する場合は、自動的に基礎となるO/Sに適した値が使用されます。 – TheoJones

0

私は先週同様の質問をしました。私はMonoを使い続けていて、ILにコンパイルしたアプリケーションを実行してSuSE Linux(私は通常KDEを走らせます)やウィンドウを走らせるのに問題はありませんでしたが、まだテストしていませんそれで。私はすぐに、おそらく2週間後になるでしょう。 Monoのすべての開発は、複数のプラットフォーム上で動作するアプリケーションを作成する上で非常に優れています。

+0

どのように動作するアプリですか?コマンドラインアプリケーションとして –

関連する問題