Миграция приложения Powerbuilder 9 на 12

Недавно я начал поддерживать приложение PowerBuilder 9, которое наконец-то обновляется до PowerBuilder 12. Я пытаюсь понять, стоит ли мне переходить на PowerBuilder Classic или.NET. Мне кажется, что переход на PB.NET даст мне больше гибкости в будущем, но чтение документации не даст мне четкого представления о том, какие выгоды будут иметь. Очевидно, что я мог бы воспользоваться преимуществами форм WPF и использовать оболочку Visual Studio, но я не знаю, достаточно ли это повод для изменений.

1 ответ

Решение

Хороший вопрос, а не тривиальный.

С положительной стороны, вы получаете элементы управления WPF и макета. Если вы разработчик, который не планирует заходить слишком далеко, это обеспечит вас красивыми, блестящими элементами управления, изменяемостью и изменением размера / масштабирования, встроенными в художник. Если вы увлеченный гик, вы можете начать делать такие вещи, как встраивание элементов управления (например, индикатор выполнения внутри кнопки управления, представляющий таймер обратного отсчета для кнопки, который будет действием по умолчанию, когда время истекает в синхронизированном диалоге).), хотя, когда вы и PB пытаетесь сделать что-то с вашим XML, я предполагаю, что вы можете время от времени наступать друг другу на ноги.

Кроме того, вы получаете легкий доступ к обширной библиотеке функций.NET в дополнение к PowerScript. Опять же, легкомысленный разработчик, возможно, не получит от этого большого преимущества, но тип "нос к экрану" получит удовольствие от простого встраивания функциональности SMTP в свое приложение.

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

Другим недостатком, который я обнаружил, была производительность, особенно запуск приложения (и я слышал, что это распространенная жалоба среди разработчиков WPF, а не только разработчиков PB.NET). Я ожидал, что все будет работать быстрее, но обнаружил, что это смешанная сумка.

Еще один момент: последняя версия PB (на момент написания) -12.6, это исправление для 12.5. Если вы купите 12.0, вы не сможете обновиться бесплатно; скачок между 12.0 и 12.5 является "основным" выпуском, который требует платного обновления. Возможно, вам нужна версия n-1, но если нет, то цель покупки 12.5.

Удачи.


@Matt Balent косвенно поднял еще один хороший момент в комментариях. Переходя с PB9 на PB12, если вы опытный разработчик PB, вы, вероятно, сможете продуктивно работать в тот же день, не пропуская ни секунды. Переход на PB.NET повлечет за собой нетривиальную кривую обучения. Среда IDE значительно отличается, поэтому даже установка атрибута Default в CommandButton в первый день может разочаровать (... не невозможно, но если это ваша первая задача, я планирую 30 минут вместо 30 секунд).

Другие вопросы по тегам