Подтвердить что ты не робот

.NET 3.5 опубликован в 11/07.NET 3.0 в 11/06. Почему большинство людей все еще используют .NET 2.0?

Люди разрабатывают собственные решения следующих проблем:

  • Согласованные рамки обмена сообщениями для удаленного обмена информацией (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?

4b9b3361

Ответ 1

  • Требуется изучение нового материала, многие "просто работа". Разработчики LOB не могут быть обеспокоены.
  • Вложения в устаревшем коде, пользовательские системы могут не понадобиться, но они работают, перекодировка для использования основанных на Framework систем - это пустая трата времени, если существующая система не сломана.
  • Стоимость программного обеспечения Dev. Кодирование эффективно в .net 3.x действительно требует VS2008. Модернизация всей команды разработчиков с 2005 года может стоить.
  • Устойчивость. 2.0 была эволюция 1.1 Framework. 3.0 и 3.5 включают новые технологии v1 (перечисленные вами). Разработчики любят видеть, как технологии проявляют себя, прежде чем они смогут оправдать своих менеджеров, что их стоит прыгать. Как и при использовании Windows, вы, вероятно, увидите больше людей, идущих от VS2005 до VS2010 и .net 2.0 до .net 4.0, поскольку это будет содержать v2 из технологий 3.x.

Ответ 2

По той же причине я знаю разработчиков Java, которые по-прежнему кодируются в Java 1.4. Изменения дороги и для людей, которые делают работу внутри компаний, где Getting It Done гораздо важнее, чем использование новых технологий, часто бессмысленно.

Для большой внутренней работы мало оснований для обновления старых приложений для работы в более новых средах.

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

И я никогда не использовал его, поэтому я не мог сказать, но может быть, что .NET 2 достаточно хорош для людей, и что .NET 3.5 не предлагает достаточного количества ресурсов для обучения/изменение, которое задействовано, даже для компаний, которые в порядке с более передовой.

Ответ 3

Потому что это не очень хорошо поддерживается веб-хостинга компании.

Я разрабатываю новое веб-приложение, но моя хостинговая компания поддерживает только ASP.NET 2.0.

Ответ 4

Если вам нужна поддержка Windows 2000, вам нужно будет оставаться с .NET 2.0. Это не так уж плохо.

Ответ 5

Я могу говорить для себя и своей компании. Мы все еще не используем его. Зачем? Что ж

1. У большинства наших пользователей уже установлена ​​платформа NET 2.0. Нет необходимости устанавливать другую инфраструктуру.
2. Мы не изменимся, потому что это новая вещь. Он должен добавить некоторую ценность.
3. Чтобы действительно окупиться, это означало бы огромную работу. Причем, он должен окупиться.
4. Пока еще рано говорить о том, стоит ли это (один год недостаточно) с точки зрения ошибок и новых проблем. Кажется, это стоит того.

Ответ 6

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

Что касается этого:

Уже более года Microsoft предлагает .NET 3.5

Чем ноябрь 2007 года больше года назад? Да,.NET 3.5 замечательный, и мне нравится LINQ (особенно LINQ to Objects) и преимущества С# 3.0, но всегда есть затраты, связанные с изменениями. Начнем с того, что стоимость развертывания Visual Studio 2008. Тогда есть стоимость повторного тестирования всего на .NET 3.5 (и теперь .NET 3.5SP1). Затем затраты на развертывание .NET 3.5 на все серверы или затраты на .NET 3.5 для всех клиентов. О, не говоря уже о затратах на то, чтобы научиться эффективно использовать все новые технологии.

Это произойдет, но вы не должны ожидать, что это будет очень быстро.

Ответ 7

Чтобы добавить еще одно примечание к тому, что @SCdF говорит, что любая компания со значительным ИТ-персоналом, не являющаяся разработчиком (т.е. большинство) обычно сильно устойчив к новым технологиям.

ИТ-отделы, как правило, отстают от точки зрения разработчиков, потому что они не видят ценности бизнеса при обновлении до новых систем/аппаратных средств, чтобы оставаться впереди кривой. ИТ слишком занят работой с безопасностью и обслуживанием (реальным или просто воспринимаемым), чтобы иметь дело с разработчиками, пытающимися заставить их перейти на .Net 3.5.

Разработчики также, как известно, плохо относятся к общению с другими отделами о ценности бизнеса. Когда разработчик пытается получить ИТ или бизнес на борту с обновлением до .Net 3.5, они начинают говорить об автоматизированных рабочих процессах и XML и веб-службах вместо того, чтобы говорить доллары и центы.

Брайан Принс из Microsoft имеет действительно хорошую презентацию на тему "Мягкие навыки", которая затрагивает некоторые из них. Если вы спросите его красиво, он просто может приехать в вашу компанию и представить:)

Ответ 8

Я спросил менеджера у предыдущего работодателя, почему он еще не включил коммутатор, ответ был "Я не хочу поддерживать три фреймворка", то есть 1,1, 2,0, 3,5.

Я объяснил, что обновление до 3.5 не совпадает с переключением с 1.1 на 2.0 (3.5 является расширением 2.0 с использованием другой dll (Core.dll), а не обновленной dll, например от 1.1 до 2.0).

Я вижу много менеджеров, использующих эту линию мышления, поэтому вам нужно сообщить им!

Ответ 9

2.0 работает, правильно? Я думаю, что новый материал велик и крут, и мне нравится оставаться на последнем месте, но в конце дня, если это сработает, часто решение состоит в том, чтобы придерживаться того, что у вас есть. Я поддерживал магазин, в котором запускались программы DOS 6.2x в течение многих лет (до 2004 года), и я использую, чтобы почесать голову. Но в конце концов, в этом случае не было убедительной деловой причины тратить все, чтобы двигаться вперед.

Я уверен, что есть и другие причины.

Ответ 10

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

Если вы хотите использовать определенную технологию в 3.5, то повышайте скорость, но если; не исправить то, что не сломано.

Ответ 11

Мне было бы интересно узнать, сколько времени прошло 2.0, пока не получило "долю на мажоритарном рынке". Я имею в виду, что 1 или 2 года могут звучать долгое время для вас и для меня, но вы должны помнить новый язык должен быть выпущен, тогда люди должны обучать его, тогда они должны знать это достаточно хорошо, чтобы "продать" его руководству. Кроме того, VS2005 был "достаточно хорош" для довольно многих людей, и затраты на модернизацию на VS2008 были связаны с поддержкой более новых языковых версий - не только денег, но и времени.

Ответ 12

По той же причине большинство людей все еще используют Windows XP!

Ответ 13

Несколько рабочих дней назад я был в интересной ситуации. Я как автор оригинальной веб-службы ASMX, меня спросили об их версировании. Выражала особую озабоченность в связи с тем, что я основал сервисы на XSD, изготовленном вручную, и что никто еще не понимал XSD так хорошо.

Я рекомендовал использовать WCF, так как им не нужны пользовательские XML-форматы, и им не придется играть с XSD: либо просто определить контракт данных в коде.

Даже после того, как я объяснил, что .NET 3.5 SP1 составляет пару пакетов обновления для .NET 2.0, а также несколько новых сборок, они все еще смотрели на меня, как будто я собирался стать жестоким. Очевидно, что обновление версий .NET - это долгий и дорогостоящий процесс. Уроки .NET 1.1 от миграции .NET 2.0.

Один небольшой шаг в правильном направлении, касающийся миграции в WCF: см. ASMX Web Services - это технология устаревших технологий.

Ответ 14

Для правительственной обработки инфраструктура 3.5 еще не одобрена для некоторых сред, поэтому вы вынуждены использовать 2.0 или 3.0.

Ответ 15

Самая большая проблема - это оправдание модернизации бизнеса, особенно сейчас мы находимся в глобальном спаде.

В 3.5 должно существовать конкретное преимущество или технология, что ваш проект (возможно, greenfield) абсолютно не обойдется без него, чтобы нажать на него.

Я пытаюсь собрать дело в крупной корпорации, поэтому выгоды для бизнеса должны выдержать взвешенное состояние. В нынешнем климате "сохранение таланта" просто не сократит его, особенно с растущим пулом кандидатов в целом.