11 шагов к тому, чтобы стать продвинутым .NET разработчиком

среда, 1 декабря 2010, Александр Краковецкий

Вы пишите код, разрабатываете системы, которые используют другие люди? Вы хорошо зарабатываете и считаете  себя хорошим специалистом? Тогда мы идем к вам :) Ниже представлен список из 10 вещей, которые хорошо было бы изучить .NET разработчику, чтобы его считали профессионалом. Оригинал статьи находится здесь.

1. Модульное тестирование (Unit testing)

Весь ваш код, в идеале, дослжен быть покрыт модульными тестами, каждая сборка должна проверяться на наборе тестов, перед тем, как она попадет в руки заказчиков или клиентов. Для модульного тестирования можно использовать встроенные в Visual Studio средства, NUnit, Pex, Mole и другие инструменты. также вы должны быть знакомы с понятием TDD и как можно чаще применять этот подход на практике.

2. Системы управления версиями

Хороший специалист должен уметь работать с различными системами управления версиями: Team Foundation Server, Git, SVN, Mercurial и т.д. Это позволит следить за кодом и версиями сборок.

3. IoC (Inversion of control) контейнеры

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

Сейчас активно развиваются ряд инcтрументов:

4. Участие в open source проектах

Здесь, думаю, все понятно.

5. Continuous Integration

Continuous Integration - это практика разработки программного обеспечения, которая заключается в выполнении частых автоматизированных сборок проекта для скорейшего выявления и решения интеграционных проблем. В обычном проекте, где над разными частями системы разработчики трудятся независимо, стадия интеграции является заключительной. Она может непредсказуемо задержать окончание работ. Переход к непрерывной интеграции позволяет снизить трудоёмкость интеграции и сделать её более предсказуемой за счет наиболее раннего обнаружения и устранения ошибок и противоречий.

Можно использовать такие инструменты: TeamCity, Hudson, CruiseControl.NET, msbuild.

Можно почитать книгу "Continuous Integration in .NET" издательства Manning по этому вопросу.

6. Базы данных, работа з данными

В этом пункте нужно упомянуть NHibernate Object Relational Mapper, а также NoSQL базы данных - CouchDB, MongoDB или RavenDB.

7. Облачные технологии

Все будем в шоКоЛАУДе :) Изучите принципы облачных технологий, попробуйте в действии Windows Azure Platform.

8. Mono на Linux

Попробуйте запустить ваши приложения с помощью Mono на Linux, Mac OS X и других альтернативных платформах. Обратите внимание на MonoTouch, SharpDevelop.

9. Messaging architecture

Ознакомтесь с такими инструментами как NServiceBus, MassTransit или RhinoQueues, а затем AMQP и RabbitMQ.

10. Domain-Driven Design

Почитайте о Domain-Driven Design и начните использовать в своих приложениях.

11. Архитектура CQRS

Ознакомтесь с подходом к разработке корпоративных бизнес приложений - CQRS.

Глядя на этот список, могу сказать, что мне лично есть еще куда расти и что изучать. Думаю, многие .NET разработчики обнаружат часть пунктов из списка, которые отсутствуют в их резюме :)

Компании из статьи


Microsoft Украина


Сайт:
http://www.microsoft.com/ukr/ua/

Microsoft Украина Украинское подразделение компании Microsoft.

JetBrains


Сайт:
http://jetbrains.com/

JetBrains JetBrains is a Czech software development company with offices in Prague, Czech Republic; Saint Petersburg, Russia; Boston, USA and Munich, Germany. It is best known for its Java IDE, IntelliJ IDEA an...

Ищите нас в интернетах!

Комментарии

Свежие вакансии