Почему бы не перейти на последнюю платформу .NET? - PullRequest
14 голосов
/ 17 декабря 2008

Я вижу, что многие люди используют .NET 2.0 или даже 1.1 в качестве требования для своих проектов. На моем собственном рабочем месте также много скептицизма по поводу обновления до новейшей и лучшей платформы .NET.

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

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

Ответы [ 14 ]

17 голосов
/ 17 декабря 2008

Во-первых, поймите причины, по которым компании медленно обновляются.

Компьютерные системы не являются стратегическим преимуществом для большинства компаний. Они являются необходимой сервисной функцией.

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

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

Идите вперед и предложите обновление до последней и самой лучшей версии, если хотите, но вы будете намного эффективнее, если использовать ее в деловом (а не в техническом) смысле. Постарайтесь количественно выяснить, насколько эффективнее это сделает вас и, следовательно, что компания может сэкономить. (Они не будут обращать внимания на фигуру, которую вы придумали, возможно, обратят внимание на кого-то, кого хорошо знают, что составляют, и с большей вероятностью поверит в то, что подтверждается исследованием.) будет, и найти способы ограничить недостаток. Будьте очень осторожны с фальсификацией чего-либо, поскольку лица, принимающие решения, имеют гораздо больше опыта, отвергая подобные вещи, чем вы предлагаете это.

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

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

11 голосов
/ 17 декабря 2008

Причина, о которой не упоминается, заключается в том, что платформа 3.5 не может быть установлена ​​в версиях Windows до Windows XP.

Поддерживаемые операционные системы: Windows Server 2003; Windows Server 2008; Виндоус виста; Windows XP

текст ссылки

4 голосов
/ 17 декабря 2008

Я перенес 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:)

4 голосов
/ 17 декабря 2008

Проще прыгнуть в новый фреймворк в новом проекте.

В существующих проектах требуется определенное количество работы, чтобы воспользоваться новыми функциями. Во многих случаях это выгодно только программисту. Когда вы работаете над проектом, предназначенным только для обслуживания, вам иногда нужно просто пожать плечами и сказать: «В версии x было бы намного меньше кода»

3 голосов
/ 17 декабря 2008

Для меня здесь дело только в деньгах - 2.0 работает на компанию, поэтому они не видят мотивации для обновления.

Полагаю, это не редкость.

2 голосов
/ 17 декабря 2008

Я уже опубликовал нечто очень похожее здесь: Стоит ли переход с C 2.0 на C # 3.0 для этого проекта? , и большинство говорит, что оно совместимо, но не стоит того переключиться из-за того, как проект уже выполняется.

Переключение оправдано, если вам действительно нужны новые вещи в платформе, в противном случае вам нужно будет обновить все свои лицензии на Visual Studio бесплатно и, возможно, придется изменить некоторые мелочи в вашем проекте.

2 голосов
/ 17 декабря 2008

Скотт Хансельман написал статью о несовместимости 3.5 SP1:

http://www.hanselman.com/blog/UpdateOnNETFramework35SP1AndWindowsUpdate.aspx

Даже если это относится только к небольшому списку ошибок, суть заключается в следующем: новая среда требует очень тщательного тестирования и не требует 5-минутной задачи, поскольку, хотя она совместима на 99,99%, несовместимость на 0,01% является действительно малоизвестные и их трудно найти.

2 голосов
/ 17 декабря 2008

Возможно, что люди, спрашивающие о программном обеспечении, не обязательно знают, какая там последняя версия фреймворка.

Большинство клиентов, которых я вижу, не являются техническими специалистами и просто запрашивают функциональность, которую они хотят.

Некоторые специально спрашивают о .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

1 голос
/ 17 декабря 2008

2.0 является относительно стабильным и довольно распространенным. 1.1 старше, что означает, что это, вероятно, ошибки, и их обходные пути хорошо известны. Я был бы очень удивлен, обнаружив Windows-машину без установленной версии 2.0. Эти факторы могут оказать влияние.

Кроме того, учтите, что люди могли начать разработку своего продукта еще до выхода более старой версии платформы. Во многих случаях, если ваше приложение является приложением .NET 2.0, вам может не понадобиться ничего в платформе 3.x. Visual Studio 2008 может работать с платформой 2.0, поэтому нет особой необходимости «обновлять» эти приложения. На самом деле не стоит проверять, чтобы все работало нормально, когда изменения не принесут пользы.

Наконец, есть миф. Людям нравится верить своим друзьям, независимо от того, невежественны они или нет. В зависимости от того, кого вы спрашиваете, .NET Framework 3.5 имеет загрузку 50 МБ, 100 МБ, 200 МБ или 1,82 ТБ. Кажется, что люди выбирают наибольшее число, которое кажется пугающим для ситуации под рукой. Эти люди сродни людям, которые проповедуют опасность этого нового изобретения под названием «Интернет», которое может подвергнуть нас всех преступникам и опасности. Вы можете загрузить фреймворк всего за 28 МБ. Звучит грубо? В наши дни вы можете получить USB-накопители, которые держат такую ​​большую сумму практически за 1 доллар, и я скачал PDF-файлы, которые весили больше.

1 голос
/ 17 декабря 2008

Поскольку они «должны» быть совместимыми, это не значит, что они есть. Между версиями всегда происходят серьезные изменения.

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

Последний! = Величайший. Спросите любого, кто имел дело с Vista.

РЕДАКТИРОВАТЬ: RE Vista ... Расслабьтесь, это пример! Сколько вещей не работало с Vista, которые были хороши с XP. Мне было трудно перейти на XP после использования Windows 2000 - помните, насколько плохим был 98? Я не хотел оставлять свое «защитное одеяло» после этого. На самом деле это не удар.

...