Это нужно разработчикам, которые смотрят в будущее и в ближайшее время собираются
окончательно отказаться от поддержки XP.
Я понимаю, что XP была отличной системой, но ее время безвозвратно уходит.
А сохранение обратной совместимости требует определенных затрат и тормозит прогресс.
Сейчас, например, иметь коммерческий продукт прикладного или системного уровня
почти наверняка означает либо две кодовые базы, — одна для XP и Server 2003,
вторая для Vista и выше, — либо одна кодовая база, рассчитанная на нижнюю планку (XP),
где большинство новых возможностей, появившихся в Vista и выше, вообще не используется.
Это все ненормально. Каждый должен сделать маленький шажок навстречу прогрессу.
Производители железа уже отказываются поддерживать XP, разработчики драйверов для
этого железа — тоже, сейчас софтверные гиганты вроде MS, Intel и остальных должны
аккуратно, совместными усилиями "утопить" XP, чтобы у большинства рядовых пользователей не
осталось никакого резона иметь эту систему на своих компьютерах. Это "жестоко", но справедливо.
Если вы собираетесь юзать самые современные инструменты программирования, отказ от
поддержки старых систем — не такая уже большая цена за это.
P.S.
Это сообщение пишу с виртуальной Windows XP. Не система, а ветеран !
Здравствуйте, okman, Вы писали:
O>Я понимаю, что XP была отличной системой, но ее время безвозвратно уходит. O>А сохранение обратной совместимости требует определенных затрат и тормозит прогресс. O>Сейчас, например, иметь коммерческий продукт прикладного или системного уровня O>почти наверняка означает либо две кодовые базы, — одна для XP и Server 2003, O>вторая для Vista и выше, — либо одна кодовая база, рассчитанная на нижнюю планку (XP), O>где большинство новых возможностей, появившихся в Vista и выше, вообще не используется.
Что за новые возможности такие? ) Ну т.е. пара мелочей конечно видна (мы тут не про написание драйверов)... Типа кастомизированного представления в таскбаре и т.п... Но это разве принципиально? )
Вот в win8 действительно много принципиально нового. Но я что-то сомневаюсь что они в ближайшее время откажутся от поддержки win7...
Здравствуйте, о_О, Вы писали:
о_О>это твои проблемы. нищеброды, неспособные платить, бизнесу не нужны. как и торчки, которые считают что продукт должен поддерживаться вечно — тоже.
Можно попросить предоставить график популяряности разных версий windows в корпоративном секторе? ) Ну раз такое однозначное заявление, то оно же на чём-то основано... )))
Здравствуйте, alex_public, Вы писали:
_>Что за новые возможности такие? ) Ну т.е. пара мелочей конечно видна (мы тут не про написание драйверов)... Типа кастомизированного представления в таскбаре и т.п... Но это разве принципиально? )
Речь шла о тех вещах, которые не видны. А в Vista/7 их достаточно много по сравнению с XP.
_>Вот в win8 действительно много принципиально нового. Но я что-то сомневаюсь что они в ближайшее время откажутся от поддержки win7...
Это лишь мое мнение, но мне кажется, что сейчас у MS будет две линейки Windows,
как тогда в девяностых с 95/98/Me и NT 3.1/NT 4.0/2000.
Потому что больно уж они разные. И трудно представить себе программу, которая,
будучи написанной для Windows 8, нормально работала на Vista или Windows 7.
Как там будет с планшетами — не знаю, но что большинство домашних юзеров останутся на
Vista/Windows 7 (и XP я почти уверен.
Извиняюсь, что вклиниваюсь, так как вопрос был адресован не мне.
Из специфичного Vista API лично я не использую вообще ничего, и это
именно потому, что вынужден поддерживать Windows XP.
Здравствуйте, okman, Вы писали:
O>Речь шла о тех вещах, которые не видны. А в Vista/7 их достаточно много по сравнению с XP.
Отвечу в другом сообщение.
O>Это лишь мое мнение, но мне кажется, что сейчас у MS будет две линейки Windows, O>как тогда в девяностых с 95/98/Me и NT 3.1/NT 4.0/2000. O>Потому что больно уж они разные. И трудно представить себе программу, которая, O>будучи написанной для Windows 8, нормально работала на Vista или Windows 7. O>Как там будет с планшетами — не знаю, но что большинство домашних юзеров останутся на O>Vista/Windows 7 (и XP я почти уверен.
Это как раз было бы логично на мой взгляд. Но как мы видим MS уже поступила не так, а выпускает одну систему с двумя интерфейсами: под десктопы и под планшеты. Не знаю что из этого выйдет — посмотрим. )))
Здравствуйте, okman, Вы писали:
O>Извиняюсь, что вклиниваюсь, так как вопрос был адресован не мне. O>Из специфичного Vista API лично я не использую вообще ничего, и это O>именно потому, что вынужден поддерживать Windows XP.
Отлично. А если бы не нужно было поддерживать WinXP, то какие фичи Висты тогда бы стали использовать?
Сейчас Threadpool и некоторые примитивы синхронизации, про остальное точно не скажу, когда нет необходимости сохранять совместимость, такие вещи не отслеживаются.
Переубедить Вас, к сожалению, мне не удастся, поэтому сразу перейду к оскорблениям.
Во-вторых, это целые платформы, пришедшие на замену старым технологиям — Windows Filtering Platform,
Winsock Kernel (уп-с, тут, конечно, нужно сделать скидку на специфику моей работы, где данные
технологии имеют очень большое значение).
В-третьих, у кого как, но у меня довольно часто возникает ситуация, когда в поиске нужной
функции натыкаешься в MSDN на что-то чрезвычайно удобное, а потом вдруг внизу замечаешь
"Minimum supported client — Windows Vista". Облом-с. Да, эти новые, и, как правило, довольно
удобные API-функции Висты пробрались во все разделы MSDN и мозолят глаза.
В-четвертых, на Vista и выше многие прикладные вещи довольно удобно реализовывать, в
отличие от предыдущих систем. К примеру, какая-то программа-конфигуратор предназначена для
запуска только администраторами. На Vista я просто подправлю манифест, чтобы при запуске
она выкидывала окошко UAC, и все, проблема решена. На XP придется писать целую процедуру, чтобы
проверить, входит ли юзер в группу "Администраторы", выкидывать ему какое-то сообщение,
потом, если продукт кросс-языковой, разбираться с трансляцией этого сообщения и т.д.
Или вот еще пример, из совсем недавнего.
Нужно было в kernel-mode получать хэши md5 и sha-1 запускаемых файлов. В XP для этого нужно
тянуть с собой в ядро всякие реализации данных алгоритмов, а на Vista они уже, оказывается,
существуют в виде CNG (Cryptography: Next Generation — сам лишь недавно узнал).
Ну и в-последних, нельзя и про интерфейс забывать. Все эти гаджеты, риббоны, новые кнопки и
прочие "свистелки" — тоже некоторое подспорье в решении задач, несмотря на всю свою попсовость.
Короче, по отдельности все эти вещи как бы и не сильно заметны, а в совокупности
составляют целый пласт.
Здравствуйте, Ops, Вы писали:
Ops>Сейчас Threadpool и некоторые примитивы синхронизации, про остальное точно не скажу, когда нет необходимости сохранять совместимость, такие вещи не отслеживаются.
О, вы работаете с потоками непосредственно через win api? ) Я что-то давно не встречал такого, ну конечно если не считать создания самих библиотек для работы с потоками. )))
Здравствуйте, okman, Вы писали:
O>Сильно распыляться не буду, но вот из того, что лично мне реально облегчило бы работу:
O>Во-первых, это всякие "вкусности" — Transactional NTFS,
Действительно интересно. Правда для специфических приложений. В том смысле в общем случае у нас же может быть другая файловая система.
O>Task Scheduler 2.0,
Мммм, ну да. Я почему то этого товарища всегда как отдельную компоненту считал (а не как часть ОС), тем более что доступ через COM. Но в целом согласен.
O> Restart Manager,
Вот с этим как-то не сталкивался вообще.
O>XmlLite.
Ну с этим они точно сильно запаздали и оно теперь нафиг никому не нужно. В том смысле что каждая вторая программа тащит в себе свою библиотеку для этих дел.
O>Во-вторых, это целые платформы, пришедшие на замену старым технологиям — Windows Filtering Platform, O>Winsock Kernel (уп-с, тут, конечно, нужно сделать скидку на специфику моей работы, где данные O>технологии имеют очень большое значение).
Даа, это как раз драйверные вещи, про которые я изначально отметил что само собой существенно изменились. Там ещё в звуковой подсистеме много принципиально нового, правда в отличие от сетевых функции оно многих совсем не порадовало.
O>В-третьих, у кого как, но у меня довольно часто возникает ситуация, когда в поиске нужной O>функции натыкаешься в MSDN на что-то чрезвычайно удобное, а потом вдруг внизу замечаешь O>"Minimum supported client — Windows Vista". Облом-с. Да, эти новые, и, как правило, довольно O>удобные API-функции Висты пробрались во все разделы MSDN и мозолят глаза.
))) Согласен, но частенько они добавляют не новую функциональность, а мелкие удобства. Что конечно тоже приятно. )
O>В-четвертых, на Vista и выше многие прикладные вещи довольно удобно реализовывать, в O>отличие от предыдущих систем. К примеру, какая-то программа-конфигуратор предназначена для O>запуска только администраторами. На Vista я просто подправлю манифест, чтобы при запуске O>она выкидывала окошко UAC, и все, проблема решена. На XP придется писать целую процедуру, чтобы O>проверить, входит ли юзер в группу "Администраторы", выкидывать ему какое-то сообщение, O>потом, если продукт кросс-языковой, разбираться с трансляцией этого сообщения и т.д.
Да, есть такой нюанс. Но допустим с инсталляторами из-за этого свои сложности возникают...
O>Или вот еще пример, из совсем недавнего. O>Нужно было в kernel-mode получать хэши md5 и sha-1 запускаемых файлов. В XP для этого нужно O>тянуть с собой в ядро всякие реализации данных алгоритмов, а на Vista они уже, оказывается, O>существуют в виде CNG (Cryptography: Next Generation — сам лишь недавно узнал).
Это вроде бы просто наследник CryptoAPI — довольно старой вещи. Но лично мне по прежнему удобнее подключить openssl, чем использовать их функции.
O>Ну и в-последних, нельзя и про интерфейс забывать. Все эти гаджеты, риббоны, новые кнопки и O>прочие "свистелки" — тоже некоторое подспорье в решении задач, несмотря на всю свою попсовость.
Ну с этим как раз особых изменений в Висте и нет. В том смысле что для пользователя то многое изменилось, но эти изменения автоматом работают и на старом коде.
O>Короче, по отдельности все эти вещи как бы и не сильно заметны, а в совокупности O>составляют целый пласт.
Так я не спорю что изменений много. Само собой за 10 лет иного и быть не может. Но чего-то принципиально нового для пользователя они не несут. А то многое, что принесли нового пользователям, работает автоматом и со старым кодом. Именно в этом главная мысль. Т.е. очень мало случаев (хотя исключения конечно же есть) когда я могу сказать пользователям "теперь мы не поддерживаем XP и поэтому теперь вам доступна такая-то классная фича". В большинстве случае можно сказать им только "теперь мы не поддерживаем XP и поэтому наш код стал короче и красивее", но разве пользователей это сильно порадует? )))
Здравствуйте, alex_public, Вы писали:
O>>Во-первых, это всякие "вкусности" — Transactional NTFS,
_>Действительно интересно. Правда для специфических приложений. В том смысле в общем случае у нас же может быть другая файловая система.
Это какая ? FAT32, что ли ?
O>>В-четвертых, на Vista и выше многие прикладные вещи довольно удобно реализовывать, в O>>отличие от предыдущих систем. К примеру, какая-то программа-конфигуратор предназначена для O>>запуска только администраторами. На Vista я просто подправлю манифест, чтобы при запуске O>>она выкидывала окошко UAC, и все, проблема решена. На XP придется писать целую процедуру, чтобы O>>проверить, входит ли юзер в группу "Администраторы", выкидывать ему какое-то сообщение, O>>потом, если продукт кросс-языковой, разбираться с трансляцией этого сообщения и т.д.
_>Да, есть такой нюанс. Но допустим с инсталляторами из-за этого свои сложности возникают...
Не понял. О чем именно речь ?
_>Это вроде бы просто наследник CryptoAPI — довольно старой вещи. Но лично мне по прежнему удобнее подключить openssl, чем использовать их функции.
Но согласись, удобнее было бы иметь один унифицированный интерфейс для всех, который бы к
тому же являлся бы частью ОС и работал везде. Это и про XmlLite тоже, с которым запоздали.
Я теперь везде, где нужна серъезная обработка XML, таскаю за собой Xerces и громадину ICU, а
ведь можно было бы (в теории) обходиться чисто виндозным API, появись он в нужное время.
_>Так я не спорю что изменений много. Само собой за 10 лет иного и быть не может. Но чего-то принципиально нового для пользователя они не несут. А то многое, что принесли нового пользователям, работает автоматом и со старым кодом. Именно в этом главная мысль. Т.е. очень мало случаев (хотя исключения конечно же есть) когда я могу сказать пользователям "теперь мы не поддерживаем XP и поэтому теперь вам доступна такая-то классная фича". В большинстве случае можно сказать им только "теперь мы не поддерживаем XP и поэтому наш код стал короче и красивее", но разве пользователей это сильно порадует? )))
Зато порядком есть такого: "эта фича работает у нас только начиная с Vista".
Кстати, что еще раз демонстрирует данное обсуждение — взгляды и потребности программистов и
пользователей по отношению к функционалу операционных систем очень сильно различаются.
Мне, как пользователю, возможностей XP хватает выше крыши, и я вообще до сих пор плохо понимаю,
зачем мне понадобилось бы переходить на эту Висту, Семерку и уж тем более Восьмерку — там
решительно ничего для меня нет завлекательного. И глубоко фиолетово, какой там риббон-тулбар-аэро,
фичи чисто для программистов тоже абсолютно не касаются — пусть сами там разбираются со
своими фреймворками, программными интерфейсами и драйверами для Вай-Фай, которого у меня
отродясь не было. Зато когда "включается" программист, все становится в точности до наоборот —
тут уже нужна 64-битная система, на которую можно ставить современные версии IDE, использовать
виртуализацию в полном объеме, запускать различные драйверы и тестировать различные режимы
работы — для этих целей XP уже давно не подходит, здесь минимум — это Семерка или 2008-ой сервак.
Да, я тут недавно писал софт: целевая система — Windows Server 2008 R2, контроллер домена.
Можно использовать самые последние API-функции и .NET Fx 3.5 (он там предустановлен).
Это одно удовольствие, когда под рукой набор современных инструментов и нет этих
ужасных требований по обеспечиванию обратной совместимости. Просто отдохнул душой, пока писал.
Здравствуйте, okman, Вы писали:
_>>Действительно интересно. Правда для специфических приложений. В том смысле в общем случае у нас же может быть другая файловая система. O>Это какая ? FAT32, что ли ? O>
Например если пользователь работает с файлом на флэшке. )
O>Не понял. О чем именно речь ?
Если инсталлятор на msi, то там не так тривиально сделать единый инсталлятор позволяющий ставиться и на всю систему и под пользователя.
O>Но согласись, удобнее было бы иметь один унифицированный интерфейс для всех, который бы к O>тому же являлся бы частью ОС и работал везде. Это и про XmlLite тоже, с которым запоздали. O>Я теперь везде, где нужна серъезная обработка XML, таскаю за собой Xerces и громадину ICU, а O>ведь можно было бы (в теории) обходиться чисто виндозным API, появись он в нужное время.
Ммм, сложно сказать. Допустим мы стараемся вообще не использовать ОС API напрямую, а только через всякие кроссплатформенные библиотеки. Хотя конечно не всегда получается, но в 95% случаев без проблем... Так что тут скорее была бы помощь разработчикам библиотек таких (их реализация под винду была бы просто обёрткой).
O>Зато порядком есть такого: "эта фича работает у нас только начиная с Vista".
Хм, что-то не помню уже что бы такое встречал.
O>Кстати, что еще раз демонстрирует данное обсуждение — взгляды и потребности программистов и O>пользователей по отношению к функционалу операционных систем очень сильно различаются. O>Мне, как пользователю, возможностей XP хватает выше крыши, и я вообще до сих пор плохо понимаю, O>зачем мне понадобилось бы переходить на эту Висту, Семерку и уж тем более Восьмерку — там O>решительно ничего для меня нет завлекательного. И глубоко фиолетово, какой там риббон-тулбар-аэро, O>фичи чисто для программистов тоже абсолютно не касаются — пусть сами там разбираются со O>своими фреймворками, программными интерфейсами и драйверами для Вай-Фай, которого у меня O>отродясь не было. Зато когда "включается" программист, все становится в точности до наоборот - O>тут уже нужна 64-битная система, на которую можно ставить современные версии IDE, использовать O>виртуализацию в полном объеме, запускать различные драйверы и тестировать различные режимы O>работы — для этих целей XP уже давно не подходит, здесь минимум — это Семерка или 2008-ой сервак.
В принципе соглашусь, но с оговорками. Формально на XP без проблем есть 64 бита, ставятся последние IDE и работает виртуализация в полном объёме.
O>Да, я тут недавно писал софт: целевая система — Windows Server 2008 R2, контроллер домена. O>Можно использовать самые последние API-функции и .NET Fx 3.5 (он там предустановлен). O>Это одно удовольствие, когда под рукой набор современных инструментов и нет этих O>ужасных требований по обеспечиванию обратной совместимости. Просто отдохнул душой, пока писал.
Какой у вас интересный диапазон. То драйверы и ядро системы, то .Net. )
Здравствуйте, alex_public, Вы писали:
_>Что за новые возможности такие? ) Ну т.е. пара мелочей конечно видна (мы тут не про написание драйверов)... Типа кастомизированного представления в таскбаре и т.п... Но это разве принципиально? )
На уровне WinAPI и системных сервисов нововведений очень много. В частности, например, отсутствие Windows Process Activation Service в 2003 сервере (который мы должны поддерживать) существенно усложнило архитектуру проекта, на котором я сейчас работаю.