Рекомендации для изучения ASP.NET MVC с точки зрения настольного разработчика

Одно из моих Новогодних Разрешений должно наконец изучить некоторую веб-разработку. Я выбрал ASP.NET MVC, поскольку я - сторонник TDD и МОК. Я ищу список тем и возможно порядка изучить их для того, что я должен буду знать, чтобы быть основательным ASP.NET разработчик MVC. Возможно, это смущает, но единственный веб-опыт, который я имею, был страницами HTML, я сделал WYSIWYG-редакторы использования 5 + несколько лет назад, когда я был в колледже.

9
задан 2 revs 6 January 2010 в 14:15
поделиться

7 ответов

Итак, сначала поздравляем с выбором ASP.NET MVC. Осмелюсь сказать, что с ASP.NET MVC легче работать, чем с WebForms. WebForms, как правило, использует "черный ящик" для работы с Вебом и относится к нему больше как к классической разработке WinForms. Вебформы, вероятно, будут немного более удобной технологией для Вас (исходящей от разработки WinForms), но MVC оставит Вам лучшее понимание того, как работает Веб , что невероятно важно.

Прежде чем вы погрузитесь в ASP.NET MVC, возможно, вам захочется почистить основы HTTP, потому что важно понимать, когда вы начинаете писать методы действий, которые реагируют по-разному на основе запрашиваемых глаголов. Также приятно знать, что такое заголовки HTTP и как их можно использовать в вашем приложении. В любом случае, вот мой список для вас:

Важные люди и их блоги

  • Фил Хаак: Он ведущий разработчик на ASP.NET MVC, и в его блоге есть тонны изящных хитростей и советов по его использованию.
  • Скотт Хэнселман: Он работал с командой на NerdDinner и время от времени в его блоге есть несколько аккуратных MVC вещей.
  • Роб Конери : Роб - заядлый промоутер ASP.NET MVC и активный участник с открытым исходным кодом. У него есть тонны кода на github, которые вы можете просмотреть в поисках вдохновения/путеводителя, а также тонны скринкастов на его блоге и на его деловом сайте, TekPub. Я рекомендую покупать его скринкасты в TekPub, потому что он просто потрясающий ведущий и делает понимание ASP.NET MVC таким простым.
  • Скотт Гатри : Первую главу он написал с уважением к NerdDinner в книге Professional ASP.NET MVC 1.0, и у него всегда есть несколько классных постов о новых возможностях, которые появятся в ASP.NET MVC.
  • Стивен Уолтер: Кажется, что каждый раз, когда я смотрю на его блог, у него появляется еще один крутой трюк или фрагмент кода, связанный с ASP.NET MVC. Он также написал книгу по ASP.NET MVC, в которой есть несколько довольно хороших отзывов о Amazon.

Читательский материал

  • WDVL: HyperText Transfer Protocol: Опять же, это ваше учебное пособие по HTTP. Я прочитал его часть и он кажется мне довольно приличным. Вам не нужно твердое понимание HTTP, но общий обзор запрашиваемых глаголов и заголовков поможет вам в этом.
  • NerdDinner.com Tutorial: Это длинное пошаговое руководство, написанное самим ScottGu, о том, как создать базовый сайт ASP.NET MVC от начала и до конца.
  • Profesional ASP.NET MVC 1.0: Это книга команды, которая написала эту ASP.NET MVC, и она действительно делает большую работу по объяснению фреймворка.
  • ASP.NET MVC Framework Unleashed: Это книга Стивена Уолтера о фреймворке. В ней есть несколько приличных рецензий на Amazon, хотя я никогда не читал её сам, так что я не мог высказать своё мнение так или иначе.

Screencasts

  • Rob Conery's MVC Storefront Series: Эти скринсы удивительно полезны. В начале они работали против предрелизных копий фреймворка MVC, так что некоторые вещи изменились, но они все еще удивительный материал для изучения ASP.NET MVC.
  • Презентации Скотта Гатри на ASP.NET MVC 2: Взгляните на раздел ASP.NET MVC на этой странице. В ASP.NET MVC 2 появилось несколько действительно аккуратных новых возможностей, и Скотт фактически закладывает хороший фундамент с нуля с помощью этой презентации. Сначала он проведет вас через новички, а затем покажет вам новые хитрости.
  • Сессия Фила Хаака MIX09 MVC : Отличное содержание прямо от самого человека. Фил на самом деле отличный ведущий, и здесь много хорошего содержания.
  • : Продвинутая MVC сессия Фила Хаака MIX09 : Некоторые более продвинутые вещи и аккуратные трюки от Фила.
  • Файл Скотта Хэнселмана -> Новая компания MIX09 Session: На самом деле я присутствовал на этой сессии, пока был на MIX09, и Скотт - отличный ведущий. Стоит взглянуть :)
  • Rob Conery и Steven Sanderson TekPub Screencasts: Они не бесплатные, но стоят каждого пенни. Роб и Стивен - удивительные учителя, и я не могу в достаточной мере рекомендовать скринкасты TekPub. Они первоклассные.

IoC и впрыск зависимости

Поскольку вы упомянули IoC конкретно в вашей операционной, есть несколько библиотек и постов в блоге, которые могут помочь вам с этим:

  • Simone Chiaretta: Как использовать Ninject 2 с ASP.NET MVC: На самом деле я использую Ninject в своих личных проектах, так что это отличный ресурс, если вы являетесь поклонником Ninject.
  • Исходный код "Хана" Rob Conery: Иногда мне просто нравится видеть какой-нибудь качественный код. На самом деле это исходный код для блога Роба. Изначально он использовал StructureMap, но я думаю, что недавно он изменился на Ninject.Mvc.
  • MVC Storefront DI Screencast: Rob рассказывает о настройке инъекции зависимостей в MVC Storefront. В этом случае используется StructureMap, как мне кажется.
  • TekPub Concepts video (free): Роб рассказывает об основах IoC и DI в этом видео, если вам нужно освежиться. Это тоже бесплатно :)

Other Pertinent Web Technologies

Потому что вы хотите перейти в Интернет, есть и другие языки и технологии, которые вам нужно знать. Ниже приведен список некоторых кратких руководств, которые помогут вам начать работу, хотя каждая из этих тем может с легкостью оправдать должность такого же размера (или большего), чем эта!

  • HTML : Кажется глупым, что я упоминаю об этом здесь, но я упоминаю об этом только потому, что в наши дни есть много толчков для написания valid HTML. Большинство проблем доступности и несовместимости с браузерами можно предотвратить, если использовать чистую разметку. Лично я использую XHTML на своих сайтах, но любой doctype сделает :)
  • JavaScript: Это аккуратный язык, который может быть использован для того, чтобы многие веб-приложения больше походили на настольные приложения (помимо всего прочего). Есть много приростов производительности и побед в проектировании, которые могут быть получены при правильном использовании JavaScript. Как только вы почувствуете себя комфортно с JavaScript, вы, вероятно, захотите сделать переход на библиотеку JavaScript, чтобы сделать кроссбраузерную совместимость очень простой. Выбранная мной JavaScript-библиотека - jQuery.
  • CSS: Вот как вы должны применять стиль к вашим сайтам. Одна из самых больших ошибок, которые допускают многие разработчики, это то, что они делают свой HTML, отвечающий за презентацию (использование таблиц для макетов [священная война] и т.д. и т.п.). Если не принимать во внимание аргументы и священные войны, то CSS - это настоящий навык, и это действительно не так сложно, как может показаться некоторым :)

Я знаю, что это кажется многим, и я, вероятно, затопил вас материалом для чтения, однако, я думаю, что важно построить прочный фундамент. Веб-разработка - это очень весело, когда у тебя хорошо получается, и это определенно отличный способ зарабатывать на жизнь! Удачи! ASP.NET MVC - это отличный фреймворк, и вы сделали отличный выбор.

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

  • AJAX: Заставляет ваши веб-приложения работать более естественно и делать вещи в фоновом режиме.
  • Веб-службы: Универсальный способ обмена данными в Интернете. Например, существуют веб-службы, предоставляющие прогнозы погоды и котировки акций. Вы можете потреблять их и даже создавать свои собственные!
  • XML и JSON: Они используются для описания данных. Когда вы сериализуете данные в Интернете, XML и/или JSON являются традиционными технологиями, которые используют большинство разработчиков. JSON популярен, в частности, потому, что его можно так красиво использовать в JavaScript.
24
ответ дан 4 December 2019 в 07:35
поделиться

Первый шаг в запуске MVC проходит через Nerd Dinner Tutorial.

На мой взгляд, это самый простой и быстрый способ познакомить вас с основами MVC.

Спасибо

.
2
ответ дан 4 December 2019 в 07:35
поделиться

Извините, если это звучит немного упрощенно, но... Учебники по http://asp.net/mvc, хотя и базовые, но они хороши для того, чтобы вам было удобно работать с фреймворком. Как и NerdDinner. Я обнаружил, что если у вас есть опыт разработки, то изучение MVC не так уж и сложно, при условии, что вы сможете понять шаблон MVC, который довольно прост. Будет больше усилий для того, чтобы привести веб-интерфейс в порядок. Лучше всего вам будет удобно работать с HTML, JavaScript (и AJAX) и CSS, так что вы сможете создать хороший интерфейс (вид).

И обязательное "изучение jQuery" для вашего веб-интерфейса.

.
2
ответ дан 4 December 2019 в 07:35
поделиться

Ужин ботаников здесь: http://aspnetmvcbook.s3.amazonaws.com/aspnetmvc-nerdinner_v1.pdf

Это один из лучших ресурсов, которые я использовал до сих пор

.
1
ответ дан 4 December 2019 в 07:35
поделиться

Я бы начал со следующей книги:

Pro ASP.NET MVC Framework alt text http://www.apress.com/resource/bookcover/9781430210078?size=medium

В ней содержится отличная информация о том, как начать разработку MVC с нуля. Пример спортивного магазина содержит намного больше полезной информации, чем Nerd Dinner IMO.

.
0
ответ дан 4 December 2019 в 07:35
поделиться

Посмотрите книгу ASP.NET MVC в действии и проект codeecampserver, который идет вместе с ней.

0
ответ дан 4 December 2019 в 07:35
поделиться

Я переключился с Webforms на MVC для моей повседневной работы, когда вернулся, и обнаружил, что подвергаюсь разработке Rails , отправляю сообщения в 18:00 дома :), действительно полезно с переходом поскольку многие принципы Asp.net MVC кажутся прямым портом из Rails ... и его Rails, так что вам это все равно понравится ...;)

0
ответ дан 4 December 2019 в 07:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: