.NET MVC или просто старый ASP.NET? - PullRequest
7 голосов
/ 26 апреля 2009

Это крик, так как я провел последние несколько дней, изучая .NET, и этот процесс немного смутил меня, а не просветил. Как справочная информация, я знаком с PHP (даже использовал CakePHP для создания целого приложения довольно легко) и Rails.

Мне интересно, стоит ли мне изучать ASP.NET или стоит заняться изучением ASP.NET MVC? В то время как я просматривал несколько учебников по ASP.NET, основы казались довольно простыми, но почему-то, когда каждый пройденный пример вставляет операторы SQL прямо в пример без DAL, я просто немного волнуюсь.

Итак, в случае, если я просто не проводил никаких хороших исследований, есть ли какие-нибудь книги / сайты, которые помогут в этом? Или мне просто пойти и изучить .NET MVC?

Если вам интересно, почему я просто не придерживаюсь PHP или Rails, я только что узнал, что мне, возможно, просто нужно знать немного .NET для безопасности моей работы.

Ответы [ 6 ]

13 голосов
/ 26 апреля 2009

ASP .net MVC будет ближе к вашему рельсовому опыту.

ASP .net Web Forms (то, что обычно называется ASP.net) явно отличается, но если вы учитесь ради поиска работы, это то, что будет платить долго (есть много и много сайтов как внутренних, так и общедоступных), построенных на веб-формах ASP .net. Есть некоторые новые сайты, использующие ASP.net MVC, но это долгий путь.

Итак, это зависит от ваших целей. Если вам просто нужно знать "немного .net", переходите на MVC, потому что эти концепции вам известны. Если вам нужно знать ".net web stack", то большинство людей будут использовать веб-формы, а не MVC ...

И да, сэмплы в мире Microsoft, как правило, находятся на «более легкой стороне». Практически невозможно найти демоверсии, которые не имеют ощущения «волоча руки», и это НАСТОЯЩАЯ проблема.

5 голосов
/ 26 апреля 2009

Мой коллега изложил свой опыт использования ASP.NET MVC в реальном проекте на http://www.mindscape.co.nz/staff/jeremy/index.php/2009/02/loving-aspnet-mvc/ и свои сравнения с простым старым ASP.NET. Его вывод звучит так: «Я считаю, что MVC - это путь к созданию веб-приложений на платформе .NET».

Он также написал несколько подробных пошаговых руководств, показывающих, как использовать ASP.NET MVC с ORM, что может помочь вам решить проблему «постановки SQL в пример без DAL» (он также охватывает такие вещи, как модульное тестирование). См. http://www.mindscape.co.nz/staff/jeremy/index.php/2009/03/aspnet-mvc-part1/, http://www.mindscape.co.nz/staff/jeremy/index.php/2009/03/aspnet-mvc-part2/, http://www.mindscape.co.nz/staff/jeremy/index.php/2009/03/aspnet-mvc-part3/ и http://www.mindscape.co.nz/staff/jeremy/index.php/2009/03/aspnet-mvc-part4/. Отказ от ответственности: они написаны в терминах нашего коммерческого ORM, но я надеюсь, что будет легко перевести на ваш предпочтительный технология доступа к данным.

5 голосов
/ 26 апреля 2009

Я бы выбрал ASP.Net MVC вместо ASP.Net WebForms по одной причине: тестирование. MVC был спроектирован с нуля, чтобы быть подключаемой и тестируемой системой. Тестирование является или, по крайней мере, должно быть неотъемлемой частью вашего цикла разработки. Тестирование MVC на несколько порядков проще, чем WebForms, благодаря возможности MOCK или замены частей основного API. Делать эквивалент в WebForms невозможно или очень громоздко.

5 голосов
/ 26 апреля 2009

Я думаю, что примеры без DAL, которые вы видите, написаны таким образом для простоты. Серьезные приложения ASP.Net всегда используют такие слои, как BLL и DAL. Разделение DAL просто опущено в простых примерах - это приводит к неудачной неверной интерпретации примеров людьми, которые не знают лучше.

Я считаю, что MVC сложнее программировать, и что его лучше всего использовать только тогда, когда есть конкретная причина его использования - оптимизация SEO, разработка TDD. Он игнорирует многие из сложных функциональных возможностей, доступных в ASP.Net WebForms, и часто сравнивается с классическим ASP. И я не верю, что MVC получил широкое распространение во многих корпоративных средах, поэтому, если вы хотите изучить подход, используемый всеми, придерживайтесь базового ASP.Net и сохраните MVC для дальнейшего использования.

Как начинающий .Net с большим опытом работы с другими языками программирования, я бы рекомендовал вам продолжить изучение ASP.Net с использованием веб-форм. Если вы ищете серьезный пример DAL, я очень рекомендую это длинное руководство на веб-сайте ASP.Net. Он имеет все архитектурные усовершенствования, которые вы ищете, и может оказаться полезным для изучения того, как использовать множество элементов управления отображением данных.

4 голосов
/ 26 апреля 2009

Роб Конери написал книгу на ASP.MVC, так что вы можете найти его предвзятым. Я нахожу его аргументы неотразимыми.

2 голосов
/ 26 апреля 2009

Недавно прочитал Архитектура и дизайн приложений ASP.NET 3.5 - это был разумный взгляд на многие различные аспекты проектирования в ASP.NET, включая Уровни доступа к данным , N-Tier архитектура , шаблоны проектирования и затронуты MVC , среди других тем. Это был хороший обзор лучших практик ASP.NET, если вы ищете книгу.

Я бы согласился с другими, что лучше всего было бы взглянуть прямо на ASP.NET MVC, поскольку ваши текущие навыки будут лучше соответствовать этой структуре. Я бы рекомендовал взглянуть на Professional ASP.NET MVC 1.0 .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...