powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Генераторы форм vs Runtime создание формы
25 сообщений из 192, страница 7 из 8
Генераторы форм vs Runtime создание формы
    #36475984
-lesha-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vill_agerЛучший вариант - совместить создания 99% форм (коровников :) ) на лету из описания с возможностью вызова 1% форм сделанных в дизайнере или вручную.
Для цивильности коровников - в описаниях форм хранить элементы разметки формы.
Для придания функциональности - куски скриптов на разные события

я такой велосипед сделал на python+qt (пока черновик)

есть еще примеры таких рабочих систем?

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

Наших клиентов в целом удовлетворяет. Форм сделанных в ручную, думаю, намного меньше 1%.

Функциональность получаем без использования событий, путем написания формул (можете называть это языком – но это просто формулы).

Пример:

ItemPrice (берется из справочника)
Qty (редактируемое)
Price (редактируемое) = ItemPrice
Total = Price *Qty

Формулы выполняются только в случае, если хотя бы одна составляющая поменялась.
Т.е если мы на форме выбрали другую номенклатуру, то пересчитается Price и Total, а если поредактировали Price, то поменяется Total.

Про задание поведения можно посмотреть тут
Пример
Когда ItemPrice >1000 поле Price сделать ReadOnly.
...
Рейтинг: 0 / 0
Генераторы форм vs Runtime создание формы
    #36476103
vill_ager
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
-lesha-
Функциональность получаем без использования событий, путем написания формул (можете называть это языком – но это просто формулы).
а я решил ни в чем себе не отказывать - и события, и язык - полный доступ к форме для тюнинга :)
зато руки развязаны - любые проверки и реакции на действия пользователя
зы: формулой трудновато описать такое - если пользователь ввел неправильные данные - заблокировать событие сохранения (и сделать цвет формы ярко-красным :) )
...
Рейтинг: 0 / 0
Генераторы форм vs Runtime создание формы
    #36476302
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vill_agerУ себя примерно так делаю
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
справочник=форма()
справочник.добавить_поле("код")
справочник.добавить_поле("текст")

справочник.начать_горизонтальный_раздел()
справочник.добавить_поле("..")
...
справочник.закрыть_раздел()

справочник.начать_вертикальный_раздел()
справочник.добавить_поле("..")
...
справочник.закрыть_раздел()

справочник.начать_страницу()
.
справочник.начать_страницу()
.
справочник.начать_страницу()
.
закрыть_раздел()

1С ?
...
Рейтинг: 0 / 0
Генераторы форм vs Runtime создание формы
    #36476357
vill_ager
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Petro1231С ?
нет

тынц
...
Рейтинг: 0 / 0
Генераторы форм vs Runtime создание формы
    #36476454
vill_ager
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vill_agerPetro1231С ?
нет

тынц
но смысл тот же
...
Рейтинг: 0 / 0
Генераторы форм vs Runtime создание формы
    #36476626
ddddddddddd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Petro123vill_agerУ себя примерно так делаю
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
справочник=форма()
справочник.добавить_поле("код")
справочник.добавить_поле("текст")

справочник.начать_горизонтальный_раздел()
справочник.добавить_поле("..")
...
справочник.закрыть_раздел()

справочник.начать_вертикальный_раздел()
справочник.добавить_поле("..")
...
справочник.закрыть_раздел()

справочник.начать_страницу()
.
справочник.начать_страницу()
.
справочник.начать_страницу()
.
закрыть_раздел()

1С ?


не могу понять одного - почему надо так извращаться, вместо того, что бы ипспользовать полноценный язык с хорошим отладчиком?
...
Рейтинг: 0 / 0
Генераторы форм vs Runtime создание формы
    #36476643
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ddddddddddd1С ?
не могу понять одного - почему надо так извращаться, вместо того, что бы ипспользовать полноценный язык с хорошим отладчиком?
потому что не пробовали :)
Это и есть велосипедостроение.
Или когда нибудь докажут, что "земля круглая"
...
Рейтинг: 0 / 0
Генераторы форм vs Runtime создание формы
    #36476693
ddddddddddd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Petro123ddddddddddd1С ?
не могу понять одного - почему надо так извращаться, вместо того, что бы ипспользовать полноценный язык с хорошим отладчиком?
потому что не пробовали :)
Это и есть велосипедостроение.
Или когда нибудь докажут, что "земля круглая"

Я то пробовал, но уже двано завязал с этим.
...
Рейтинг: 0 / 0
Генераторы форм vs Runtime создание формы
    #36476737
vill_ager
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
dddddddddddне могу понять одного - почему надо так извращаться, вместо того, что бы ипспользовать полноценный язык с хорошим отладчиком?
может я не понятно написал - я использую полноценный python
а русский текст только здесь - для того, чтобы не писать комменты

зы:с 1ц никогда не работал :)
...
Рейтинг: 0 / 0
Генераторы форм vs Runtime создание формы
    #36476750
ddddddddddd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vill_agerdddddddddddне могу понять одного - почему надо так извращаться, вместо того, что бы ипспользовать полноценный язык с хорошим отладчиком?
может я не понятно написал - я использую полноценный python
а русский текст только здесь - для того, чтобы не писать комменты

зы:с 1ц никогда не работал :)

Вообще-то здесь обсуждаются генераторы форм в ран0тай
...
Рейтинг: 0 / 0
Генераторы форм vs Runtime создание формы
    #36476753
ddddddddddd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vill_agerdddddddddddне могу понять одного - почему надо так извращаться, вместо того, что бы ипспользовать полноценный язык с хорошим отладчиком?
может я не понятно написал - я использую полноценный python
а русский текст только здесь - для того, чтобы не писать комменты

зы:с 1ц никогда не работал :)

Вообще-то здесь обсуждаются генераторы форм в ран0тай
...
Рейтинг: 0 / 0
Генераторы форм vs Runtime создание формы
    #36476854
vill_ager
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
dddddddddddВообще-то здесь обсуждаются генераторы форм в ран0тай
Прошу прощения

просто хотел отметить, что форма в рантайм может генерироваться из описания (метаданных), а может путем выполнения программного кода.

Первый вариант видно в 1ц, Искре, еще тут TNP пробегала.
А вот варианта с коротким скриптом не видел. Может и не нужен такой? Мне лично иногда легче несколько строк в скрипте написать, чем создавать новое описание. То же самое и с отчетами.
...
Рейтинг: 0 / 0
Генераторы форм vs Runtime создание формы
    #36477153
_мод
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
-lesha-Функциональность получаем без использования событий, путем написания формул (можете называть это языком – но это просто формулы).
Функций не хватает и логических выражений
...
Рейтинг: 0 / 0
Генераторы форм vs Runtime создание формы
    #36477239
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vill_ager,
питон люблю именно за лаконичность ЯП и краткость.
Его часто сравнивают с Delphi.
Просто в ЯП высокого уровня такие конструкции нет смысла "зашивать".

Поэтому вы определитесь, вероятно вам фреймворк нужен (типа 1С)
...
Рейтинг: 0 / 0
Генераторы форм vs Runtime создание формы
    #36477278
nibo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если кому интересно - могу поделиться. Сейчас у нас в компании несколько систем написаны на основе одного и того же самописного движка. Написан он на ASP.NET, суть в том, что кодить там не приходится вообще. Тупо накидываешь поля, кучей настроек задаешь их поведение. как таковое, и в зависимости от других полей. Можно указывать дочерние карточки, карточки куда переносятся данные. В общем учтено все. Просто накидал полей, задал сырцовый html для разметки, который потом преобразуется в XHTML отображающий конечный вид с данными. Дополнять такую систему функционалом для пользователей - одно удовольствие. Честно скажу.
А вот пользователям туго. Несмотря на очень хорошо настроенное кэширование тормоза просто жуткие. Интерфейс отрисовывается прямо на глазах. Это по началу даже забавно, но начинает быстро утомлять. И если, не дай бог, ты где-то что-то косянул, то в дебаге несколько дней просидишь, прежде чем найдешь, в чем ошибка.
Сразу скажу, что это самый красиво спроектированный движок из тех, что я видел. Но даже от него косяков очень много.
С точки зрения программиста такие системы очень красивы и интересны. Но пользователь от такой будет страдать.
...
Рейтинг: 0 / 0
Генераторы форм vs Runtime создание формы
    #36477313
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nibo
-тормоза просто жуткие. Интерфейс отрисовывается прямо на глазах.
-если, не дай бог, ты где-то что-то косянул, то в дебаге несколько дней просидишь, прежде чем найдешь, в чем ошибка.

nibo
это самый красиво спроектированный движок из тех, что я видел.

как-то не вяжется одно с другим.
или хотели сказать "самый не красиво спроектированный"?
...
Рейтинг: 0 / 0
Генераторы форм vs Runtime создание формы
    #36477334
nibo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iscrafmnibo
-тормоза просто жуткие. Интерфейс отрисовывается прямо на глазах.
-если, не дай бог, ты где-то что-то косянул, то в дебаге несколько дней просидишь, прежде чем найдешь, в чем ошибка.

nibo
это самый красиво спроектированный движок из тех, что я видел.

как-то не вяжется одно с другим.
или хотели сказать "самый не красиво спроектированный"?

Нет. Я хотел сказать то, что сказал. Просто у всех решений есть свои минусы.
У динамического создания форм минус это тормоза, вызванные как раз построением формы. Код там написан очень красиво, я в разработке движка не участвовал и сейчас разбирая его взглядом со стороны даже не могу указать мест, где код можно было бы значительно оптимизировать. Но просто на таких масштабах система не вывозит. То же самое как касательно 1С. Попробуйте на нее хотя бы 500 человек одновременно посадить на один сервер.
...
Рейтинг: 0 / 0
Генераторы форм vs Runtime создание формы
    #36477355
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nibo,

к динамическим формам это не относится. Вопрос о том, красиво ли спроектирована система, которая "жутко тормозит", хорошо, оставим. Считате что это из-за динамического создания форм, а сама система "красиво спроектирована" и "код написан очень красиво", пусть так и будет.
...
Рейтинг: 0 / 0
Генераторы форм vs Runtime создание формы
    #36477391
nibo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iscrafmnibo,

к динамическим формам это не относится. Вопрос о том, красиво ли спроектирована система, которая "жутко тормозит", хорошо, оставим. Считате что это из-за динамического создания форм, а сама система "красиво спроектирована" и "код написан очень красиво", пусть так и будет.
Я не считаю, а знаю, что это так. Потому что тесты по производительности проводил. Обеспечение динамичного отображения формы, где щелкаешь одну галочку, и из-за этого должны стать видимы десятки полей, а десятки полей должны стать невидимы дорогого стоит, и все это без единой строчки кода когда пользователей на одном сервере несколько сотен.
Если бы пришлось бы это все кодировать, то писать пришлось бы в десятки раз дольше, и сопровождать потом было бы в десятки раз труднее, если вообще возможно.
Так что у всего есть две стороны.
Косяк тут один - все системы вертятся на одном сервере. А их много. И все работают по одному принципу. Тут решение кроется в разнесении систем по нескольким серверам. Что в России делается нечасто. И в частности у нас. Если у ТС ситуация с серверами тоже не айс, то лучше от динамического построения держаться вдалеке. Или возлагать его на клиентскую часть, что тоже очень спорно.
...
Рейтинг: 0 / 0
Генераторы форм vs Runtime создание формы
    #36477426
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
niboЯ не считаю, а знаю, что это так. Потому что тесты по производительности проводил. Обеспечение динамичного отображения формы, где щелкаешь одну галочку, и из-за этого должны стать видимы десятки полей, а десятки полей должны стать невидимы дорогого стоит, и все это без единой строчки кода когда пользователей на одном сервере несколько сотен.
Если бы пришлось бы это все кодировать, то писать пришлось бы в десятки раз дольше, и сопровождать потом было бы в десятки раз труднее, если вообще возможно.
Так что у всего есть две стороны.

только не называйте это "красиво спроектировано". Не понятно о чем Вы вообще. Описываете неудачную реализацию runtime-построения форм. Только при чем здесь динамические формы как таковые?
...
Рейтинг: 0 / 0
Генераторы форм vs Runtime создание формы
    #36477480
nibo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iscrafmniboЯ не считаю, а знаю, что это так. Потому что тесты по производительности проводил. Обеспечение динамичного отображения формы, где щелкаешь одну галочку, и из-за этого должны стать видимы десятки полей, а десятки полей должны стать невидимы дорогого стоит, и все это без единой строчки кода когда пользователей на одном сервере несколько сотен.
Если бы пришлось бы это все кодировать, то писать пришлось бы в десятки раз дольше, и сопровождать потом было бы в десятки раз труднее, если вообще возможно.
Так что у всего есть две стороны.

только не называйте это "красиво спроектировано". Не понятно о чем Вы вообще. Описываете неудачную реализацию runtime-построения форм. Только при чем здесь динамические формы как таковые?
Там не рантайм, а именно динамическое построение. Я сказать пытаюсь, что каждая система требует выделения соответствующего количества машинных ресурсов. Вы же не будет сервер 1С накатывать на пентиум 300 Mhz с 64 mb оперативки. Тут нужный ресурс не выделили, и в России это частое дело. Вот что я сказать пытаюсь.
Ладно, мне похоже вас не убедить ни в чем, поэтому я свое участие лучше прекращу, чем пытаться что-то разьяснять.
...
Рейтинг: 0 / 0
Генераторы форм vs Runtime создание формы
    #36477614
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
niboТам не рантайм, а именно динамическое построение.
Есть описание модели представления, в момент исполнения (рантайм) по нему формируется (динамически) представление (допустим форма).
...
Рейтинг: 0 / 0
Генераторы форм vs Runtime создание формы
    #36477639
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
наверное модель представления размещена в БД на сервере и собирается запросами
...
Рейтинг: 0 / 0
Генераторы форм vs Runtime создание формы
    #36477833
vill_ager
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Petro123vill_ager,
питон люблю именно за лаконичность ЯП и краткость.
Его часто сравнивают с Delphi.
Просто в ЯП высокого уровня такие конструкции нет смысла "зашивать".

Поэтому вы определитесь, вероятно вам фреймворк нужен (типа 1С)

таки да. фреймворк на питоне. тем и развлекаюсь :)
1ц не предлагать :). Хотя 8.2 как раз сделана на идеях из этого топика. Только вот интерфейс...

по поводу тормозов... - все тормозит
сколько лет SWING существует? и все тормозит :)
...
Рейтинг: 0 / 0
Генераторы форм vs Runtime создание формы
    #36477883
_мод
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
niboИли возлагать его на клиентскую часть, что тоже очень спорно.
Ессно формы генерируются на клиенте. Разницы между динамическими и статическими на глаз не видно.
...
Рейтинг: 0 / 0
25 сообщений из 192, страница 7 из 8
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Генераторы форм vs Runtime создание формы
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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