Почему бы не обновиться до последней платформы .NET?
Я вижу, что многие люди имеют .NET 2.0 или даже 1.1 как требование для своих проектов. На моем собственном рабочем месте также много скептицизма для обновления до самой последней и самой .NET-платформы .NET.
Как программист, я чувствую, что очень сложно работать со старыми фреймворками, когда вы знаете, что вы могли бы сделать это намного проще с новыми фреймворками. Обычно я устанавливаю бета-версии и играю с ними, поэтому я быстро знаком с ними и в процессе забываю о старом способе делать что-то больно, чтобы переучивать то, что вы пытались забыть, когда у вас есть ограничение на работу со старыми версиями.
В чем причины для перехода на старые версии, когда они должны быть совместимы, и как вы можете убедить людей обновиться?
Ответы
Ответ 1
Во-первых, понять причины, по которым предприятия медленно обновляются.
Компьютерные системы не являются стратегическим преимуществом для большинства компаний. Они являются необходимой функцией обслуживания.
Поскольку они необходимы, их нарушение может быть чрезвычайно дорогостоящим. Поскольку они не являются стратегическим преимуществом, способность развиваться немного быстрее не является большим преимуществом.
Вы предлагаете, чтобы компания тратила ресурсы, чтобы продолжить обновление до последней версии для вероятных, но не определенных, а не крупных достижений, с возможностью многого поломки. Для большинства компаний это не победа. Это безопаснее принимать вещи после того, как они были там некоторое время. Они упускают некоторый потенциал роста, но избегают шанса на пагубный недостаток.
Идите вперед и предлагайте модернизацию до последней и самой большой, если хотите, но вы будете гораздо эффективнее вносить ее в бизнес (в отличие от технического). Постарайтесь выяснить количественно, насколько эффективнее он сделает вас, и, следовательно, что компания может сэкономить. (Они не будут обращать внимание на цифру, которую вы составляете, возможно, обратите внимание на того, кто хорошо известен, и, скорее всего, верят чему-то, чему способствует исследование.) Признайте недостатки и покажите, какие вероятные издержки будет, и найти способы ограничить недостатки. Будьте очень осторожны в том, чтобы проваливать что-либо, поскольку у лиц, принимающих решения, гораздо больше опыта, отвергающих подобные вещи, чем вы предлагаете.
Не упоминайте о том, что разработчики любят последние вещи, или вы оторветесь, поскольку кто-то хочет, чтобы компания заплатила за новые игрушки и потеряла много доверия.
Иногда вы можете получить то, что хотите, но это помогает узнать, как его попросить.
Ответ 2
Причина, о которой не упоминалось, заключается в том, что фреймворк 3.5 не может быть установлен в версиях Windows до Windows XP.
Поддерживаемые операционные системы: Windows Server 2003; Windows Server 2008; Виндоус виста; Windows XP
текст ссылки
Ответ 3
Легче перейти в новую структуру нового проекта.
В существующих проектах требуется определенная работа, чтобы воспользоваться новыми функциями. Во многих случаях это полезно только программисту. Когда вы работаете над проектом только для технического обслуживания, вам иногда просто нужно пожал плечами и сказать: "Это было бы гораздо меньше кода в версии x".
Ответ 4
Я перенесла 1.1 проектов на 2.0 и 3.5, а также с 2.0 на 3.5.
Из моего опыта я могу сказать, что у меня не было никаких проблем с переходом от 2.0 до 3.5. Тем не менее, я столкнулся с некоторыми проектами ошибок с 1.1 до 2.0 или 3.5, поэтому я должен советовать людям быть более осторожными при миграции проекта 1.1.
Если вы работаете в 2.0, я говорю, иди за ним. Вы найдете проекты немного быстрее на ходу, и вы сможете играть с LINQ:)
Ответ 5
Для меня здесь это чисто о деньгах - 2.0 работает для компании, поэтому они не видят мотивации для обновления.
Я предполагаю, что это не редкость.
Ответ 6
Возможно, что люди, просящие программное обеспечение, не обязательно знают, что такое последняя версия фреймворка.
Большинство клиентов, которых я вижу, не являются техническими и просто запрашивают те функции, которые они хотят.
Некоторые спрашивают конкретно об .NET 1.1/2.0, и мы можем сказать им, что затраты на разработку будут уменьшены, если мы будем использовать 3.5, так как с ним проще работать, и легко заставить их переключаться.
Некоторые люди могут быть обеспокоены интеграцией с тем, что у них уже есть. Если то, что у них уже есть, встроено в .NET 1.1, они могут захотеть придерживаться его, чтобы все было согласовано.
Что касается вашего собственного рабочего места, я бы сказал, возьмите на себя ответственность и продемонстрируйте, где вы показываете, насколько он отличается, насколько легко вы узнаете, как его использовать. Был отличный экран, как использовать новые материалы динамических данных в .NET 3.5 и VS2008. Довольно много людей в моей компании получили последнюю версию VS, установленную после ее просмотра. Я попытаюсь посмотреть, могу ли я найти ссылку на него.
http://blogs.msdn.com/davidebb/archive/2007/12/12/dynamic-data-screencast-is-now-available.aspx
Ответ 7
У Скотта Гензельмана была статья о несовместимости 3.5 SP1:
http://www.hanselman.com/blog/UpdateOnNETFramework35SP1AndWindowsUpdate.aspx
Несмотря на то, что это относится только к небольшому списку ошибок, нижняя строка: новая платформа требует очень тщательного тестирования и не имеет 5-минутной задачи, поскольку, хотя она совместима с 99,99%, несовместимость составляет 0,01%. действительно неясно и трудно найти.
Ответ 8
Я уже разместил что-то очень похожее здесь: Переход на С# 2.0 на С# 3.0 стоит для этого проекта?, а большинство говорит, что он совместим, но не стоит его переключать из-за того, как проект уже выполняется.
Переключатель является оправданным, если вы действительно хотите новые вещи в фреймворке, иначе вам нужно будет обновить все свои лицензии для Visual Studio ни для чего и, возможно, придется изменить несколько мелочей в вашем проекте.
Ответ 9
Потому что они "должны" быть совместимыми, это не значит, что они есть. Всегда есть разрыв между версиями.
Кроме того, большинство процедур QA определяют, что для изменения кода требуется повторная проверка этого кода. Для изменения фреймворков потребуется весь тестовый прогон кода и задействовать гораздо больше человеко-часов.
Последний!= Величайший. Просто спросите любого, кто имел дело с Vista.
EDIT: RE Vista... Расслабься, пример! Сколько вещей не работало с Vista, которые были в порядке с XP. Мне пришлось с трудом переходить на XP после использования Windows 2000 - помните, как плохо было 98? После этого я не хотел оставлять свое "защитное одеяло". Это не bash, действительно.
Ответ 10
2,0 относительно стабилен и достаточно распространен. 1.1 старше, что означает, что вероятные ошибки и их обходные пути хорошо известны. Я был бы очень удивлен, если найду Windows-машину без 2.0. Эти факторы могут иметь эффект.
Также подумайте, что люди, возможно, начали разрабатывать свой продукт до того, как вышла более старая версия фреймворка. Во многих случаях, если ваше приложение является приложением .NET 2.0, вам может не понадобиться что-либо в среде 3.x. Visual Studio 2008 может ориентироваться на среду 2.0, поэтому нет настоятельной необходимости "обновить" эти приложения. Это не стоит усилий QA, чтобы подтвердить, что все работает нормально, когда нет никакой пользы для изменения.
Наконец, миф. Людям нравится верить своим друзьям независимо от того, невежественны они или нет. В зависимости от того, кого вы спрашиваете,.NET Framework 3.5 представляет собой загрузку 50 МБ, 100 МБ, 200 МБ или 1,82 ТБ. Похоже, люди выбирают наибольшее число, которое кажется страшным для ситуации. Эти люди сродни людям, которые проповедуют опасности этого нового изобретения под названием "Интернет", который может разоблачить всех нас преступниками и опасностью. Вы можете загрузить фреймворк всего за 28 МБ. Звук грубо? Вы можете получить USB-накопители, которые в течение этих дней занимают почти $1, и я загрузил файлы PDF, которые были взвешены более тяжелыми.
Ответ 11
Основная проблема заключается в том, что для вашего приложения потребуется определенная версия .NET framework; не то удовольствие для ваших конечных пользователей, которым, возможно, придется загрузить установщик объемом 100 МБ или более.
Ответ 12
Многие из наших клиентов имеют весьма ограничительные политики в отношении того, какое программное обеспечение может быть установлено на своих рабочих столах. Они даже не настроены на получение автоматических обновлений MS по мере их публикации, но будут применять только сертификационные обновления, которые вытесняются их персоналом ИТ-администратора (большинство из этих рабочих столов не будут подключаться к Интернету).
Для таких клиентов мы не можем просто выпускать новую версию нашего программного обеспечения, которая опирается на .Net 3.5. Из-за этих политик мы находимся на 2.0 еще на 18 месяцев (по крайней мере), пока наши существующие клиенты не решат, что .net 3.5 не злой и что он не сломает ни одно из своих программных продуктов для бизнеса., в этот момент 4.0 будет ломаться, и мне придется сидеть и быть довольным этим напуганным "новым" материалом linq, в то время как все остальные могут играть с прохладной новой функциональностью 4%
Ответ 13
Я думаю, что многие люди забывают, что на самом деле существует немало затрат за отсутствие обновленных фреймворков.
-
Когда-нибудь вам нужно обновиться. Ваша ОС или другие программы станут неподдерживаемыми. Так что речь идет скорее о том, чтобы делать небольшие обновления время от времени, или после большого обновления.
-
Большинство программистов (я думаю) хотели бы играть с новейшими игрушками и изучать новые технологии, чтобы оставаться мотивированными.
-
Вы сможете быстрее создавать программы, что, конечно же, приведет к снижению цен на ваши продукты и проекты, поэтому, чтобы оставаться впереди конкурентов, вы хотели бы оказаться на грани.
Ответ 14
Если вы все еще находитесь в разработке и не выпустили свое программное обеспечение, вполне нормально переключаться на новую версию fx (то же самое для java runtime). Но если вы уже выпустили развертывание обновлений, это намного сложнее. В этом случае гораздо проще остановиться со старым fx.