Если вы не понимаете MVC или TDD, и работа требует опыта в обеих этих областях, маловероятно, что вы получите работу, однако, если вы откровенны и честны в отношении своего опыта, навыков и стремлений, вы можете спросить,у них есть любые младшие должности, где вы можете работать с людьми в этих областях, чтобы вы могли учиться и продвигаться.
TL; DR Version =)
- Чтение блогов
- Обучение TDD
- Создание простого приложения MVC
- Расширение простого приложения MVC с помощью IoC и ORM
- Совместное использование простого приложения MVC через github или аналогичное
Полная версия
Изучение TDD и MVC в одно и то же время - большая работа, поскольку MVC является более тестируемым, чем веб-формы, есть еще многоего области, которые чрезвычайно сложно протестировать (исходящая маршрутизация - это та, которая сразу приходит на ум).
Хорошее место для начала - взглянуть на некоторые из каталогов .NET TDD, которые присутствуют, как показано ниже.ты чОпытный специалист по TDD решает простые проблемы с помощью TDD.Вы также можете начать практиковать эти каты самостоятельно, чтобы освоить используемые концепции и подходы.Взгляните на блогосферу - есть много хороших блоггеров, пишущих отличный контент о MVC и TDD.
Как только вы преодолеете первоначальное препятствие TDD, создайте себе простой веб-сайт MVC - что-то вроде классического движка блогов.Чтобы уменьшить исходную когнитивную нагрузку, сделайте ее по-настоящему простой:
- Храните все в списках в памяти и используйте простой интерфейс, чтобы скрыть реализацию этого от ваших контроллеров - это означает, что вы можете игнорировать доступ к даннымна короткий срок.
- Используйте конструкторы тестирования, например,
public MyController( IPostDao posts ) { ... }
и перегрузите его для использования во время выполнения с помощью public MyController() : this( new SessionPostDao() ) {}
- это означает, что вы можете игнорировать контейнеры IoC на короткий срок.
Всегда помните, что эти «горячие клавиши» предназначены только для уменьшения крутизны кривой обучения и никогда не должны использоваться в рабочем коде.
Как только вы начнете понимать, как создавать простое приложение MVC, добавьтеIoC контейнер в смесь.Я бы предложил Ninject, так как он имеет лучшую документацию по стандартным контейнерам .NET IoC, а также является самым простым в настройке и запуске.Не забудьте удалить эти уродливые перегруженные конструкторы теперь, когда вы используете IoC для создания своих контроллеров.
Далее добавьте немного реальной настойчивости, я предпочитаю NHibernate вместо EF, но кривая обучения NH безумно крутая (даже когда вы используетеActiveRecord). LightSpeed - отличный вариант, так как бесплатная версия ограничена 8 классами моделей, и ее очень просто использовать, однако недостатком является то, что потенциальные работодатели могут ее не использовать.
Теперь у вас естьпростая сборка движка блога с использованием MVC, с вашими контроллерами, собранными с помощью контейнера IoC, а ваша стойкость обрабатывается с помощью ORM (все покрыты различными модульными и интеграционными тестами), которые вы можете использовать, чтобы показать потенциальным работодателям, насколько вы знаете - но помните, что этотолько обработка поверхности, для создания приложений MVC гораздо больше, чем объединение нескольких контроллеров, IoC и ORM (например, маршрутизация, представления heplers, фильтры, альтернативные механизмы представления ).
Чтобы упростить совместное использование вашего блогового механизма с потенциальными работодателями, используйте бесплатную учетную запись github для хранения своего проекта, чтобы вы могли изучать git, а также mvc / tdd / ioc и orm =)