2009-04-22 11 views
11

「VS」の1つを指す前に、以下のような質問...エンタープライズソリューションを構築する際に、ASP.NET MVCの時代遅れに飛びつくのは安全ですか?

...私は比較のために見ていないよと述べている聞かせください。

私はのための答えが含ま必要私の懸念のいくつか:

  1. が狂ったUIを行うための学習曲線(例えばオンラインBOMツリーを構築するためのUIを持つ)急ですか?多くの人が質問を投稿すると、いくつかのUIの要件やその他の問題で私が心配している問題があるようです。技術は、これらのタイプの要件を処理するのに十分成熟していますか?
  2. 非常によく開発されたコミュニティはありますか?オンライン文献はどのように入手できますか?あなたはWebFormsのための文学のトンを得ることができます。
  3. これを開発する時間は、従来のエンタープライズWebFormsサイトを構築するのに匹敵するか、それよりも少ないでしょうか?
  4. ASP.NET MVCに精通するためにWebFormsで開発者のチーム全体を快適にしてもらうにはどれくらい時間がかかりますか?

私は、StackOverflowはGoogleのような製品で、ASP.NET MVCはそれには最適だと思います。しかし私はにあなたの会社のアプリのソフトウェアを開発し続けています。

alt text http://stuffthathappens.com/blog/wp-content/uploads/2008/03/simplicity.png

何かを行うことができないか、それがハッキングする必要があるのであれば思い切って取って、後で非常に高価な証明できます。急落した人から聞いてほしい。

ありがとうございました。

+3

1 :-) ...これが役に立てば幸い! :P –

+1

+1、上記のように:) – twk

答えて

4

約3ヶ月前、私はエンタープライズウェブアプリケーション(実際には一連の小さなウェブアプリケーション)を開発する必要があると言われましたが、私が望む技術を選択することができました。

私はVS/C#/ .Netに最も慣れているので、ジレンマはASP.NET WebFormsまたはASP.NET MVC2を選択するかどうかでした - あなたとは異なり、私の唯一の背景はWindowsフォーム(WinForms)と小さなWPF。だから私はWebFormsとMVCの両方を研究し(そして試してみなければならなかった)

私のアプリはGoogleやアップルのようなものではなく、何千ものボタンやボックスなどの標準的な会社のアプリであることに気がつきました.WebFormsは展開が最も速いようでしたが、テストし、長期的に維持するのは難しいです。 MVCははるかに急な学習曲線を持つように見えましたが、一度確立されると、テストとメンテナンスは簡単になります。

私は1週間だけWebフォームを操作したので、実際にコメントすることはできません。しかし、MVCは間違いなく私が期待していたすべてです。

はい、急な学習曲線です。私に新しかったコンセプト:

  • のModel-View-Controller(MVC)懸念の
  • 分離(SoC)の
  • モデルバインディング
  • ユニットテストとテスト駆動設計(TDD)
  • 依存性注入(DI)私を助けた

本をからかっとスタブほとんどは以下の通りであった。

私も私のHTMLをブラッシュアップしなければならなかった、CSS 、およびJavascript。

全体としては、初期段階でかなりの量のランプアップ作業があるようですが、既存のアプリケーションを維持して拡張するのはかなり苦労しています。私が変更を求められたときはいつでも、それはかなり簡単で、通常、時間通りに、あるいは時には時よりも先に配信することができました。

理想的な世界では、MVCアプリケーションの作成は2人で行われます。 UIとビュー(HTML、CSS、Javascript)を書く二人目のコアコードを書いた人。あなた自身ですべてを行うことは可能ですが、 (これは私が今やっていることです...)

私はエンタープライズでいくつかのヒッチを展開しています。内部的には、私の会社はWindows Server 2003とIIS6を実行しています。残念ながら、私たちはVirtual Pathingを使用している場合、IIS6上に適切に展開するアプリケーションを取得することができませんでした。 (CSSファイルへの参照はすべて壊れています)MVCのデプロイメントを計画しているなら、IIS7以上の使用をお勧めします。 MVCはIIS6上で動作すると思われますが、IT部門がどのように動作させるかを把握しておく必要があります。

編集:私はちょうどあなたの質問に直接答えなかったことに気付きました。ここに行く:私はそれに取り組んできた

  1. 私の個人的な経験は、はい、学習曲線が良いモデルとUIを構築するための急勾配である、ことを、言ったが、私は実際にウェブ開発者ではありませんよハンディキャップ。良いニュースは、MVC技術はかなり成熟しているということです。

  2. はい、コミュニティはかなり成長しています。 StackOverflowだけでなく、MSのASP.NET MVCサブフォーラムから多くの良い答えを得るでしょう。

  3. WebFormsのコーディングは個人的な経験はありませんが、私はたくさんのWinFormsアプリケーションをコーディングしています。このMVCアプリケーションを構築するのに3倍の時間がかかります。初期の投資はクマですが、定期的なメンテナンスと改善は、特にアプリが成長したときに、もっと早くなるようです...プログラマーのチームがいるようだから、おそらく分裂する可能性があるので、学習/ワークロード

  4. WebFormsの以前の経験はありませんでしたが、私は、ASP.NET MVCを学んでいたときに、以前のASPがなかったために何が起こっていたのか苦労していました。 NET背景。(例:メンバーシップと役割のプロバイダー - 私は自分自身を最近コードしなければなりませんでしたが、ボーイは面白かったです...)プラス面では、「古いことをやっている」(別名WebForms)どちらか。あなたがPostBack/CodeBehindに魅了されているチームを持っているなら、最初はMVCがひどく不思議に思えるかもしれません。しかし、あなたのチームはMVCがもたらす利点を見て、それを完全に受け入れることを願っています。

ああ、MVCとWebFormsを混在させることができます。それは全か無かという命題ではない。私があなたの靴の中にいたのであれば、私はできるだけMVCを採用しようとしていましたが、WebFormsを使うのは明らかに理にかなっています。

[OK]を、私は場合にのみエリック・バークの漫画のために、

1

あなたが知っているように、人々のことをすべて知っているので、技術第2です。共存できるため、会社のアプリケーションの新しい機能を構築するだけで、すべての質問に自分で答えることができます。 それは新しいものなので、慣れている時間よりも時間がかかりますが、そのすべての楽しみを掴んですぐに飛び込んで、あなたの人やアプリのためにこれらの質問に答えることができます。

4

私はあなたの質問の半分に答えることができます。私はちょうどWebFormsの背景からMVCに入った。学習曲線は(明らかに)ありますが、それほど急峻ではありません。私は少しの努力で移行を行うことができました。私はすべてが新鮮な空気の息吹であることがわかります。

しかし、私はフロントエンドの技術(HTML & Javascript)でかなり能力があり、WebFormsとMicrosoft ajaxフレームワークが生成するHTMLが嫌いです。あなたやあなたのチームがこのような人なら、あなたはそれを愛するでしょう。しかし、あなたがイベント階層の深い知識を誇りに思っている場合や、UpdatePanelsのシンプルさが気に入っている場合は、おそらく変更に対抗するでしょう。

ドキュメンテーションは、とにかくうまくいくのに十分です。ここにあなたの欲求を満たしてくれるためにいくつかの動画があります: http://videos.visitmix.com/MIX09/T49F http://videos.visitmix.com/MIX09/T50F http://videos.visitmix.com/MIX09/T44F

ここにあなたのドキュメンテーションホームがあります: http://www.asp.net/mvc/

少し詳細情報については、asp.net MVC 1.0本の最初の章では、オンラインで、無料でダウンロードできます。 http://weblogs.asp.net/scottgu/archive/2009/03/10/free-asp-net-mvc-ebook-tutorial.aspx

をそして、章のための完全なコードはここで見つけることができます:ここScottGuさんのブログを参照してください http://www.codeplex.com/nerddinner

最後に、開発時間の面で、私はそれが使用してアプリケーションを開発するために少し時間がかかるかもしれないと思いますMVC(私はこれについての証拠はないが)をサポートし、維持し、バグフィクスを修正し、強化するのにはかなりの時間がかかるだろうと思う。だから、少し前払いの投資で、私はあなたがその努力を補う以上のものだと思う。

とにかく、私が言ったように、これらは私の予備的な所見です。私はまだ本当に毛深い問題にぶつかりません。

+0

MIXリンクをありがとう、それらを見ていない。 – brism

0

あなたの質問は、あなたの懸念事項すべてに焦点を当てていて、どんな利益にも関心がないことに興味があります。あなたはなぜ「なぜ」の質問をしましたか? WebFormsでうまくいくと感じたら、なぜMVCに変更しますか?リスクを正当化するMVCには何がありますか?あなたがプロジェクトのために払っていたなら、あなたは何をしますか?

私はMVCと比べてMVCに挑戦しているわけではありませんが、建築家として、なぜ非常によく知られている量から離れてMVCに向かうことにしたのかという疑問に非常に強く戻る必要があります。比較的新しいもの。そうすることには多くの理由があると思いますが、それは私の仕事ではありません。 :)

関連する問題