DRAKON.SU https://forum.drakon.su/ |
|
Улучшенные варианты ДРАКОНа (через EXE-редактор) https://forum.drakon.su/viewtopic.php?f=143&t=2604 |
Страница 5 из 6 |
Автор: | Владимир Паронджанов [ Вторник, 11 Май, 2010 15:03 ] |
Заголовок сообщения: | Re: Улучшенные варианты ДРАКОНа (через EXE-редактор) |
С. Тарасенко писал(а): Владимир Паронджанов писал(а): Если ты хочешь нарисовать действия, нарисуй их, чтобы я мог их увидеть. Сейчас я их не вижу. Владимир Паронджанов: Чтобы исправить схему, надо хотя бы в одно плечо каждой иконы вопрос вставить икону действие или вставку. Владимир Паронджанов писал(а): 3. Ошибка в том, что у обоих икон вопрос выходы да и нет соединяются между собой. Это означает, что в данной схеме две иконы вопрос должны быть изъяты, так как они не выполняют никаких функций. 4. Чтобы исправить схему, надо хотя бы в одно плечо каждой иконы вопрос вставить икону действие или вставку. Только после этого схему Стаса можно будет оценить на эргономическую правильность. Пожалуйста:.......[Рисунок Стаса см. здесь viewtopic.php?p=47312#p47312] Стас! 1. Спасибо, что ты придумал тест, который указывает на слабое место визуального синтаксиса языка Дракон. 2. Твоя крестовина требует от меня ответить на вопрос: разрешить такую крестовину? Или запретить? 3. Пока я склоняюсь к ответу: запретить. 4. Я имею в виду, что в твоей схеме нижнюю икону действие надо продублировать. Ведь если продублировать, то крестовина исчезнет. 5. Есть и другой выход. Превратить крестовину (узел соединения 4-х линий) в два узла, в каждом из которых соединяются ТРИ линии. Для этого левую горизонталь крестовины надо сделать выше или ниже правой горизонтали. Еще раз спасибо, за то что ты раскопал такой хитрый случай. |
Автор: | Владислав Жаринов [ Пятница, 14 Май, 2010 04:42 ] |
Заголовок сообщения: | Re: 4-е техтребование от С. Тарасенко |
С. Тарасенко писал(а): Драконограф писал(а): С неудобством восприятия текстового присваивания соглашусь - но так вроде уже устоялось в информатике. А для визуализации было предложено записывать присваивание через икону Полка - Она не визуальна. В полке указываются лишние СЛОВА, против которых и выступает Владимир Даниилович как против сора, захламляющего восприятие. Иногда и без неё не обойтись, но простое присваивание вида а=б или ряд(н)=ряд(н+1) лучше, думаю, всё-таки писать в Запоминатель. Хотя у него и другая функция, согласен.А я и предлагаю в Полке как присваивании лишних слов не писать - для данных примеров на верхнем этаже будет "б" (или "ряд(н+1)"), на нижнем - "а" (или "ряд(н)") а всё остальное читатель понимает по графике иконы (в смысле присваивания, который определяется как раз тем, что другого текста в иконе нет). P.S. Перепутал порядок - для естественности восприятия, которой мы хотим, надо поменять содержание верхнего и нижнего этажей, исправлено выше. Также изменены и дополнены сообщения о 2-м, 3-м, 5-м, 6-м требованиях от Вас - есть некоторые соображения. |
Автор: | Владислав Жаринов [ Пятница, 14 Май, 2010 04:51 ] |
Заголовок сообщения: | Re: 5-е техтребование от С. Тарасенко |
С. Тарасенко писал(а): Драконограф писал(а): Разумею под "приёмником" фигуры "Вывод" порт вывода ... Простите,из этого сообщения я не понял почти ничего. Во всяких портах да ассемблерах да внешних устройствах я полнейший дубарь. Я-то хотел приспособить эти фигуры для простого компилятора в ЕХЕ-файлы, не более! Чтобы подогнать этот компилятор под указанные правила. А как их использовать для проектирования сложных устройств, решать самому пользователю, в зависимости от задачи, я так понимаю. Вообще-то порты необязательно фигурируют только в ассемблере - поэтому я и говорил в первую очередь об именах портов (напр. "дисплей", "принтер", "другая машина" или то, что реализовано для "Бурана" в DNS-подобном формате) - а уже потом вместо имён подставляются адреса, о чём пользователю знать и небязательно. Конечно, объяснение таких вещей только текстом не очень наглядно, но теперь есть визуализация в конце этого подпункта - м.б. оттуда яснее будет? Там прописана общая идея - вводимая/выводимая величина, прежде чем занять место/уйти с места, обозначенного её именем (в ОП), вначале проходит через порт исполнителя визуала со своим именем/адресом (ну и у другого участника так же). Вы правы, что пока мы не программируем детально - это можно не раскрывать - достаточно имён величин. |
Автор: | Владислав Жаринов [ Пятница, 14 Май, 2010 04:53 ] |
Заголовок сообщения: | Re: 1-е техтребование от С. Тарасенко |
С. Тарасенко писал(а): Драконограф писал(а): Считаю реализацию Геннадия в этом случае (мышь+контекст-меню) как минимум не менее удобной Но уж во всяком случае список фигур должен выскакивать СРАЗУ после нажатия мыши, а не залезая в лишнее меню "Добавить". Конечно, все фигуры не помастятся, но хорошо: самые редкие фигуры можно поместить в доп. меню, но не все! Согласен. |
Автор: | Владислав Жаринов [ Пятница, 14 Май, 2010 05:04 ] |
Заголовок сообщения: | 7-е техтребование от меня |
1. Приложение РДП-среды должно запускаться и устойчиво работать при среднепроизводительной конфигурации косавта (на текущий момент - примерно PIII-1ГГц/ОЗУ-256М/система MSW98|Linux), в т.ч. при наличии других запущенных приложений. Возможно, следует допустить запуск более одного экземпляра приложения. 2. Все машинные операции должны выполняться в течение 0,5...2 с с момента подачи оператором сигнала на выполнение. |
Автор: | Владислав Жаринов [ Вторник, 18 Май, 2010 04:35 ] |
Заголовок сообщения: | Re: 2-е техтребование от меня |
С. Тарасенко писал(а): Спасибо! Пока не было времени прочесть всё, но это ценнейшие советы! Когда прочту всё вдумчиво, не за полминуты, а за полчаса, вымеряя каждое слово циркулем и линейкой, - тогда отвечу, надеюсь, достойно. Ну, при таком серьёзном отношении сведений из исходного сообщения, пожалуй, недостаточно... Попробую показать свои идеи схематизации на примере РДП-документа, "смакетированного" средствами Draw. Для начала тут будет не всё предложенное для инфор-синт-языка; постепенно буду добавлять что-то. Также не все пояснения будут в документе как КогниСтиль; многое пойдёт текстом здесь - когда РДП-редактор будет создан (быть может, Вами?), в нём это будет удобно, а пока проще так. Пока что макетирован только условный РДП-документ (возможный шаблон после небольшого редактирования). Вложение: Конечно, раскрыть суть схематизации на синт-языке удобнее на конкретном документе. Возможно, позднее это будет сделано; в основу содержания скорее всего будет положена дракон-модель Задачи 1.1.1 из Приложения 4. Уровни РДП-листа смоделированы слоями листа Draw (пользовательскими; три левых слоя автоматические и используются по назначению, указанному их именами).
Исходно все слои, кроме схемного, заблокированы; их можно разблокировать и посмотреть, что где лежит. Слой выбирается щелчком левой на его названии (заголовке вкладки). Блокировка ставится/снимается как свойство текущего слоя в контекст-меню (открывается щелчком правой на названии слоя). Значит, так. Начнём с логики структурирования уровня схем, заданной листовыми синт-силуэтами (далее - лист-силуэтами). Лист-силуэт - это тематический раздел РДП-документа. Один лист-силуэт в общем случае должен занимать более одного листа (обычно следующих подряд, но, наверное, необязательно) и тогда делится на секции. Логически у нас линии связи строк - "питания" (в "шапке" слева) и "земли" (в "подвале" справа) - переходят с листа на лист; думаю, удобно это показывать через дублирование вершины-заголовка лист-силуэта на каждом листе в качестве "поперечины" (в поле её основного текста можно хранить и показывать набор индексов-ссылок на остальные секции раздела для удобства навигации). Строки лист-силуэта (соответствуют веткам обычного силуэта) индексированы по порядку следования в нём (нумерованы сверху вниз). Также индексированы иконы в пределах строки (для разветвлённой - возможно, по каждому маршруту отдельно). Сочинитель произвольно редактирует содержание синт-икон Жёсткое поле и внесхемных графоэлементов; оно может включать текст, таблицы, графику, в т.ч. граф-схемы на граф-языках, поддерживаемых РДП-средой; то же касается дракон-икон (и вершин других граф-схем) с неформальным языком текста. В остальных вершинах заполняются определённые поля в структуре текста, как показано в их алфавитных определениях. Поддерживается объявление любого фрагмента схемы (привязанной, т.е. это не касается лист-силуэтов) областью с возможностью работы над её содержанием в различных вариантах. Поддерживается иерархия формальности языка текста граф-схем (в частности, дракон-схем), как предложено в 5-м техтребовании от меня. Неформальный текст должен форматироваться, как в обычном офисном редакторе (с колонками, обтеканием рисунков, пользовательскими стилями абзаца/знака и т.д.). Лист-силуэты и иные граф-схемы организованы по шампур-методу, т.е. имеют точки ввода в звеньях. Направление по шампуру для лист-силуэтов слева направо; соответственно вертикали становятся горизонталями. Побочные маршруты строки упорядочиваются вниз от её шампура; правда, петля Р-БП тоже находится внизу, но думаю, это несущественно. Вход икон справа, а выход слева. М.б. непривычно, что невозможен никакой текст/таблица вне графоэлементов - но если вдуматься в логику организации страниц обычного инфордокумента (напр. во Writer), то там тоже есть структуризация и на уровни (фон/содержание) и уровня содержания - на области (верхний колонтитул/основное/нижний колонтитул) - фактически те же синт-иконы, причём колонтитулы также образуют свою структуру (м.б. свои для раздела документа, первой/чётной/нечётной страниц). В РДП-документе в частном случае жёсткое поле может занимать весь лист (за вычетом места на остальные элементы лист-силуэта), тогда внешний вид РДП-листа практически неотличим от обычной страницы. Однако есть одна особенность - текст и др. содержимое из одного жёсткого поля не "перетекает" в другое, как между областями основного содержания страниц обычного инфордока.
Думаю, полный индекс объекта РДП-документа должен состоять из уровней:
* номера строки; для объекта внесхемной графики этот и предшествующий уровни заменяются на один уровень номера листа; * номера синт-иконы (даётся, напр. по ГОСТ, как в Ты-среде); для объекта внесхемной графики - его номер на листе (напр. по порядку помещения); * номера схемы, привязанной к объекту (к синт-иконе схемной графики или к любой внесхемной фигуре); * номера элемента схемы, привязанной к объекту (даётся по тем же правилам, что для синт-икон); * индекса закладки (из числа поставленных сочинителем в тексте объекта). инд-объекта ::= <<<ИмяЛС>.<№стр>>|<№листа>>.<<№СинтИконы>|<№ВнеСхОб>>-<№ПривСх>.<№ЭлСх>[-<#Закл>] Некоторые уровни индекса имеют также символическую интерпретацию, а именно:
* Номеру строки соответствует имя-термин (если поле термина непустое). * Номеру схемы соответствует её имя (данное в вершине-заголовке). Возможно, следует добавить перед именем индекс языка схемы (аббревиатуру, напр. ДРАКОН, СТ и т.п.) для удобства понимания. * Номеру элемента (любой другой вершины) сопоставлено её название по алфавиту используемого языка. Особенности индексирования некоторых объектов (сокращённого):
* Значением иконы Адрес строки служит индекс следующей строки (редактируется сочинителем). * Имя-термин строки (вводимый сочинителем текст иконы) служит синонимом номера строки и указанием на то, что эта строка является словарной статьёй (определением термина); хранится в отдельном поле иконы Имя строки, Адрес строки. По иконе Адрес строки происходит переход на строку, указанную её значением. Указывая эти значения, сочинитель формирует метаструктуру маршрутов; более детально маршруты формируются в телах строк вводом синт-развилок и циклов (в т.ч. строчных СтрЦ как аналога веточных), пересадкой и заземлением лиан; в общем, всё как в техноязыке. В документе присутствуют по крайней мере два раздела:
* содержательный. Индексный раздел содержит указатели следующего назначения:
* тезаурус - предметный указатель вхождения в тексты графоэлементов слов (выбранных сочинителем) и формальных имён (заданных "шаблонами" текста элементов) - терминов строк, имён величин, имён действий и пр.; собирается автоматически или вручную по содержанию всех графоэлементов документа; * источники - набор бибзаписей об источниках, указанных в текстах любых элементов документа в специальном формате (особой командой); собирается автоматически или вручную. Для удобства оформления указателей можно принять, что все элементы индекса для вхождения пишутся числовыми, а при наведении курсора на конкретный индекс всплывает подсказка, где символьные элементы расшифрованы для удобства понимания человеком. Каждый указатель занимает одну (изначально) или более (по мере пополнения) строк; естественно, строки именованы термином своего указателя (плюс некий порядковый индекс, напр. для строки тезауруса - буква/диапазон букв, на которые начинаются слова, собранные в этой строке). Содержательный раздел формируется сочинителем как информатизованная синт-диаграмма (с использованием дракон-синт-икон для организации побочных маршрутов и связыванием строк по их индексам в иконах Имя строки, Адрес строки, получения отдельных данных для выбора маршрутов). При этом на любой объект РДП-документа (а по закладке - и на её место внутри объекта) можно также перейти по ссылке, вставленной сочинителем в текст другого объекта. Теперь кое-что о физике. При наличии нескольких ячеек между ними придётся иногда делить иконы из тела строки синт-силуэта. Думаю, нужно граф-схемы разбивать по линиям, как показывал в документе, рисунки не разбивать (требуя вписать внутрь ячейки), текст делить на колонки в разных ячейках - в документе это пока не показал. При показе лист-силуэтов принял упрощения:
* порядок следования строк обратный веткам обычного силуэта (если повернуть обратно, то получится, что первая после заголовка ветка справа). Все описанные поля показаны на иконах одновременно; практически, конечно, одни д.б. видимы сразу, а другие - только по команде. Скорее всего следует у произвольно редактируемых икон ввести прокрутку содержимого, когда оно не умещается в габарит иконы. Рамка и штамп, очевидно, должны рисоваться как графоэлемент (групповой объект) "всегда впереди остальных". P.S. Обновлено содержание; всё связанное с операциями переносится в 6-е техтребование. |
Автор: | С. Тарасенко [ Вторник, 18 Май, 2010 14:41 ] |
Заголовок сообщения: | Re: Улучшенные варианты ДРАКОНа (через EXE-редактор) |
Владимир Паронджанов писал(а): Я имею в виду, что в твоей схеме нижнюю икону действие надо продублировать. Ведь если продублировать, то крестовина исчезнет. А если это не дейстиве, а огромный шампур-блок? Его тоже продублировать? Владимир Паронджанов писал(а): Есть и другой выход. Превратить крестовину (узел соединения 4-х линий) в два узла, в каждом из которых соединяются ТРИ линии. Для этого левую горизонталь крестовины надо сделать выше или ниже правой горизонтали. Всё! Претензию снимаю. Просто после образования крестовины нужно лиану из-под правого действия (варианта) перенести выше или ниже крестовины. При обновлении схемы изменение остаётся. Всё отлично. Просто желательно, чтобы это делалось автоматически, чтобы не вызывать подобных недоумений и споров. Или в справке указать. Владимир Даниилович! Спасибо, что помогли решить эту головоломку! |
Автор: | С. Тарасенко [ Вторник, 18 Май, 2010 14:55 ] |
Заголовок сообщения: | Re: Улучшенные варианты ДРАКОНа (через EXE-редактор) |
А вот ещё несколько приятных добавлений в Дракон: ______________________________ 1. Можно изменять масштаб! Колесом мыши, удерживая правую кнопку. Очень удобно! А родное предназначение колеса (двигать экран или текст по вертикали) осталось. ______________________________ 2. Чтобы перемещаться по схеме, не надо искать и удерживать этот Shift. Есть два варианта: . а) Кликнуть среднюю кнопку, затем найти нужное место и кликнуть её снова. . б) Перемещаться по схеме, удерживая левую кнопку. Оно и всегда было, просто у меня при отпуске левой кнопки скрывается сообщение "Выбранный блок...". Ведь выделять несколько фигур левой кнопкой не нужно никогда, т.к. при попытке что-нибудть с ними сделать выделение сбрасывается. Значит, сообщение о выбранном блоке тем более не нужно. ______________________________ 3. Клик средней кнопки включает и выключает режим перемещения. В режиме перемещения: . а) вслед за мышью идёт экран; . б) можно перемещать фигуры, узлы и схемы (левой кнопкой, не нажимая никакого Shifta); . в) ВРАЩЕНИЕ КОЛЕСА МЫШИ изменяет ширину фигуры под курсором (при этом выделять её левой кнопкой не нужно). Если под курсором не фигура, а: ____ТОЧКА ВВОДА - при вращениии в_в_е_р_х происходит перенос лианы, в_н_и_з - заземление; ____УЗЕЛ ПАРАЛЛЕЛЬНОГО ДЕЙСТВИЯ - создаётся шампур соединения с нижним узлом; ____если под курсором вообще нет фигуры, а есть схема, то обновляется схема; ____если нет схемы (т.е. курсор на листе) - обновляется лист; . г) вдавленное вращение колеса мыши (т.е. с нажатой средней кнопкой) отклоняет фигуру в стороны. При этом режим перемещения не выключается, несмотря на то, что нажимается средняя кнопка; . д) при случайном нажатии на фигуру не появляется окно текста и не закрывает собой полэкрана; . е) Правая кнопка мыши действует, как в обычном режиме. Можно добавлять фигуры и писать текст, правда он пишется большими буквами... Так что лучше перед этим нажать одиночный Shift или среднюю мышь, чтобы выключить режим перемещения. Всё в этом пункте - для режима перемещения. Включить или выключить этот режим - одиночное нажание средней кнопки мыши. Дальше для всех режимов: ______________________________ 4. Очень удобно использовать смыканье. Смыкнуть вперёд - это значит, нажать левую кнопку мыши и, не отпуская её, нажать правую. Смык назад - правая, затем левая. Правда, не нужно смыкать очень быстро, особенно в больших схемах: он не успеет распознать смык и ничего не сделает. Впрочем, на хорошем компьютере, может, и успеет, если уж на моём 300-герцовом кое-как скрипит. ОСНОВА: . СМЫК ВПЕРЁД - переход или добавление справа, . НАЗАД - изменение. Более детально: С_М_Ы_К___В_П_Е_Р_Ё_Д__ на фигуре: . ЗАГОЛОВОК - добавляются параметры; . ВЕТКА - добавляется ветка; . ВАРИАНТ - добавляется вариант; . АДРЕС - Переход на эту ветку; . ВСТАВКА - Переход на эту схему (если такой схемы нет, сообщение исчезает при отпуске правой кнопки, так что есть время осмыслить это сообщение, а нажимать ОК не нужно); . ВОПРОС - Поменять ветви местами (рокировка) . УЗЕЛ ПАРАЛЛ. ДЕЙСТВИЯ - Доб. Параллель справа . СБОРКА ТЕКСТА и ПРОЕКТ - Запомнить ссылку; . ТОЧКА ВВОДА - Заземлить лиану на новый адрес; . Вне фигуры - переход вперёд по вставке (кнопкa "=>" в строке меню). С_М_Ы_К___Н_А_З_А_Д_ на фигуре: . ВЕТКА - добавить ещё один вход; . АДРЕС - Выбрать ветку; . ВСТАВКА - с возвратом или без; . ВОПРОС - Да <I> Нет; . УЗЕЛ ПАРАЛЛ. ДЕЙСТВИЯ - Доб. Параллель слева . ДЕЙСТВИЕ, КОММЕНТАРИЙ, ТЕКСТ, ТЕКСТ В РАМКЕ - заменить "Действие -> Комментарий -> Всатвка" или "Текст - Текст в рамке - Комментарий - Вставка"; . СБОРКА ТЕКСТА - Править линию . ТОЧКА ВВОДА - Перенести путь . Вне фигуры - переход назад по вставке. ______________________________ 5. Смыкнуть средней-правой (и наоборот) - добавление левого или правого пояснения к фигуре. Режим перемещения при этом не изменяется. ______________________________ 6. Скрываются ненужные сообщения "Выбранный блок не допускает использование", "В блоке различные шампуры" и т.д. Экран мигнул, пользователь увидел ошибку. Что ещё надо? Зачем отвлекать внимание на словеса, да ещё заставлять прицелиться и нажать ОК? ______________________________ 7. В Драконе текстовое поле старого образца, т.е. Ctrl+Del удаляет до конца строки, а Ctrl+Bs вставляет квадрат. Я переназначил это в удаление слова, как все привыкли. (Это уже мелочь, но мало приятного, когда хотел убрать слово, а убрал строку.) ______________________________ 8. Автозамена ключевых слов Visual Basic (это может быть любой другой язык, измените в исходнике). При наборе на клавиатуре первых двух букв и пробела они превращаются в ключевое слово. Причём не важно, какая стоит раскладка: можно напечатать "ms ", "mb ", "ьы ", "ьи " и даже "ьыпищч " - слово превратится в "MsgBox ". Заменяются все знаки, которые пишутся только в англ. раскладке, так что можно все переменные и задачи называть по-русски и не прикасаться к переключению раскладки. Продуманы все взаимоисключения слов. Подробнее в комментариях к исходнику. ========================== КАК СДЕЛАТЬ ТАК, ЧТОБЫ ЭТИ ИЗМЕНЕНИЯ ВСТУПИЛИ В СИЛУ? Вот программа: http://files.mail.ru/IUZ8LF Если запустить эту программу, в системном лотке появится её значок. Она изменяет сообщения клавиатуры и мыши, поступающие на окна "DRAKON". Можно поместить её ярлык в папку "Автозагрузка". Это "хук", написанный на языке AutoHotKey. Драконограф ухитрялся работать на Драконе в Win 98 (у меня не получается); сразу предупреждаю: если Дракон и запустится, то мой скрипт на Win98 почти не действует (обрабатывает только клавиатуру). Нормальная работа - на 2000 и новее. Вот исходный текст скрипта: http://files.mail.ru/KT9TPC Изменяйте, дополняйте, публикуйте! Саму программу AutoHotKey можно запросто найти в Интернете себе по вкусу (есть много разных версий, в том числе под Win 2000). Она совершенно бесплатна и очень лёгкая. Советую скачать с любом случае, т.к. с её помощью, подключив ещё и Ресторатор, можно творить волшебство. |
Автор: | Владислав Жаринов [ Среда, 19 Май, 2010 04:43 ] |
Заголовок сообщения: | 8-е техтребование от меня |
Должно поддерживаться ведение коллективного редактирования РДП-документа с возможностями, аналогичными офисным пакетам (фиксация/показ, рецензирование, принятие/отклонение исправлений по авторам). |
Автор: | Владислав Жаринов [ Среда, 19 Май, 2010 11:14 ] |
Заголовок сообщения: | 9-е техтребование от меня |
1. РДП-среда является базой для разработки законченных РДП-систем. Назначение РДП-системы расширяется функцией программирования процессов, документированных в среде, или частей этих процессов. РДП-система должна поддерживать в качестве формального языка текста граф-схем процессов (исходных чертежей программ) по крайней мере один промышленный прогязык реального времени, обладающий максимально высоким научно-техническим уровнем и имеющий реализацию в виде компилятора исходных текстов с этого языка.
Построение РДП-среды должно обеспечивать превращение её в РДП-систему простым добавлением модулей, реализующих расширение функций; равно и спецификация РДП-документа должна либо сразу учитывать функцию программирования, либо допускать расширение без изменения базовой части. 2. РДП-система должна обеспечивать для каждого исходного прогязыка:
* автоматическую генерацию по комплекту исходных чертежей в составе РДП-документа исходного текста программы, правильного для конкретной реализации прогязыка (безошибочного для компилятора, выбранного для совместной работы с системой); * автоматическую ретрансляцию исходного текста в комплект исходных чертежей (возможно, с ручным выбором вариантов разрешения некоторых неоднозначностей языка). Если для удовлетворения этому требованию необходимо создать некоторые языки граф-схем и/или изменить существующие языки, а равно изменить стандарт исходного прогязыка, д.б. проведена соответствующая работа (для существующих языков - при необходимости по согласованию с их создателями). Возможные классы языков см. классификацию в этом пункте. |
Автор: | Владислав Жаринов [ Среда, 19 Май, 2010 11:15 ] |
Заголовок сообщения: | 10-е техтребование от меня |
Проектная и эксплуатационная документация на РДП-среду (систему) д.б. оформлена с максимально возможным когнитивным качеством и по возможности без обращения к каким-либо иным средствам документирования.
P.S. Также из требований от меня принципиально 4-е и 5-е реализовать. Естественно, у Стаса принципиально изложенное в 12-м требовании. Кстати, 2-е от меня уже редактировано и скорее всего будет ещё изменяться. |
Автор: | Владислав Жаринов [ Четверг, 20 Май, 2010 10:54 ] |
Заголовок сообщения: | Ещё на 6-е техтребование от С. Тарасенко: как назвать силуэт |
Вспомнил, что "силуэтизируемые" граф-схемы ещё подходят под разновидность устремлённых - отсюда вариант нового названия силуэта Стремянка ) Хотя и юмористическое, но под него можно подвести смысл - и внешне структура (особенно повёрнутая на 90°) похожа, и мастеру визуализации схема, как обычному мастеру лестница-стремянка, помогает достичь нужного уровня структуризации сложного содержания... |
Автор: | Владислав Жаринов [ Четверг, 20 Май, 2010 10:58 ] |
Заголовок сообщения: | О приятных добавлениях в и.с. DRAKON |
На сообщение: viewtopic.php?p=47566#p47566 С. Тарасенко писал(а): если Дракон и запустится, то мой скрипт на Win98 почти не действует (обрабатывает только клавиатуру) У меня он в MSW98 только и запускался А документ прочитать/создать не мог... С. Тарасенко писал(а): Советую скачать с любом случае, т.к. с её помощью, подключив ещё и Ресторатор, можно творить волшебство. Чтобы творить волшебство, нужен в первую очередь волшебник Ура Станиславу! Но вот вопрос: а каковы пределы "рефакторинга" этого кода? В частности, можно ли так "придумать, как перевести схему в кодовый язык", как Вы говорили в 12-м техтребовании (по сути - заложить автоматическую генерацию исходного прогтекста, в частности на Обероне - см. в 9-м техтребовании от меня)? А для этого ещё и добавить возможности описания типов прогязыка на графовой основе, о чём в 4-м техтребовании от меня? Можно ли естественным образом спускаться "от русского текста до программной ахинеи", как Вы говорили в 7-м требовании - по сути, иерархически детализируя схему "областным методом" на всё более формальном языке, как в 5-м техтребовании от меня? Наконец, можно ли сделать нормальную схематизацию содержания документа вместо существующей - как во 2-м техтребовании от меня? И чтобы всё это "летало" на среднепроизводительной машине и не только под MSW, как Вы хотели в 10-м требовании? Не потребуется ли для этого заново писать РДП-систему вместо "ресторирования" существующей среды? У меня нет окончательных ответов на эти вопросы. Возможно, Вы как программист сможете ответить? |
Автор: | С. Тарасенко [ Суббота, 22 Май, 2010 22:58 ] |
Заголовок сообщения: | Re: О приятных добавлениях в и.с. DRAKON |
Драконограф писал(а): В частности, можно ли так "придумать, как перевести схему в кодовый язык", как Вы говорили в 12-м техтребовании (по сути - заложить автоматическую генерацию исходного прогтекста Ещё как! Я изменил первое сообщение, в самом начале выложен архив, в котором есть генератор кода (правда, пока только на Visual Basic, но я сделаю шаблон, по которому можно будет использовать любой язык). Программа сложная, очень многое пришлось продумать. Слова Goto я старался использовать только в крайнем случае, где действительно была пересадка лианы, а не в каждом условии. То же с "выбором". Цитата: Наконец, можно ли сделать нормальную схематизацию содержания документа вместо существующей - как во 2-м техтребовании от меня? И чтобы всё это "летало" на среднепроизводительной машине и не только под MSW, как Вы хотели в 10-м требовании? Не потребуется ли для этого заново писать РДП-систему вместо "ресторирования" существующей среды? Можно, всё можно и нужно. Только не всё сразу. Ваши посты неоценимы. Я отпечатаю их на бумагу и буду изучать всё лето! Однако это теория. А попробуйте-ка всё это объяснить компьютеру? Одно дело хотеть, а я всё же кое-что и на практике сделал. Посмотрите для интереса архив в начале этой темы - там всё, что я мог отресторатить, вплоть до графического меню, как многие просили,. Цитата: У меня нет окончательных ответов на эти вопросы. Возможно, Вы как программист сможете ответить? Неужели Вы-то - НЕ программист? Как жаль... Тогда придётся стараться мне самому, в меру сил. В общем-то я такой программист, что цифры складываю на пальцах, да потом ещё считаю эти пальцы отдельно. Я так и не смог освоить даже простые побитовые операции с числами (And, Or и т.п.), сколько ни изучал. Ни разу не получилось у меня рекурсии. Мозг у меня тупой-претупой, только желание есть, оно-то всё и вытягивает. Так что "ответить" я вам не смогу. |
Автор: | С. Тарасенко [ Суббота, 22 Май, 2010 23:17 ] |
Заголовок сообщения: | Re: Улучшенные варианты ДРАКОНа (через EXE-редактор) |
Геннадий Тышов писал(а): Хотелось бы сделать картинки к пунктам меню... - часто спрашивали. Геннадий Николаевич! Наверное, не стоит. Взгляните на начало этой темы. Всё уже сделано. |
Автор: | Владислав Жаринов [ Понедельник, 24 Май, 2010 05:10 ] |
Заголовок сообщения: | Re: О приятных добавлениях в и.с. DRAKON |
С. Тарасенко писал(а): Неужели Вы-то - НЕ программист? Как жаль... Тогда придётся стараться мне самому, в меру сил. Драконограф писал(а): Наконец, можно ли сделать нормальную схематизацию содержания документа вместо существующей - как во 2-м техтребовании от меня? Можно, всё можно и нужно. Только не всё сразу. Ваши посты неоценимы. Я отпечатаю их на бумагу и буду изучать всё лето! Однако это теория. А попробуйте-ка всё это объяснить компьютеру? Скорее постановщик задач ("аналитик") - и просто практик формализации знаний в силу того, о чём говорил в этом сообщении - в частности, до уровня техзадания на программирование (доводилось делать для автоматизации техопераций в среде 1С). Поэтому на конкретных житейских ситуациях оценил необходимость эргономичного представления знаний, и не только алгоритмических - отсюда определение не языка, но комплекса их, начиная со схематизации знаний. М.б. поэтому мои требования уточняются постепенно - и потому отпечатывать их пока рано - следите за датировкой редакций в конце каждого сообщения Вот Илья Ермаков программист - и он ставит вопросы из того же ряда иначе, в т.ч. и что нужно для перехода от теории к практике программирования - см. доклад из этого сообщения. Конечно, когда придётся "объяснять компьютеру" - выяснится, что не всё так просто представить через сортировку, поиск и иные базовые алгоритмы над структурами данных из Д. Кнута или Н. Вирта - да ещё и дизайн интерфейса и общее качество обеспечить, напр. как показано в источниках из этого сообщения... Почему я и заговорил о другом прогязыке и среде первоначальной разработки - м.б. на Обероне в Блэкбоксе лучше пойдёт (хотя там надо по-своему решать вопросы с графикой)? А общая идея такова - когда будет нормальный РДП-редактор-транслятор, дальнейшая разработка пойдёт в его среде (включая, очевидно, и РДП-документирование уже разработанного ) - и тут начнёт работать на программиста и на других участников процесса 10-е техтребование от меня по принципу "раскрутки", только на когнитивно-эргономичной основе. Но, естественно, на том прогязыке, который в РДП-системе уже реализован - и это ещё одна причина, чтобы вспомнить об Обероне... С. Тарасенко писал(а): В общем-то я такой программист, что цифры складываю на пальцах, да потом ещё считаю эти пальцы отдельно. Я так и не смог освоить даже простые побитовые операции с числами (And, Or и т.п.), сколько ни изучал. Ни разу не получилось у меня рекурсии. Мозг у меня тупой-претупой, только желание есть, оно-то всё и вытягивает. Так что "ответить" я вам не смогу. Желание - это уже много, а как улучшить работу ума - нас же учит Паронджанов (и не только он, кстати - тот же Орлов со своим ModernTRIZ/CROST - см. Гл. 20 в выдержке из книги в этом сообщении). А в отношении того, что должно получаться у программиста - наверное, не всё сразу. Кстати, Вы читали Вирта (те самые "Алгоритмы..." для Оберона)? IMHO, интересно, хотя и мало - всё-таки вводный курс... но м.б. чем-то поможет (особенно если пытаться визуализировать примеры )? |
Автор: | Владислав Жаринов [ Пятница, 28 Май, 2010 04:51 ] |
Заголовок сообщения: | Re: О приятных добавлениях в и.с. DRAKON |
С. Тарасенко писал(а): Посмотрите для интереса архив в начале этой темы - там всё, что я мог отресторатить, вплоть до графического меню, как многие просили,. Посмотрю, но и правда лишь для интереса Дело в том, что мне нужна визуализация, где есть по крайней мере:
* схемы на разных граф-языках, включая язык схематизации лучший, чем ГНОМ; * возможность разнообразно форматировать текст/таблицы/графику внутри фигур. |
Автор: | С. Тарасенко [ Воскресенье, 06 Июнь, 2010 11:51 ] |
Заголовок сообщения: | Re: Улучшенные варианты ДРАКОНа (через EXE-редактор) |
Адаптировал улучшение к последней версии Дракона (1 июня 2010): http://files.mail.ru/Q865QP Дополнительные изменения: ___1) Вдвое уменьшил область схемы - в шесть раз быстрее грузится и совершенно не жрёт памяти. Сделал несколько вариантов программы - от самого маленького (грузится мгновенно, но большие схемы нужно перемещать для обзора) до огромных тяжёлых схем - тоже были просьбы. ___Варианты легко переключаются. Измените в самом начале файла "Изменения..." и запустите "Создать программу..." - тогда все схемы будут открываться с указанной областью. Тут нужно найти компромисс между мощью компьютера и размером обрабатываемых схем. Если нужен другой размер, которого в моих вариантах нет, просто измените в Рестораторе эту строку: object Image: TImage Left = 20 Top = 20 Width = (ШИРИНА) Height = (ВЫСОТА) ___2) Уменьшил полосы прокрутки, чтоб больше схемы видеть. В основном-то мы двигаемся в режиме перемещения, прокрутка вроде не нужна. ___________________________ 3. Много лексических изменений, добавлены псевдографические значки к пунктам контекстного меню. Например, фраза: -- Точка ввода: лиану пересадить в точку ввода. С чем бы сравнить? Это всё равно что сказать: -- Чайная чашка: чаю выпей из чайной чашки. Не лучше ли сказать просто, по-человечески: -- Выпей чаю? Мы знаем, что это точка ввода. Знаем, что лиана пересаживается ТОЛЬКо в точку ввода. Зачем лишние слова? И потом: где здесь КЛЮЧЕВОЕ СЛОВО? На четвёртом месте: "1)Точка 2)Ввода: 3)Лиану 4)ПЕРЕСАДИТЬ" - вот только где. А мы ожидаем ключевое слово в НАЧАЛЕ фразы. Пока прочитаешь весь этот мусор да дойдёшь до слова Пересадить, забудешь, что хотел сделать. ___Эти предъёмы с двоеточиями я рассматриваю как попытку структуризации команд. Но вместо структуризации выпячивается полный разлад. Нажмите правой кнопкой на фигуру "Вопрос". Вылезает пять блоков команд с такими предъёмами: | Вопрос: | Икона: | Присоединить | Вопрос: | Икона: Где же структура? И по-русски ли звучит такая фраза: | "Вопрос": удалить и нижний выход? Неужели хуже звучит первое, что приходит в голову: | Убрать вопрос и нижний выход? И по-русски ли звучит команда: | Икона: копировать в гр. буфер? Что есть два разных буфера - графический и текстовый - запоминается один раз (по справке). Зачем мозолить этим глаз в каждой команде? Не лучше ли сказать: | Запомнить фигуру. И где же структуризация, если команды одного рода имеют разные предъёмы: | Икона: вырезать в гр. буфер; | Точка ввода: вставить из гр. буфера? А вместо предъём-структуризации лучше ввести значки. Пусть даже псевдографические, как это сделал я. Нарпимер: Х Убрать фигуру Х Вырезать фигуру @ Запомнить фигуру (значок имитирует мозг:) \/ Вспомнить фигуру \х/ Вспомнить и заменить фигуру Для точки ввода: + Перенести путь (т.к. многостор. направление) v Заземлить путь Для Адреса: ^^^ Перейти на эту ветку (ведь ветка всегда сверху) + Выбрать ветку И так далее. Любую критику выслушаю с большим удовольствием. 4. Граф меню вызывается из любой точки экрана. Если оно не влезает - приклеивается к краю экрана, а мышь сама становится в центр, на "Действие". |
Автор: | ==== [ Воскресенье, 06 Июнь, 2010 18:34 ] |
Заголовок сообщения: | Re: Улучшенные варианты ДРАКОНа (через EXE-редактор) |
Станислав, большое спасибо за внимание к и.с. DRAKON. Интересен Ваш опыт ее модификации. Модификации могут быть полезны опытному пользователю. Буду разбираться с предоставленным материалом. Меня беспокоит, что ссылка http://files.mail.ru/Q865QP будет действительна только несколько дней, архивированный файл лучше передавать во вложении к сообщению для постоянного хранения. То, что Вы пишите, с точки зрения заинтересованного пользователя и опытного программиста понятно. Я исходил из того, что у и.с. DRAKON будет широкая аудитория, в том числе - первоклассник, бухгалтер, экономист, конструктор, посетитель - командировочный, человек без опыта работы с программой и компьютером, человек загруженный другими делами. Представляя их перед собой и пишется интегрированная среда применения языка ДРАКОН, обратите внимание не интегрированная среда разработки на языке ДРАКОН. |
Автор: | С. Тарасенко [ Воскресенье, 06 Июнь, 2010 21:15 ] |
Заголовок сообщения: | Re: Улучшенные варианты ДРАКОНа (через EXE-редактор) |
Геннадий Тышов писал(а): Я исходил из того, что у и.с. DRAKON будет широкая аудитория... человек без опыта работы с программой и компьютером, человек загруженный другими делами. Понятно. Тогда я в своих лексических изменениях несколько не прав. Тогда нужно оставить деление на графический буфер и текстовый, а также оставить определения элементов ("точка ввода", фигура" итп). НО!!! Не в самой команде, а - в подсказке! Причём писать пояснение в строке состояния не разумно, т.к. никто её не читает. Лучше всего, я думаю, реализовать ВСПЛЫВАЮЩИЕ ПОДСКАЗКИ к пунктам контекстного меню. Мне уже это не по силам, со своим Ресторатором. Придётся делать Вам. Суть всплывающих подсказок: * ОПЫТНЫЙ ПОЛЬЗОВАТЕЛЬ мгновенно навёл и нажал. Подсказка не успела появиться и отвлечь его драгоценное внимание. * НАЧИНАЮЩИЙ навёл на пункт (допустим, "Перенести путь") - и не знает что делать. Задумался. Что ещё за чёрт, какой такой путь?.. Вот тут ему и всплывает подсказка: "Отделить линию от нижнего узла и перенести в другую точку ввода." Или ещё как-нибудь... Подсказки нужно тщательно продумать, чтобы они были: - понятны, - лаконичны, - по-русски. Без "лиан" и "шампуров". Ведь вы рассчитываете на начинающего, который не читал книги "Как улучшить работу ума" и слыхом не слыхивал о всяких шампурах с иконами. Такие подсказки лучше и начинающему (т.к. подробнее), и опытному (т.к. не отвлекают, когда не нужно). И уж во всяком случае, фразоблок "Точка ввода: лиану пересадить в точку ввода" даже неопытному (тем более неопытному!) понятен гораздо хуже, чем нормальное русское: "Перенести путь". Вот вам и "широкая аудитория"... В этом я вам помогу, чем смогу. Вроде литературный вкус у меня какой-никакой есть. Нужно только ваше согласие. Если оно будет - айда за дело! |
Страница 5 из 6 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |