Предоставляет ли Powerbuilder 12 какие-либо возможности рефакторинга? - PullRequest
1 голос
/ 09 октября 2011

Для переноса устаревшего кода PB в эпоху .NET может потребоваться серьезный рефакторинг для правильного выполнения работы. Наш код, например, имеет некоторые остатки перед использованием объекта, а также устаревшие функции, такие как MDI, PBNI и т. Д. Мне интересно, какую помощь мы получим от оболочки VS, когда речь заходит о возможностях рефакторинга - разбивая длинные функции на отдельные, поиск всех абонентов определенной функции или события и т. д.

Классическая среда разработки ужасна для таких задач. Разве использование VS теперь облегчает их?

1 Ответ

0 голосов
/ 09 октября 2011

Ответы на ваши вопросы: ДА по большей части, но не так круто, как в Visual Studio. PB IDE лучше днем ​​и ночью, чем до полной версии Visual Studio IDE.

PB имеет встроенный базовый рефакторинг , например, что-то вроде переименования функции во всем проекте может быть легко выполнено. Вот вывод, сгенерированный, когда я переименовал функцию в одном из моих проектов. И у меня был открыт один из файлов, оболочка Visual Studio обнаружила его и попросила перезагрузить локальный файл.

 Replace all "ConnectDB", "DBConnect", Subfolders, Find Results 1, "Entire Solution"
 H:\Dev\PBWS\pb_data.pbl\pb_data.sra(42,18):liRtn = gnv_data.DBConnect()
 H:\Dev\PBWS\pb_data.pbl\n_data_factory.sru(29,25):public function integer DBConnect ()
 H:\Dev\PBWS\pb_data.pbl\n_data_factory.sru(38,14):liRowCount = DBConnect()
 H:\Dev\PBWS\pb_data.pbl\n_data_factory.sru(103,25):public function integer DBConnect ();

 Total replaced: 4  Matching files: 2  Total files searched: 13

PowerBuilder 12.5.NET имеет возможность " Перейти -> Определение " для перехода к объявлениям функций / классов. Он не такой крутой, как Visual Studio, в том смысле, что функции PowerBuilder не такие «открытые», как .NET Framework, поэтому вы не можете щелкнуть правой кнопкой мыши по функции GetItemString и ожидать появления внутренних объявлений.

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

На положительной ноте Sybase включила удивительный intellisense / завершение кода Visual Studio. Он отзывчив, точен и прогнозируем, как при работе в Visual Studio IDE на C #. Функции PB.NET, а также полезные функции оболочки Visual Studio делают разработку PB интересной для работы.

...