Какой следующий шаг для разработчика? - PullRequest
2 голосов
/ 09 августа 2010

В последнее время я чувствую, что достиг стены, и мне нужно прыгнуть, чтобы продолжить улучшать себя.Я читал книгу Pro ASP.Net MVC2, написанную Стивом Сандерсоном, и он держал вашу руку на протяжении всех глав, все время представляя Dependancy Injection и абстрактные интерфейсы.

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

Я еще не достиг этой точки.

КнигаВо введении объясняется пара стереотипов разработчика.Разработчики SmartUI, те, кто программирует действия в рамках управляющих событий;Многоуровневые разработчики, те, которые используют трехслойную архитектуру.

Я подпадаю под последнее, но я знаю профессиональных разработчиков, которые на 100% являются разработчиками SmartUI.Профессиональное значение, которое им платят за создание приложений.

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

Должен ли я прочитать о Dependency Injection?Должен ли я сначала выучить и стать знатоком модульного тестирования и чувствовать себя комфортно при разработке через тестирование?

Каким должен быть мой следующий ход?

Не стесняйтесь менять теги на что-то более описательное.

Ответы [ 4 ]

3 голосов
/ 09 августа 2010

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

Что я считаю лучшим, так это работать над проектом, который у меня над головой, пока я не смогунайти решение, и я могу быстро найти ограничения технологии.

Пока вы не используете его, вы не сможете понять его.

Кроме того, если кто-то спросит васОб этих технологиях, если вы не можете их объяснить, вы на самом деле их не знаете.

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

2 голосов
/ 09 августа 2010

Как и в случае с Джеймсом, у меня есть два предложения (или возможных подходов), которые могут вам помочь:

  • Найдите небольшой (открытый) проект с открытым исходным кодом, который считается «лучшим в своем роде», и улучшите его. Вы изучите новые приемы, взглянув на код других людей, самостоятельно находя трудности
  • Начните что-то новое самостоятельно и задайте много вопросов, когда вы действительно застряли (здесь, на форумах и т. Д.)

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

1 голос
/ 09 августа 2010

Это то же самое, что случилось со мной тоже.Я могу полностью относиться к вашей ситуации.

Я преодолел свое препятствие, создав собственный движок блога в MVC, используя structmap в качестве IOC и в тестовом режиме.Это было определенно весело, и я узнал все об этих понятиях по пути.

Я бы посоветовал вам выбрать сторонний проект, реализовать его с помощью MVC, использовать IOC и тестировать полностью.

Для МОК прочитайте эту статью Роба Конери.http://blog.wekeroad.com/smackdown/200-page-manual-on-inversion-of-control-plus-or-minus-199/

1 голос
/ 09 августа 2010

Лучший способ узнать об инструментах и ​​методах разработки программного обеспечения - это применить их в реальном проекте.Если вы хотите узнать о внедрении зависимостей, найдите или запустите проект, который использует внедрение зависимостей, и пусть это мотивирует ваше чтение.То же самое для модульного тестирования или некоторого нового фреймворка или языка.

Для конкретной темы внедрения зависимостей я нашел эту страницу в вики Guice довольно хорошим обзором того, что DI на самом деле покупает у вас: http://code.google.com/p/google-guice/wiki/Motivation?tm=6

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