|
|
|
Язык для описания логики на форме
|
|||
|---|---|---|---|
|
#18+
Есть задача: допустим что на форме много ComboBox'ов ; когда юзер выбирает в списке строку, то у последующих ComboBox'ов меняются списки, а нек. из них выключаются (Enabled:=False). Как сделать, проблем нет. Но хотим чтобы юзер (продвинутый, или админ) САМ описывал логику, на своих формах. Думали про таблицу, или про диаграмму (типо UML), но ИМХО не катит: тяжеловато, нужен спец. редактор. Поск. осн. объем описаний пойдет на тексты (списки), то текстовый скрипт ИМХО оптимален. Те. нужен ЯЗЫК: тупой как грабли, абс. понятный для юзера , и + эфф. реализуемый, чтоб не городить целый движок. В языке нужны: 1) структура (каждый блок соотв. ComboBox'у) 2) строки текста ( для заполнения списков) 3) условия, 4) лог. переменые, оператор присваивания. Размещение ComboBox'ов на форме описывать не надо, будет автоматически размещаться. Рыла в инете, чтоб не изобретать велосиаед, ничо не нарыла. Буду признательна, за ссылки на аналоги. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2011, 18:13 |
|
||
|
Язык для описания логики на форме
|
|||
|---|---|---|---|
|
#18+
Делал как раз такой свой язык. Листы, Комбо, Опшион группы, Чек боксы и группы. На чистом си + своя оконная библиотека в досе. О-о-о-о-о-очень давно. Больше 20 лет назад. Не очень сложно и громоздко. Может быть, что сделать самому проще и быстрее, чем найти готовый. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2011, 21:27 |
|
||
|
Язык для описания логики на форме
|
|||
|---|---|---|---|
|
#18+
ИринаВНо хотим чтобы юзер (продвинутый, или админ) САМ описывал логику, на своих формах. дайте ему javascript или Python ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2011, 22:55 |
|
||
|
Язык для описания логики на форме
|
|||
|---|---|---|---|
|
#18+
Программист-ЛюбительДелал как раз такой свой язык. Листы, Комбо, Опшион группы, Чек боксы и группы. На чистом си + своя оконная библиотека в досе. О-о-о-о-о-очень давно. Больше 20 лет назад. Не очень сложно и громоздко. Может быть, что сделать самому проще и быстрее, чем найти готовый. Интресует именно язык, заточеный под такие задачи, а не готовая реализация. Если у Вас остался кусочек скрипта на Вашем, то не могли бы Вы выложить? Было бы очень интересно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2011, 00:20 |
|
||
|
Язык для описания логики на форме
|
|||
|---|---|---|---|
|
#18+
Увы, исходники и файлы по этому проекту не сохранились... МС-ДОС 3.3 :: 1мегабайт ОЗУ :: 40мегабайт диск :: ТурбоС... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2011, 09:22 |
|
||
|
Язык для описания логики на форме
|
|||
|---|---|---|---|
|
#18+
Программист-Любитель , скажите плзз: свой язык Вы придуали сами? Искали ли аналоги? Реально похож ли Ваш язык на известные? Очень интересно Все, по этой теме. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2011, 20:27 |
|
||
|
Язык для описания логики на форме
|
|||
|---|---|---|---|
|
#18+
ИринаВ, язык можно взять любой достаточно распространённый сготовым интерпретатором.Ваша задача в этом случае создать вменяемую объектную модель и предоставить её пользователю. 1С как пример (прошу не кидаться камнями) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2011, 21:38 |
|
||
|
Язык для описания логики на форме
|
|||
|---|---|---|---|
|
#18+
Изопропил , не. Узкая задачка: конечный автомат, состояния в текстах. Зачем на этои вешать движок? И любой язык js/vbs/python/... не заточен под обработку текстов. Это "универсальные" языки, куча синтаксиса. Если в них просто, по условию, присвоить строчку текстовую , то будет языковых элементов, больше, чем сама эта строчка. Хочу язык для обработки текстов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2011, 23:49 |
|
||
|
Язык для описания логики на форме
|
|||
|---|---|---|---|
|
#18+
ИринаВЕсли в них просто, по условию, присвоить строчку текстовую , то будет языковых элементов, больше, чем сама эта строчка.$a = 'строчка' if условие; куда уж короче? ИринаВХочу язык для обработки текстов.Есть такой: Practical Extraction and Report Language, но Вам наверное не понравится :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2011, 00:55 |
|
||
|
Язык для описания логики на форме
|
|||
|---|---|---|---|
|
#18+
ИринаВ, XUL :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2011, 08:31 |
|
||
|
Язык для описания логики на форме
|
|||
|---|---|---|---|
|
#18+
ИзопропилИринаВНо хотим чтобы юзер (продвинутый, или админ) САМ описывал логику, на своих формах. дайте ему javascript или Python Меня всегда удивлял этот штамп. Зачем для описания форм JS или Pyton? По моему это как-раз то самое место, где декларативные языки рулят и бибикают :) Во вложении примерчик из одного уже закрытого проекта. Кстати, зависимые комбики там таки тоже есть. Если кому интересно, с удовольствием все прокомментирую. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2011, 09:47 |
|
||
|
Язык для описания логики на форме
|
|||
|---|---|---|---|
|
#18+
Сэнкс. Если не нарою, ничего, то будем делать в XML, ясен пень. Но пока еще , есть время на мечты о высоком-светлом-чистом. Perl не катит, вместе с JS/VBS. Тут ключвое понятие ЮЗЕР. У него своя область, и свои заморочки, хватает без наших. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2011, 13:20 |
|
||
|
Язык для описания логики на форме
|
|||
|---|---|---|---|
|
#18+
ИринаВСэнкс. Если не нарою, ничего, то будем делать в XML, ясен пень. Но пока еще , есть время на мечты о высоком-светлом-чистом. Perl не катит, вместе с JS/VBS. Тут ключвое понятие ЮЗЕР. У него своя область, и свои заморочки, хватает без наших. Тут все зависит от того на какие трудозатраты вы готовы пойти. Этот XML писался в рассчете на GUI-редактор, но выяснилось, что дешевле писать его руками. А так заложено было все и GUI и рефакторинг и многое другое :) Кстати, обратите внимание на template. Они сильно укорачивают описание ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2011, 14:12 |
|
||
|
Язык для описания логики на форме
|
|||
|---|---|---|---|
|
#18+
Кстати и не XML это :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2011, 14:13 |
|
||
|
Язык для описания логики на форме
|
|||
|---|---|---|---|
|
#18+
ИринаВ, про реактивное программирование не слыхали? я думаю - норма вариант. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2011, 05:09 |
|
||
|
Язык для описания логики на форме
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaN , не. Как реализовать процесс, тут нет проблем, никаких. В любом языке, напр. в Delphi/C/..., любой. Проблема, чтоб юзер описывал, сам, понятным себе образом. Можно в лоб написать, напр. опять в Delphi Код: plaintext 1. 2. 3. 4. 5. 6. 7. Код: plaintext 1. 2. 3. 4. 5. Теперь. Можем придумать такой язык, лехко, за 30 мин. Но вопрос: как реальный юзер, не программер, его воспримет? Я ищу язык, который проверен, на реальных людях. ИМХО такие задачи кем то делались уже, много раз. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2011, 12:05 |
|
||
|
Язык для описания логики на форме
|
|||
|---|---|---|---|
|
#18+
ИринаВZyK_BotaN , не. Как реализовать процесс, тут нет проблем, никаких. В любом языке, напр. дак я и предлагаю. что-бы узер в стиле реактивного программирования описывал. даем пользователю набор необходимых ф-й работы с потоком событий, плюс ф-й работы с примитивами(значениями компонентов) вот для реализации счетчика пример. есть на форме две кнопки и текстовое поле, мы хотим реализовать счетчик. текстовое поля изначально равно нулю, а кнопки делают инкремент и декремент соответственно, вот код, который напишет юзер. собітияИнкремент = отобразить(кнопкаОдин.клик, инкримент) собитияДекримент = отобразить(кнопкаДва.клик, декремент) измененияСчетчика = объеденить(собитияинкремент, событияДекремент) значениТекстовогоПоля = аккумулировать(0, измененияСчетчика ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2011, 12:12 |
|
||
|
Язык для описания логики на форме
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaN , ИМХО нужно более высокий уровен, ориент. на юзера. "Не плодить сущности сверх необхдимого" (C) Не надо инкремента-декремента-акумулятора. А надо типо: Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2011, 12:32 |
|
||
|
Язык для описания логики на форме
|
|||
|---|---|---|---|
|
#18+
Писал однажды язык а ля 1С. И возился с NANT и Cruise Control. На мой взгляд, язык вплетенный в XML (например NANT-овский) - плохой язык. А писать свой собственный язык - это около трех человекомесяцев. Это если редактор языка - больше чем просто работа в командной строке. И если по-старинке, по книге Свердлова например. Кое-что изменилось в теме создания своих языков, но специально я не изучал. Например Языковой инструментарий ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2011, 12:46 |
|
||
|
Язык для описания логики на форме
|
|||
|---|---|---|---|
|
#18+
ИринаВZyK_BotaN , ИМХО нужно более высокий уровен, ориент. на юзера. "Не плодить сущности сверх необхдимого" (C) Не надо инкремента-декремента-акумулятора. А надо типо: Код: plaintext 1. 2. синтаксис - сути не меняет. но напиши тогда более высокоуровневое непротиворичивое описания этого языка. врядли оно выйдит проще чем я предложил. суть такая, есть набор ф-й с потоками(очень ограничен: отобразить, аккумулировать, объеденить, и т д и т п. и есть набор примитивных ф-й нат данными инремент, декремент. главное правильно подобрать этот набор. ну и синтаксис красивый придумать. в твоем примере счетчик изменяеться из разных мест, что более высокоуровневым пример не делает, а лишь делает неявным операцию объединения, а также отображения. был тут один любитель неявных операций, РСтудио его звали... мое мнение - от неявности суть не меняется, всеравно операции объеденения и отображения реализовать придется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2011, 15:27 |
|
||
|
Язык для описания логики на форме
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaN , как то Вы мну ИМХО не понимаете . С реализацией ЧЕГО УГОДНО нет проблем, НИКАКИХ. Проблема в пользователях: 1) не умеют программироать, и не должны уметь 2) имеют другое восприятие и мышление, чем прогрммисты 3) заняты своими вопросами, должны находиться в своей нише, обычной. Юзер не знает такого слова "инкремент" или "объединение". Тока понимает "пункт", "список", и тд, или "если в списке, указали пункт ... , то это значит ...". Вот такой нужен уровеню Придумать язык, по СВОЕМУ вкусу, это я могу, тож нет проблемм. Но не уверена что юзеру это будет хорошо. Хочу проверенный. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2011, 15:50 |
|
||
|
Язык для описания логики на форме
|
|||
|---|---|---|---|
|
#18+
ИринаВZyK_BotaN , как то Вы мну ИМХО не понимаете . С реализацией ЧЕГО УГОДНО нет проблем, НИКАКИХ. Проблема в пользователях: 1) не умеют программироать, и не должны уметь 2) имеют другое восприятие и мышление, чем прогрммисты 3) заняты своими вопросами, должны находиться в своей нише, обычной. Юзер не знает такого слова "инкремент" или "объединение". Тока понимает "пункт", "список", и тд, или "если в списке, указали пункт ... , то это значит ...". Вот такой нужен уровеню Придумать язык, по СВОЕМУ вкусу, это я могу, тож нет проблемм. Но не уверена что юзеру это будет хорошо. Хочу проверенный. научить юзера тому языку, что я предложил легко, нужно просто показать картинку, картинку скопировать в блокнотех, а то ничего не видно )) Код: plaintext 1. 2. 3. 4. 5. 6. 7. че тут простому юзеру не понять? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2011, 16:05 |
|
||
|
Язык для описания логики на форме
|
|||
|---|---|---|---|
|
#18+
ИринаВ, Может тогда подходы пересмотреть вообще к организации формы/системы, раз у вас столько диалогов и пользователь должен ими управляться. Может быть эту "кучу Checkbox-ов" можно чем-то заменить?(например таблицей) :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2011, 16:05 |
|
||
|
Язык для описания логики на форме
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2011, 17:52 |
|
||
|
Язык для описания логики на форме
|
|||
|---|---|---|---|
|
#18+
ИринаВ1) не умеют программироать, и не должны уметь 2) имеют другое восприятие и мышление, чем прогрммисты 3) заняты своими вопросами, должны находиться в своей нише, обычнойВ такой постановке выход только один: гуи с сильной-сильной защитой от дурака. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2011, 19:05 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=37515246&tid=1342620]: |
0ms |
get settings: |
10ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
183ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
87ms |
get tp. blocked users: |
1ms |
| others: | 254ms |
| total: | 571ms |

| 0 / 0 |
