2009-12-11 8 views
16

これはちょっと狂ったことですが、C#はWindowsの言語ですが、私はASP.NET MVCに興味があるのでC#の学習を始めたいと思います。私は日々ウェブ開発者として働き、私のオフィスは* nixマシンで完全に稼動しています。開発者と他のすべてのスタッフはMac OS Xを使用しており、当社のサーバーはすべてLinuxのいくつかのバリエーションです。Mac OS XでASP.NET MVCを学ぶ

正直言って、私はPHP、Python、Rubyと違うものを試してみたいです。このキャッチは、私が愛しているMac OS Xをあきらめたくないということです。私はMonoを少し見ましたが、私が探しているもののように思えます。残念ながら、MonoDevelopはMac OS X上の無駄な点まで非常に遅いです(私が間違ったことをしていない限り、それは完全に妥当です)。

私の質問はこの点です。Mac OS XでC#アプリケーションをコーディングしてコンパイルする最良の方法は何ですか(コードを実行することはそれほど問題ではありません。私のASP.NET MVCアプリケーションを実行してください。Mac OS Xでアプリケーションを実行するつもりはありません。)

+0

実行中のMonoDevelopのバージョンは?あなたは昨日リリースされた最新の2.2 RCを試しましたか? –

+0

今すぐダウンロードしてください。リリースを読んでいる間、彼らは私が経験していた遅さの問題を修正したかもしれないように見えるノート:https://bugzilla.novell.com/show_bug.cgi?id=543956 – macinjosh

答えて

21

を参照してくださいプラットフォームの最大の強みは、ツールとの統合です。それはすべてモノで実行することは困難だと言った。 Monoは優れた展開プラットフォームです。しかし、あなたがしたい場合 asp.net MVCを学ぶことは、仮想Windows環境をセットアップし、無料のビジュアルWeb開発者ビジュアルスタジオ:http://www.microsoft.com/express/vwd/を得ることです。

もう1つの理由は、プラットフォームを習得しようとしている場合、ほとんどのリソースはVisual Studioのいくつかの変種を使用するということです。私はフレームワークを学び、同時に学ぶことが難しく、同時にプラットフォームの違いに苦労しなければならないことがわかります。

私は数年前からC#開発を行ってきた熱心なOS Xユーザーとして、asp.net mvcでいくつかの小さなプロジェクトを行ってきました。

+1

私はHackintosh for .NET開発でWindows 7 VMを実行し、これが最善のアプローチであると考えています。 –

+3

@ジョン:ハッキントッシュの場合、デュアルブートだけではどうですか?私はC#のDEVたとき – BFree

+1

は、Windowsが私のネイティブOSだったと私はまだあるため、構成のスナップショットとロールバックの利点のVMで開発されました。 –

6

Macで仮想Windowsマシンを実行するとどうなりますか?

は、C#/ Windowsの/ ASP.Net開発者としての私自身の経験ではhttp://www.parallels.com/eu/products/desktop/

+0

私はそれについて考えてきたし、それが現実的な選択肢です、私は個人的にはMac OS Xを好んでおり、ネイティブのソリューションが存在することを望んでいました。私はすでにVMWare Fusionを使用してWindows XPを実行しています。私はMac OS Xネイティブソリューションを望んでいました。 – macinjosh

+4

モノラルネイティブでC#を学ぶことができますが、ASP.NETはVisual Studioを使用して開発するのが最適です。あなたは実際には何かに靴ひもをつけようとしているシステムと戦っているだろう(Windows上でiPhoneアプリを作ろうとするような;あなたはそれをすることができるが、何が苦しいか)。 –

3

+1~Min's answer

マイクロソフトが提供する(無料で購入した)ツールは素晴らしいものであり、非常によく統合されています。 私がVisual Studioを使用するほど、私はもっと好きです。

Windows(bootcampまたはvmwareまたはw/e)でASP.NET/C#の開発を行うことを強くお勧めします。

コードを作成するときにOSを切り替えることは、今後遭遇する可能性のある互換性の問題に比べると、安い価格です。

1

.netでの開発は、非常にIDE指向です。もちろん、普通のテキストエディタですべてを行うことはできますが、バックエンドサーバーコードのみを記述しない限り、難しくなります。多分モノベースの偉大なIDEがあるかもしれませんが、とにかくいつもIDEを使ってMacOSを使うのが好きなのはわかりません。

仮想化されたWindowsまたはBootCampを使用していることは間違いありません。

+1

-1を「開発中の.netは非常にIDE指向です」 – asyncwait

+0

ドラッグアンドドロップツールボックス、自動DBリンケージコード生成、自動コードビハインドファイル生成を使用したことはありませんか?手でそれをすることは楽しいことではありません。 –

+0

@John私はこの回答を修正し、 "BaseCamp"を "Boot Camp"に変更しようとしました。しかし、私の編集は拒否されたので、Boot Campと言っても間違いないかもしれません。仮想化への –

2

私はvirtualisation引数に追加します。たとえば、VMWare FusionでWindowsインストールを行う場合は、一貫性モードで実行できます。このモードでは、OS Xで知っているすべてのアプリやシステムを手に入れ、Visual StudioをネイティブOS Xアプリと同じように表示させることができます。しかし、VSはWindows環境を「認識」しているため、Windows上での開発に適しています。

もちろん、2つのOSがリソースを競合するというオーバーヘッドがありますが、これは問題ではありません(ほとんどの場合、私にとってはそうではありません。謙虚のMacBook)

+0

+1が、私は勝つ/ * NIX/OSXが等しくよくデスクトップおよび単一のデスクトップ上のシステム動作のミックスとマッチが乱雑で使用することができます。コヒーレンス・モードは、私にとっては一貫しています(そして、それはまだまだ不思議です)。 –

1

私は、仮想WindowsマシンとVSエクスプレスに同意が、特にASP.NET MVCをターゲットとする場合Mono Developは、悪いことではありません。

-1

お使いのMac(KDE)上のLinuxデスクトップをインストールするとVisual StudioのExpressをインストールするには、ワイン(linuxのウィンドウのエミュレータアプリ)を使用することができます。 KDEデスクトップはMac上で動作します。これで、マシンに完全なWindows OSをインストールする必要はありません。誰もがこの質問に終わる場合

+1

実際にこれを試しましたか?ワインはすべてをエミュレートしないかもしれません。 – Andy