Люди разрабатывают собственные решения следующих проблем:
- Согласованные рамки обмена сообщениями для удаленного обмена информацией (webservices, rpc,...)
- SDK для управления штатами для таких вещей, как конечные машины и рабочие процессы
- Рамки аутентификации
- И многое другое.
В течение более двух лет Microsoft предлагает .NET 3.0, который содержит согласованные и хорошо документированные так называемые Основы для Workflows, Communication, Authentication и новый способ создания веб-приложений.
Однако, люди все еще строят собственные фреймворки с согласованным реляционным сопоставлением объектов для решения своих баз данных, собственные методы для динамического расширения классов и методов во время выполнения (для того, чтобы клиент мог настраивать поведение приложения, например).
В течение в течение года Microsoft предлагает .NET 3.5, который, среди прочего, содержит LINQ и, следовательно, отличную ORM и прекрасное средство для расширения вашего кода и упрощения написания кода.
Но посмотрите вокруг... похоже, что большинство по-прежнему использует .NET 2.0. Веб-сайты создаются в простой ASP.NET. Опыт работы с ПК по-прежнему достигается с помощью комбинации CSS, JavaScript и HTML. Исполняемые файлы используют простые старые WinForms, рабочие процессы реализованы с помощью делегатов, событий, do/while и switch/case.
Без слишком большого обсуждения я был бы рад увидеть конкретные причины для следующего вопроса:
На ваш взгляд: почему люди не прыгают на поезд .NET 3.5?