Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Графическое программирование для пользователя
|
|||
|---|---|---|---|
|
#18+
UK0IAI И было просто жутко интересно - самим нечто подобное наваять. Ага, я это и имел ввиду, когда писал <Как правило, всем этим делом заправляет "суперуниверсальный движек" написаный только для того, чтобы написать "суперуниверсальный движек"> Все мы были молодыми "крутыми програмерами", которые стремились поразить мир. Я тоже в свое время Paradox узлом завязывал, какой-то генератор форм на нем делал или отчетов, уже и не помню. Просто недавно зашел к знакомым "на фирму", решили они похвастаться своей немереной крутостью. - "У нас вся система основана на XML" (многозначительный взгляд) - "Это как ?" - "Ну вот смотри, настройки всех форм и меню хранятся в XML " (многозначительный взгляд) " и изменить весь интерфейс можно без перекомпиляции" - "И что ?" - "Ну как же, изменить весь интерфейс можно без перекомпиляции" Как водится, всем этим заведует Engine, написаный местным гением, который при старте втягивает в себя xml и разрисовывает интерфейс. Само собой "гений" занят исключительно совершенствованием своего engin-а и прикручиванием к нему очередной фичи, которая кому-то понравилось. Чтобы все было "суперуниверсально" Engine называется "корпоративной средой разработки", а гений "ведущим системным программистом" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.12.2004, 15:19 |
|
||
|
Графическое программирование для пользователя
|
|||
|---|---|---|---|
|
#18+
однажды в нашей стране один крупный партийный чиновник похвалил злаковое растение "кукуруза", после чего его начали пытаться выращивать даже за полярным кругом, доведя хорошую идею до маразма, нечто похожее происходит сейчас с XML, который пытаются всунуть во все дыры, лишь бы всунулся хотел бы я посмотреть как этот деятель с помощью XML будет НАРАЩИВАТЬ функционал без перекомпиляции по хорошему интерфейс действительно программно рисуется, из БД берутся настройки конкретного пользователя, что не нужно/запрещено - становится невидимо, и это - нормальная практика, т.е. многозначительных взглядов нет а вот считывать из базы структуру меню, из базы же выгружать dll-ки, содержащие дополнительный функционал - вот это по нашему ------------------ Best regards, _bob ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.12.2004, 15:53 |
|
||
|
Графическое программирование для пользователя
|
|||
|---|---|---|---|
|
#18+
_bob хотел бы я посмотреть как этот деятель с помощью XML будет НАРАЩИВАТЬ функционал без перекомпиляции по хорошему интерфейс действительно программно рисуется, из БД берутся настройки конкретного пользователя, что не нужно/запрещено - становится невидимо, и это - нормальная практика, т.е. многозначительных взглядов нет а вот считывать из базы структуру меню, из базы же выгружать dll-ки, содержащие дополнительный функционал - вот это по нашему ------------------ Best regards, _bob Ага, "завелись" ....без_перекомпиляции...компиляции... А почему бы и нет? Собственно, Engine - это что?. Ну, то что читает ресурсы и предоставляет интерфейс + обработчик событий. Например - Oracle Developor. Читает описания форм и интерпретирут их. Круто и мощно. Щас поясню, ту самую светлую идею, что однажды нас завела... 1. Дано. Есть язык высокого уровня, в который уже встроен движок (ISAM) по работе с базами данных. (открыть, закрыт, найти...откатить). 2. Есть (уже есть) крутая библиотека полномаштабного оконного интерфейса символьного режима (окна рисует, айтемы в нем, клики ловит и вообще - она многооконная). ну в общем - есть фича, разобрались однако (она в DEMO в скриптах поставлена). 3. Что еще нужно? 1. Делаем микро_CASE. То бишь в "трех" таблах БД описываем инфо_модель приложения. ОК - описали. 2. Хотим формочку в проге создать. в первый раз все скриптами...чисто в теле проги описано. Ха - да этот же скрипт на 90% УНИВЕРСАЛЬНЫЙ!!!!. Смотрим на форму - что там за свойства?...размер, цвет, рамка,.... Смотрим на айтем - что там за свойства? ..позиция, цвет, длина, тип данных...ИМЯ ПОЛЯ БД... ба!! да мы в двух полянах еще все опишем (код триггрера_обработчика_события... + свойства....куда че и как пишем (откуда читаем и пишем)... Короче, таких СВОЙСТВ всего штук этак 15. Тупо ...в текстовом файле, лепим свою модель формы (ну там все по ключам,все там прописано...можно в brife руками поправить...) И строим движок - открытия файла описания формы и отражения на экране ее айтемов. И строим движок - исполнения типовых событий (типа...закрыть форму+ записать валуе в глобал_регистры....или просто закрыть форму....или просто вызвать новую форму_сценарий...) Ну в общем - творческое это дело. Понятно - это все чисто абзац. Чисто - прикол..вроде как. Но что выходит в итоге? Для нового проекта БД (изменения структыры БД) - да, надо кнопкой..батничек запустить....компилировать и линковать. (ибо как не крути...а структура БД ...она в "инклюдах" объявлена...как переменные пользовательского типа. ПЛЮС всего ТРИ процедуры (что на автомате скриптуются - Открытия таблицы БД, Чтения из данных строки таблицы в ...символьный массив, Записи в строку таблицы...данных из символьного массива...) И все - система готова к работе. Например - сама даст интерфейс для правки строк таблиц...(на лету)... Теперь берем то, что теперь тулзами зовется (ну генераторы наши ту бишь). И все ...мышою ...рисуем. и ВСЕ. Ага, форма готова, ...а нужен сложный расчет. Ну типа что посчитать, себестоимость тут на пример. Уходим в среду языка высокого уровня, в ней - пишем скрипту....что все считает...КОМПИЛИРУЕМ ....и из Формы - мы ее уже "Позовем". А если расчетик простой (ну плюс минус прибавить) - то вот нам простейший прикладной арифмометер....когда этапы расчета в файле ресурсов описаны....файлик читаем, расчет получаем... Ну ладно, это все треп. по хорошему интерфейс действительно программно рисуется, из БД берутся настройки конкретного пользователя, что не нужно/запрещено - становится невидимо, и это - нормальная практика, т.е. многозначительных взглядов нет Кстати - про интерфейс -что программно рисуется - ЭТО ОЧЕНЬ ЛЕГКО, я ВАС УВЕРЯЮ. Если один раз все продумать - что есть Экранная Форма (из чего она состоит ....кстати, это все в 30 праметров "влезет"). И вот одна фишка, так сказать на последок. Майн_модуль вызвал процедуры - типа 1. Читать сценарий, выполнить строку сценария. 2. Если в сроке вызов формы - Отрыть форму и в ней работать. ...работаем в форме и вдруг надо повер старой - еще форму открыть. (и вернуться потом все обратно). РЕКУРСИЯ Сэр. Тупо все что было - в стек и вызов из Майна - процы еще раз "Отрыть форму и в ней работать". Короче, благодаря тому что все "коренные" процедуры могли САМИ СЕБЯ по рекурсии вызывать - это было чисто фантастик. САМО все работало.... однако уже лет этак 13 в работе...в цехах все живое ищо... . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.12.2004, 19:21 |
|
||
|
Графическое программирование для пользователя
|
|||
|---|---|---|---|
|
#18+
2 UK0IAI А почему бы и нет? .... Кстати - про интерфейс -что программно рисуется - ЭТО ОЧЕНЬ ЛЕГКО, я ВАС УВЕРЯЮ Да фигня вопрос. "переписать этот кусок займет один день, не больше. Да, не больше. Ну, в крайнем случае, два, если учесть все риски" (С) Вы не пробовали когда нибудь автоматически расставлять Tab Order в формах ? Это - вообще не задача, а так, семечки. На час работы. Слева направо, сверху вниз. На вход передается форма. ИМХО: Автопостроение форм оправдано для задач уровня "редактирование справочников вида ID, Наименование" Все. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.12.2004, 20:04 |
|
||
|
Графическое программирование для пользователя
|
|||
|---|---|---|---|
|
#18+
Один2 UK0IAI ИМХО: Автопостроение форм оправдано для задач уровня "редактирование справочников вида ID, Наименование" Все. Замечу (для автора топика если он еще здесь), что в 93 г, "лично" внедрял "крутую" систему бухучета "Турбосальдо". И не переставал восхищаться - братцы, там все, ВСЕ формы ввода данных + табулеграммы - все АВТОПОСТРОЕНИЕМ делалось. То есть, все формы описаны в журнале БД - и 99% всех бухгалтерских документов_операций - все интерфейсы - они системой САМИ строились. И это даже было удобно, однако. (интерфейс массового ввода по полной программе). Понятно, что это было возможно благодяря исключительно возможностям FoxBase...ну макроподстановкам...когда имя переменной можно передать как параметр..и считать имена переменных из журнала БД. Все. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.12.2004, 09:55 |
|
||
|
Графическое программирование для пользователя
|
|||
|---|---|---|---|
|
#18+
UK0IAIПонятно, что это было возможно благодяря исключительно возможностям FoxBase...ну макроподстановкам.. Почему же было? ;) в vfp и сейчас есть макроподстановки, т.е. прямая дорога VFP+MSSQL открыта ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.12.2004, 10:27 |
|
||
|
Графическое программирование для пользователя
|
|||
|---|---|---|---|
|
#18+
2 UK0IAI : >И не переставал восхищаться - братцы, там все, ВСЕ формы ввода данных + табулеграммы - все АВТОПОСТРОЕНИЕМ делалось. То есть, все формы описаны в журнале БД - и 99% всех бухгалтерских документов_операций - все интерфейсы - они системой САМИ строились. И это даже было удобно, однако. (интерфейс массового ввода по полной программе). Между прочим, идеи весьма актуальны, просто весьма немного систем, которые могут похвастаться оптимальным соотношением : легкость разработки/гибкость/удобство пользователя. ИМХО из того, что видел я - близки к оптимуму Аксапта и 1С. Но сами понимаете, 1С - в плане технологий фи, а Аксапта в плане денег. Вот только в топике-то речь опять же шла не про формирование интерфейса, а про скрипт, который выполнение массы разных безинтерфейсных задач автоматизирует ! Т.е. программирование удобнее для человека, учившего Васик (Паскаль, Рапиру или что уж там сейчас учат) в школе, в текстовом виде с Инеллисенс и т.д., или "в картинках" ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2005, 15:54 |
|
||
|
Графическое программирование для пользователя
|
|||
|---|---|---|---|
|
#18+
Mik Prokoshin2 UK0IAI : >... только в топике-то речь опять же шла не про формирование интерфейса, а про скрипт, который выполнение массы разных безинтерфейсных задач автоматизирует ! Т.е. программирование удобнее для человека, учившего Васик (Паскаль, Рапиру или что уж там сейчас учат) в школе, в текстовом виде с Инеллисенс и т.д., или "в картинках" ? Не вижу, почему бы благородному дону (Румата) и не... построить...скрипты ...для юзера..собственного изготовления "Скрипт с человеческим лицом". Три стратегии такой системы: 1. Лаконичная - широко используя спец_символы, создаем предельно "шифрованную" нотацию, плюс извращенную логику интерпретации 2. Гибкая - подражаем VBX, и создаем нечто гибридное между естественным языком и ООП. 3. Разумная - продумываем лексику Контстант и кроме круглых скобок и запятых - "вообще ничего не используем". Последнее - требует тщательной подготовки. Кроме того - нужен "генератор скриптов". Это может быть графический (иконки таскать) или семантический (имя_айтема из списка выбирать). Тогда Юзеры смогут самостоятельно строить собственные скрипты. Вне зависимсти от собственной квалификации. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.01.2005, 10:53 |
|
||
|
Графическое программирование для пользователя
|
|||
|---|---|---|---|
|
#18+
>3. Разумная - продумываем лексику Констант и кроме круглых скобок и запятых - "вообще ничего не используем". Последнее - требует тщательной подготовки. Э-э-э, а можно вопрос, это как ? Может образец, где так сделано, укажете, а то не совсем понятно... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2005, 06:56 |
|
||
|
Графическое программирование для пользователя
|
|||
|---|---|---|---|
|
#18+
Mik Prokoshin>3. Разумная - продумываем лексику Констант и кроме круглых скобок и запятых - "вообще ничего не используем". Последнее - требует тщательной подготовки. Э-э-э, а можно вопрос, это как ? Может образец, где так сделано, укажете, а то не совсем понятно... Позвольте пояснить на примере. Пусть скрипт исполняет команду - вывести в (окно...айтем...ячейку) некое валуе с элементами форматирования (цвет, шрифт,фон, граница,формат...) В общем случе, Ваш Engine должен воспринять инструкцию из скрипта - команду (оператор) + параметры.. Вопрос - как вы это изобразите визуально? Ну например, Вы в обычном текстовом файле создадите строку(и)... И что же там будет? 1. Вариант пишем в строке нечто... Код: plaintext 2 Вариант - вы создаете движек что умеет исполнять, например, такое; Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 3 Вариант - просто и красиво Код: plaintext Здесь эти самые ...RED,BOLD,BORDER ....- это имена Констант, объявленных в Вашем модуле. Слово "Put" - это имя вашей процедуры, с перегруженными параметрами...когда все будет работать и в такой нотации (например) Код: plaintext Более того: Ваш скрипт ДОЛЖЕН САМ РАБОТАТЬ, если его поместить в тело листинга Вашей программы. Это значит, что Вам не надо строить ДВИЖОК для отладки скрипта. С этой задачей справится уже имеющийся у вас компиляатор или дебугер Вашей системы программирования. Что для этого требуется? Всего лишь написать свой API. Где будет объявлена процедура PUT () и константы типа RED,BOLD,BORDER, CENTER.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2005, 09:23 |
|
||
|
Графическое программирование для пользователя
|
|||
|---|---|---|---|
|
#18+
Благодарю. Хочу отметить, что константы прекрасно комбинируются с подходом 2. Мне кажется наиболее оптимальной примерно такая конструкция : Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2005, 13:51 |
|
||
|
Графическое программирование для пользователя
|
|||
|---|---|---|---|
|
#18+
Mik Prokoshin Мне кажется наиболее оптимальной примерно такая конструкция : Код: plaintext 1. 2. Конечно, есть проблема выбора. Нотация типа Color:=xlBlack - она явно указывает Юзеру что здесь прописано, и можно все произвольно менять своими местами. Но - эта фишка расчитана на интерфейс редактирования типа "текстовый редактор". Да, Юзеру так будет удобнее. Хотя, мне больше нравится идея включать/выключать (опции), т.е: Код: plaintext 1. 2. 3. 4. 5. Когда все эти "Border" - это типа глобальных переменных сессии, и мы из своего скрипта задаем им значения - самым простым способом и что удобно, эти "опции" ...без них ведь и так все работает, а значит это все можно "прописывать" ПОСЛЕ ТОГО КАК (типа сервис навешивать). Т.е при разрабтке алгоритма скрипта можно не думать о "красоте" Касательно Графики. Это вопрос принципиальный. Наличие графики - снижает требования в Юзеру. Но - она весьма не удобна для правки "больших" скриптов. Графика удобна для разработки с нуля. Но Править скрипт удобнее через редактор. Возможно можно делать гибрид. Создаем этакий Scheet из одних строк с тремя колонками. (Номер строки, Текст, Примечание). И для заполнения Текста - для правки - всегда(иногда) используем МАСТЕР. Например, вызывая список (list_item) Команд_скрипта с последующим заполнением Опций Команды (ну например, как в екселе - мастер функций). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2005, 19:34 |
|
||
|
Графическое программирование для пользователя
|
|||
|---|---|---|---|
|
#18+
2 Mik Prokoshin Еще раз помотрел на вашу ссылку http://www.envox.com/img/content-design/screen1.jpg, и задумался... (есть парочка минут и настроение...) Както мне не нравится это все и кажется есть некая идейка.... Не нравится тем, что слишком много ...квадратиков разных, и они еще по всему скрину раскиданы. Стрелки в глазах мельтешат... Итак попробуем: 1. При вызове редактора (юзером) уже готового скрипта - он должен все сразу четко понять - что там к чему. В этом нам хорошо нотация ) с именоваными параметрами), Name="Arial", Size=12, Color:=xlBlack, Position:=xlCenter Например, в скрипте можно сделать запись (команды). Команда "Установить Параметры которые повлияют на дальнейшею работу Системы, Так - что пока не отменено - все актуально. После отмены - все становится по дефалту." В нашем редакторе (это тот самый grid из трех колонок), мы можем прописать: на картинке - это примерно то - что может увидать Юзер. Важно = нельзя делать "толстые строки" - все должно умещаться в одну тонкую и короткую строку. Но наш грид (это ведь не тупой текстовый редактор!) мы можеv сделать весьма дружелюбным, например: В режиме EDIT Юзер попадая курсором в колонку Команда - на автомате получит типа выпадающего списка с перечнем, с сервисом контексного поиска...по первым символам... В колонке = Опции - при попадания курсора, в зависимости от Команды, вызывается нужное ОКНО (Мастер) с полями заполнения всех возможных Параметров. И (вот фишка) - итоги ввода Опций - отражаются визуально в простой, нотации...как именованные параметры... Что интересно - такую фичу можно сначала создать (движек) на основе чтнетия текстового файла скрипта - а потом = уже наладить сервис - ввиде вызуального отображения (для Юзера). ..... Ну так немного... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2005, 11:13 |
|
||
|
Графическое программирование для пользователя
|
|||
|---|---|---|---|
|
#18+
если кто помнит междумордие sss1024.narod.ru пользователь может всё двигать мышкой, строить сложные запросы без программирования. Логика пишется программистом. Всё корректно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2005, 00:30 |
|
||
|
Графическое программирование для пользователя
|
|||
|---|---|---|---|
|
#18+
1024если кто помнит Изящно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2005, 19:39 |
|
||
|
Графическое программирование для пользователя
|
|||
|---|---|---|---|
|
#18+
2 1024: Между прочим, там ссылка Download не работает - сервер ошибку дает. Причем какое отношение к download имеет трансформация Фурье, слабо понятно :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2005, 07:54 |
|
||
|
Графическое программирование для пользователя
|
|||
|---|---|---|---|
|
#18+
сейчас вроде работает. Можно напрямую на http://www.universalthread.com/wconnect/wc.dll?LevelExtreme~2,54,33,20426 Я собсно для чего написал - для больших проектов (да часто и небольших) легче натаскать юзеров и дать свободу в пределах заданных правил чем создавать ПО со всей возможной функциональностью. Полнофункциональное ПО? Да ещё и без ошибок? Не встречал к сожалению. Всегда чего-то не хватает. Конечно, все эти писатели объектных БД пытаются компенсировать своё незнание скл. К сожалению получается плохо. Если же конструктор основан на чёткой логике то получается вполне красиво. Я делал с помощью этого шедовера какие-то проекты, были диалоги с юзерами вроде: - нам неудобно, хотим чтоб цена не в конце стояла а в начале - перетащите столбец мышкой куда вам надо - и чё, так просто? но если в БД задано что дата не может быть новее сегодняшней то никакими средствами юзер такую дату не внесёт. Причём если что-то в структуре данных изменится что не затрагивает конкретного пользователя то он этого даже не заметит (например добавить возможность использования иерархической структуры сотрудников вместо плоской - девочке вбивающей накладные это ни к чему) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2005, 23:51 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=32850977&tid=1546094]: |
0ms |
get settings: |
7ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
45ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
| others: | 212ms |
| total: | 345ms |

| 0 / 0 |
