powered by simpleCommunicator - 2.0.27     © 2024 Programmizd 02
Map
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / PB9 vs Delphi/BCB
4 сообщений из 4, страница 1 из 1
PB9 vs Delphi/BCB
    #32228647
funikovyuri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я хочу задать вопрос от лица все тех кто рескнул и решил переходить с Delphi на PB.
Все ли что мы могли в Delphi мы сможем и в PB?
Будем исходить из предположения что в Delphi мы использовали DevExpress Components
Можно ли и какой ценой сделать из Data Windows что-то по функционалу не уступающему Quantum Grid?

Можно ли реализовать функционал LayoutManager?

Где можно почитать про управление большими проектами в PB?

Насколько надежен/удобен уго Source Control?
...
Рейтинг: 0 / 0
PB9 vs Delphi/BCB
    #32228778
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я прямо только что с Delphi + DevExpress. Сравнивать буду естественно с точки зрения построения клиентских приложений БД, все остальные возможности Delphi в расчет не беру:

DataWindow vs QuantumGrid
- я бы сказал DataWindow однозначно выигрывает, так как являясь еще и источником данных в одном флаконе позволяет сразу описать получение данных, сохранения их изменений, правила ввода, форматирование своих элементов, поддерживает сортировку и фильтрацию. QuantumGrid + TDataSet в связке умеют примерно то же самое, однако все это разбивается по событиям этих компонентов, логика замыливается, сортировка и группировка поддерживается только при включенном LoadAllRecord в QuantumGrid, что приводит к тому, что он фактически формирует у себя копию данных TDataSet и с ней работает, что приводит к очевидным проблемам синхронизации текущей записи у него и у TDataSet. Так же гораздо удобнее у DataWindow сделаны Lookup поля, позволяющие в виде выпадающего списка указать другой DataWindow. У QuantumGrid это тоже реализованно, но в силу опять же компонентно-ориентированности Delphi смахивает на танец с бубном, да и обратиться в коде к выпадающему гриду не так уж и легко и безопасно. По печати DataWindow опять же обгоняет QuantumGrid, так как является мощным отчетником, в отличие от примочки для печати QuantumGrid.

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


PB vs Delphi
- естественно рассматриваем не семантику языка, а модель работы. Итак очевидные преимущества PB: наличие сборщика мусора, наличие пула глобальных обьектов, поддержка очередей вызовов, наличие возможности динамического вызова событий-методов (условно назовем их так, чтобы не путать с событиями-делегатам Delphi), поддержка в языке конструкций SQL, легкое создание визуальных иеархий классов (в Delphi только есть наследование форм, чтобы написать визуальный компонент для проекта придется его регистрировать в IDE и включать в пакет, хотя можно конечно воспользоваться Frame, но это прокатывает только для составных компонентов, а не для наследования стандартных). Так же я считаю довольно интересной и удобной модель ООП в PB при визуальном проектировании, когда контролс, положенный на форму фактически просто внутри формы обьявляется как тип и наследуется от выбранного типа контролса, что означает, что весь код на события фактически хранится внутри его класса-наследника, т.е. this = Controls, в то время, как в Delphi на событие self = parent (form). Так же стоит сюда приплюсовать довольно таки мощный набор базового функционала PB - один только DataWindow является одновременно мощным средством просмотра и редактирования данных, отчетником, графиком и кросстабом - в Delphi же без сторонних компонент не обойтись, которые как известно тоже денег стоят и не малых и нет гарантии, что в них нет ошибок и они будут поддерживаться производителями для следующих версий Delphi (например в одном только пакете компонент DevExpress я кучу ошибок лично исправил).

- в чем Delphi удобнее: поддержка делегирования функций и методов классов позволяет создавать компонентно-событийную модель, что является несомненным преимуществом при написании неких базовых классов-контроллеров (в PFC - услуг), обслуживающих определенные классы и способных самостоятельно подписываться и реагировать на события обслуживаемого класса. Плюс несомненно более удобная IDE, причем не падающая "чисто случайно", как это бывает в PB. То же самое и касается отладчика. Не маловажную роль играет то, что в Delphi есть виртуальная таблица методов классов, благодаря которой во первых при изменении модели класса предка не приходится перекомпилировать все классы-наследники и во вторых можно в рунтайме проводить полноценное приведение к типам (хотя с точки зрения построения клиентских приложений это я не считаю важным). Так же не стоит забывать наболевшее для PB - поддержку встроенного Layout Manager, позволяющего проводить выравнивание визуальных компонент на родителе, поддержку панелей как контейнеров для контролсов.

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

Итак - что мы имеем:
в Delphi как минимум нехватает сборщика мусора, другой модели VCL, пула глобальных обьектов и аналога DataWindow (не думаю, что хоть что то можно реализовать собственными силами)

в PB явно не хватает Layout Manager, поддержки событийной модели и панелей контейнеров (первое и второе можно элементарно реализовавать самим, а вот панели уже полностью на совести разработчиков PB).

Вроде и все, что могу пока сказать по данному вопросу.
...
Рейтинг: 0 / 0
PB9 vs Delphi/BCB
    #32229258
sergei_p
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как в PB добавить возможность инкрементного поиска в ComboBox который ссылается на DropDataWindow как у DevExpress
...
Рейтинг: 0 / 0
PB9 vs Delphi/BCB
    #32229424
Фотография Филипп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sergei_p

Не знаю, правильно ли я понял, уточни, но если понял :-), то в PFC посмотри как dropdown search service сделан. (pfc_n_cst_dwsrv_dropdownsearch, ни соответственно как он к pfc_u_dw прикручен)...
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / PB9 vs Delphi/BCB
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали тему (0):
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]