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

Риски вокруг использования приложений Visual Basic 6.0

Учитывая, что среда выполнения Visual Basic 6.0 поставляется с Windows 7 и будет продолжают поддерживаться на протяжении всей жизни ОС (до января 2020 г.) и что среда разработки Visual Basic 6.0 больше не поддерживается, довольно стабильна, каковы риски при хранении критически важных приложений в Visual Basic 6.0 в течение следующих нескольких лет?

4b9b3361

Ответ 1

официальный совет для владельцев приложений VB6 от Microsoft UK:

[Не обновлять и не заменять VB6 приложение, если] ваше приложение отлично работает, он не требует никаких изменений в течение многих лет, нет планирует расширить функциональность, необходимость интегрировать его с более новыми приложения

Это говорит о факторах, повышающих риск для приложения VB6:

  • Необходимо изменить приложение (исправления ошибок или новые функции).
  • Необходимо интегрировать приложение с более новыми приложениями.
    • Но интеграция не требует миграции. Interop позволяет вам смешивать код .Net с VB6 (PDF-документ).

EDIT Я забыл упомянуть о главном риске. Перенос кода VB6 на .Net может быть большой задачей. По-моему, сейчас это проще, чем было в первые дни: теперь есть отличные коммерческие инструменты; и некоторые более свежие функции языка VB.Net делают его более простым. Риск состоит в том, что это может стать тяжелее, если вы оставите его слишком долго. Настанет момент, когда большинство людей, которые когда-либо будут мигрировать, уже мигрировали: тогда инструменты могут исчезнуть, а знания сообщества о миграции могут ухудшиться. /EDIT

Я уверен, что Microsoft в конечном итоге снизит время выполнения VB6, но имейте в виду, что Windows 8 по-прежнему поддерживает 16-разрядные приложения. А тут есть виртуальные машины. Лично я думаю, что приложения VB6 будут работать еще долго.

Ответ 2

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

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

Самый большой из них заключается в том, что добавление новых функций в ваше приложение VB6 дороже, чем если бы приложение было на более подходящем языке, например С# или VB.NET. Это происходит потому, что:

  • Разработчики VB6 стоят дороже. Поскольку разработчики не хотят использовать VB6, они потребуют больше денег, чтобы принять позицию в вашей компании (я бы).
  • У .NET есть намного большая стандартная библиотека и более сторонние компоненты, чем VB6. По моему опыту, в .NET есть еще много сторонних компонентов с открытым исходным кодом, в то время как компоненты VB6 часто являются собственностью.
  • Использование Visual Studio 2008 или 2010 более продуктивно, чем VB6 IDE из-за всех улучшений и функций за последние 10 лет.
  • .NET имеет лучшую поддержку тестирования модулей.
  • С# - лучший язык, чем VB6. Хороший разработчик С# может написать функцию намного быстрее, чем хороший разработчик VB6, потому что язык намного эффективнее.

Ответ 3

Существует много рисков... Например, если дыра безопасности обнаружена в среде исполнения VB6 - MS будет вкладывать деньги, чтобы исправить это? Есть хорошие шансы, что они будут, но в этот момент это так, что они могут не беспокоиться.

Оценка риска также должна основываться на том, насколько важна критически важная для вашего приложения, и насколько она велика/сложна. Если это лежит в основе вашего бизнеса, и однодневная стоимость простоя приведет к банкротству вашего бизнеса, я бы посмотрел на его замену довольно быстро тем, что действительно поддерживается.

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

Ответ 4

Другой возможный риск также связан с использованием старого ocx с 16-разрядным setup.exe для среды разработки.

Вы не можете запустить 16-битную настройку на новом 64-битном o.s. среды разработки.

Цитата, например, Farpoint Spread 3.0.16: у нее есть 16-разрядная установка разработчика, но в этом счастливом случае вы можете найти обновленное 32-разрядное приложение setup.exe.

В некоторых ocx нет 32-разрядного файла setup.exe для среды разработки.

Часто возникают проблемы со старыми серийными номерами ocx/регистрационными ключами. С некоторыми из этих ocx вы больше не получаете поддержки

Ответ 5

Приложения в VB6 сегодня сделаны в огромных количествах. Проще говоря, они надежны. Нет никаких рисков, но это просто препятствие, это не перекрестная платформа. Существует огромное количество онлайн-проектов VB6 с открытым исходным кодом для всех доменов. Он теперь используется в Linux. Он отлично работает со встроенными ASM для низкоуровневых функций.

Некоторые хорошие моменты:

  • Компоненты VB6 бесплатны.

  • VB6 более продуктивен, чем Visual Studio 2008 или 2010 или любой другой язык после VS6.

  • В отличие от сказанного выше, VB6 является лучшим языком, чем С# (тоже быстрее). Хороший разработчик VB6 может написать функцию много быстрее, чем хороший разработчик С#, потому что язык намного больше мощный.