DRAKON.SU
https://forum.drakon.su/

Программа «ДраконКод». Обсуждение идей участника ibnteo
https://forum.drakon.su/viewtopic.php?f=62&t=6996
Страница 9 из 10

Автор:  ibnteo [ Пятница, 20 Май, 2022 22:25 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

Зум навигация прямо огонь, мышью, и на сенсорном экране, через двуручный зум, одним польцем выбирается неподвижная точка а другой изменяем масштабирование, сразу делаю с хорошей быстрой анимацией. Надо будет ещё клавиатурную сделать, чтобы не менее удобной была, причём будет возможность управлять всем с буквенного блока клавиатуры, в vim стиле hjkl, или более привычными стрелками на ijkl. В отличие от текстового редактора, можно очень быстро перемещаться в нужное место программы, схема отображает хорошо узнаваемые узоры, текст такого не даёт. Программирование будет менее затратно по мыслетопливу, и выглядит схема как хорошо нарисованный мультфильм, с ней гораздо приятнее будет работать, да ещё можно будет и на смартфоне вполне комфортно работать.

Автор:  Владимир Паронджанов [ Суббота, 21 Май, 2022 08:37 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

ibnteo писал(а):
Зум навигация прямо огонь...
Программирование будет менее затратно по мыслетопливу, и выглядит схема как хорошо нарисованный мультфильм, с ней гораздо приятнее будет работать.

Владимир, поздравляю!

Автор:  ibnteo [ Воскресенье, 22 Май, 2022 20:47 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

Из книги Раскина «Интерфийс»:
Цитата:
среды программирования имеют, наверное, самые худшие интерфейсы в компьютерной индустрии

Автор:  ibnteo [ Суббота, 28 Май, 2022 15:10 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

Смещение икон можно сделать не только в половину ширины иконы, но и в треть и даже в четверть ширины иконы, уменьшая таким образом ширину всей схемы, выглядит необычно, но привыкнуть можно. Сразу делаю отрисовку с возможностью настраивать этот параметр. Расстановка икон уже готова, частично готовы и соединительные линии.

Методы классов отлично выглядят, если их разместить в несколько колонок, как Силуэт.

А вот switch-case лучше оказался вертикальным, использовал для case икону Вывода (указатель вправо, немного похожа на икону if), её по прямому назначению не получается задействовавть в ДраконКоде. Можно просто отобразить наличие или отсутствие break.

Вложения:
IMG_20220528_150833_111.jpg
IMG_20220528_150833_111.jpg [ 24.79 КБ | Просмотров: 3509 ]

Автор:  ibnteo [ Понедельник, 30 Май, 2022 01:44 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

Для работы с HTML сделал новую икону для тегов.
В блоке <head> одинакового типа иконы будут группироваться, чтобы схема не была слишком широкой.
Блочные и строчные HTML элементы будут по-разному раскрывать вложенные данные, по вертикали и горизонтали.
У начальной иконы открытого файла будут присутствовать все данные по этому файлу, некоторые из них можно будет менять прямо в схеме.

Вложения:
dc-html.png
dc-html.png [ 91.61 КБ | Просмотров: 3489 ]

Автор:  ibnteo [ Понедельник, 30 Май, 2022 16:10 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

Новая икона для текста:
Вложение:
IMG_20220530_160642_596.jpg
IMG_20220530_160642_596.jpg [ 29.96 КБ | Просмотров: 3479 ]


Решил отказаться от замыкающих линий, без них схему проще читать, сразу видны последние узлы.

Автор:  ibnteo [ Вторник, 31 Май, 2022 01:07 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

Попробовал сделать закруглённые углы у линий, так даже больше нравится. Вынесу в настройки такой вывод.

Вложения:
IMG_20220531_010346_571.jpg
IMG_20220531_010346_571.jpg [ 62.3 КБ | Просмотров: 3472 ]

Автор:  ibnteo [ Вторник, 31 Май, 2022 15:23 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

ibnteo писал(а):
Надо будет ещё клавиатурную сделать, чтобы не менее удобной была, причём будет возможность управлять всем с буквенного блока клавиатуры, в vim стиле hjkl, или более привычными стрелками на ijkl.
Сделал такое управление, при нажатии на Alt в центре появляется крестик, и после этого стрелки (и IJKL) перемещают холст, плюс и минус зумят относительно центра (без Alt – относительно начала координат).
На Home/End/PageUp/PageDown (или UOP; как в моей клавиатуре CatBoard с Fn) более дальнее перемещение, можно быстро пролистать схему, по пути отдаляя или приближая её +-.
Alt+Space/Enter устанавливает курсор на ближайшую к центру икону.
Кроме отмены и повтора изменений Ctrl+Z/Y, будет ещё Ctrl+Up/Down для перехода по истории перемещения по иконам, можно будет мышиной или Alt-навигацией перейти в другое место схемы, и потом вернуться быстро через Alt+Up.

Для работы со схемой можно будет вполне обойтись одной клавиатурой, без мыши. Мне такое управление сразу же понравилось, буду пользоваться.

Автор:  ibnteo [ Вторник, 31 Май, 2022 20:25 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

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

Вложения:
zenpcb-dc.png
zenpcb-dc.png [ 98 КБ | Просмотров: 3461 ]
zenpcb-vsc.png
zenpcb-vsc.png [ 100.33 КБ | Просмотров: 3461 ]

Автор:  ibnteo [ Вторник, 31 Май, 2022 20:30 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

Схема всего кода этой библиотеки, в текстовом редакторе занимает 5 экранов.

Вложения:
zenpcb-dc-all.png
zenpcb-dc-all.png [ 41.98 КБ | Просмотров: 3461 ]

Автор:  tonyk [ Понедельник, 06 Июнь, 2022 08:30 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

ibnteo, может, я не заметил, поэтому пардон меня если чё.

А как вся эта лепота будет выводится на печать? Особенно интересно, как будет выполняться разбивка на страницы. Ещё интересно, как это будет выглядеть при чёрно-белой печати. Это учитывается при создании редактора?

Автор:  ibnteo [ Четверг, 09 Июнь, 2022 04:38 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

tonyk писал(а):
А как вся эта лепота будет выводится на печать? Особенно интересно, как будет выполняться разбивка на страницы. Ещё интересно, как это будет выглядеть при чёрно-белой печати. Это учитывается при создании редактора?
Будет экспорт в SVG и PNG, распечатать можно будет из графического редактора. По поводу чёрно-белой печати, или для работы со схемой дальтониками, можно будет сделать заливку икон не цветом, а различными узорами.

Я не вижу необходимости в печати, никто уже и код программ не печатает, у каждого есть компьютер с достаточно большим монитором, а в кармане лежит смартфон с отличным цветным экраном, даже на нём удобно смотреть схему.

Автор:  tonyk [ Четверг, 09 Июнь, 2022 12:27 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

ibnteo писал(а):
Я не вижу необходимости в печати, никто уже и код программ не печатает, у каждого есть компьютер с достаточно большим монитором, а в кармане лежит смартфон с отличным цветным экраном, даже на нём удобно смотреть схему.

Наивный. Видимо не делал ты заказы для Росатома или Министерства обороны. Помимо электронного вида, всегда требовали бумажный. Учитывая, что ГОСТ стал допускать использование цвета в документах совсем не давно, вывод в монохромном виде нужен не дальтоникам. Да и монохромная печать доступней и дешевле. И ещё нюанс. На режимные объекты запрещёно проносить телефоны, так что смотреть можно только бумажные документы.
Вот даже китайская среда программирования их ПЛК показывает разбивку рабочего поля на листы при печати, чтобы всё разместить аккуратно.

Вложения:
Screenshot_405.jpg
Screenshot_405.jpg [ 170.42 КБ | Просмотров: 3360 ]

Автор:  ibnteo [ Четверг, 09 Июнь, 2022 21:57 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

Если требуется предоставить исходники в напечатанном виде, то можно просто распечатать текст исходного кода, с которым ДраконКод работает.

Сейчас я не вижу большой необходимости в печати схемы, есть более актуальные проблемы, которые надо решать.

Автор:  tonyk [ Понедельник, 13 Июнь, 2022 14:47 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

ibnteo писал(а):
можно просто распечатать текст исходного кода, с которым ДраконКод работает.

Тогда это уже не будет программа на языке Дракон. Ха-ха.
ibnteo писал(а):
Сейчас я не вижу большой необходимости в печати схемы

А потом не сможете, потому что это изначально не было предусмотрено при создании схемы в графическом редакторе. Делать убогонькие скриншоты, вместо автоматически напечатанного списка условных обозначений и самой программы, автоматически аккуратно размещённой на листах с указанием ссылок между листами, что делают все приличные среды разработки ПО для ПЛК.

Автор:  ibnteo [ Понедельник, 13 Июнь, 2022 18:07 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

tonyk писал(а):
Тогда это уже не будет программа на языке Дракон. Ха-ха
ДраконКод это просто схематическое представление обычного кода. С одним и тем же кодом можно будет одновременно работать и через ДраконКод, и через текстовый редактор. Есть ещё идея, как сделать более удобный текстовый редактор кода, где не надо возиться с отступами, блоками кода, после ДК займусь и им, будет сразу два уникальных редактора кода в одной программе.

Никто уже не работает с программным кодом в печатном виде, я последний раз так делал лет 30 назад, когда не было доступа к монитору на ЕС ЭВМ, и на ПМК, где видно только одну строку кода, а в архиве вообще не важно, как его хранить, лучше в более компактном текстовом виде.

На экране монитора перемещаться по схеме намного быстрее и удобнее, и даже на маленьком экране смартфона удобнее, чем листать схему, разбитую на много страниц. Это как работать с чертежами на бумаге, и в интерактивном трёхмерном редакторе, где можно рассмотреть детали со всех сторон под любым углом.

Не убедили меня, что это вообще может понадобится хоть кому-то.

Автор:  tonyk [ Вторник, 14 Июнь, 2022 10:13 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

Цитата:
С одним и тем же кодом можно будет одновременно работать и через ДраконКод, и через текстовый редактор

Это невозможно, ибо у Дракона отсутствует текстовое представление. Нет его на сегодняшний день. Никто не озаботился им, и сильно зря, ИМХО. А речь ibnteo ведёт о тексте программы на языке, в который преобразуется Дракон-диаграмма, что са-а-а-афсем другое. Всё программирование и отладка должны идти именно по диаграмме Дракона, а не тексту программу, которое получено из этой диаграммы. Я тут уже где-то писал об этом. Для понимания можно посмотреть на работу со средами программирования ПЛК.
Цитата:
Никто уже не работает с программным кодом в печатном виде

Вот именно, зато очень даже работают с диаграммами того же LabVIEW. Я ведь толкую именно о графическом представлении программы на Драконе, а не тексте на языке, который будет получен после трансляции диаграммы на Драконе.
Цитата:
На экране монитора перемещаться по схеме намного быстрее и удобнее, и даже на маленьком экране смартфона удобнее, чем листать схему, разбитую на много страниц

Никто с этим утверждением не спорит, но это взгляд программиста-эгоиста :)))). Помню, распечатал диаграмму метра 3-4 длиной на рулонной бумаге, повесили на стенку, и сразу несколько человек увидели, почему алгоритм работает не совсем так, как ждали. А на тех картинках редактора, что показаны, нет ни разбивки на листы, ни разбивки на зоны, ни номеров блоков. Как мне, например, указать блок, в котором неверно указано проверяемое условие?

Кстати, ещё вопрос. Во всех современных САПР и средах программирования ПЛК есть возможность структурирования проекта. Например, я создаю структурные единицы, указываю точки подключения к ним, указываю параметры подключений. Каждую структурную единицу можно разложить на более мелки единицы и так далее. Это существенно упрощает навигацию в проекте и работу с ним. Ещё есть возможность подключения к проекту (вот, ещё один вопрос о наличии) других документов и описания правил их обработки. Есть что-то подобное в создаваемом редакторе?

Автор:  ibnteo [ Вторник, 14 Июнь, 2022 19:14 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

tonyk писал(а):
А речь ibnteo ведёт о тексте программы на языке, в который преобразуется Дракон-диаграмма, что са-а-а-афсем другое. Всё программирование и отладка должны идти именно по диаграмме Дракона, а не тексту программу, которое получено из этой диаграммы. Я тут уже где-то писал об этом. Для понимания можно посмотреть на работу со средами программирования ПЛК.
Об этом и речь, что исходный код программы и есть формат для хранения ДраконКод схемы. Есть некоторые идеи для создания текстового формата для хранения ДраконКод схем без наличия компилятора этого кода, когда просто нужна схема чего-либо, но она будет создана в рамках ДраконКод схемы, а не ДРАКОН схемы, циклы только блочные, нет стрелок, возможны висящие иконы.

tonyk писал(а):
Кстати, ещё вопрос. Во всех современных САПР и средах программирования ПЛК есть возможность структурирования проекта. Например, я создаю структурные единицы, указываю точки подключения к ним, указываю параметры подключений. Каждую структурную единицу можно разложить на более мелки единицы и так далее. Это существенно упрощает навигацию в проекте и работу с ним. Ещё есть возможность подключения к проекту (вот, ещё один вопрос о наличии) других документов и описания правил их обработки. Есть что-то подобное в создаваемом редакторе?
В ДраконКоде так и предполагается, всё что можно будет разбить на небольшие куски, будет автоматически разложено по разным иконам, для этого даже придумал новые иконы для данных: текст, массив, ассоциативный массив, также есть обычные функции, анонимные функции, прерывание и повтор цикла.
С ПЛК не работал, но думаю, что не будет проблем при добавлении поддержки того же ST языка.

ДраконКод предназначен для работы с уже существующим программным кодом, причём после работы с кодом через схему, можно без проблем продолжить работать с ним через обычный текстовый редактор кода, так как код получается обычный, без GOTO (если его изначально не было), и даже хорошо отформатированный, в том стиле, что будет задан в настройках.

Автор:  tonyk [ Среда, 15 Июнь, 2022 07:10 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

ibnteo писал(а):
после работы с кодом через схему, можно без проблем продолжить работать с ним через обычный текстовый редактор кода

Не понял. А как тогда отладка будет работать?

Есть среды программирования для ПЛК, которые программы на графических языках ГОСТ Р МЭК 61131-3 транслируют в С, но отладка всё равно работает по графической диаграмме. Пользователю дают писать свои фрагменты на С в отдельных блоках, чтобы мухи и котлеты лежали в разных тарелках.

Автор:  ibnteo [ Суббота, 18 Июнь, 2022 11:53 ]
Заголовок сообщения:  Re: Программа «ДраконКод». Обсуждение идей участника ibnteo

tonyk писал(а):
Не понял. А как тогда отладка будет работать
Отладка может быть и в редакторе схем, и в текстовом редакторе.

Страница 9 из 10 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/