DRAKON.SU

Текущее время: Пятница, 19 Апрель, 2024 10:35

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 122 ]  На страницу Пред.  1, 2, 3, 4, 5, 6, 7  След.
Автор Сообщение
 Заголовок сообщения: Re: Язык ДРАКОН и Data Definition Language
СообщениеДобавлено: Воскресенье, 13 Ноябрь, 2016 13:32 
Аватара пользователя

Зарегистрирован: Суббота, 29 Март, 2008 19:27
Сообщения: 1098
Откуда: Россия, Чебоксары
Arhat109 писал(а):
Подключайтесь!
Хм. Я тут уже почти десять лет, и попытки вырастить что-либо интересное благополучно ушли в песок. И каждый раз появляется новый человек, излагает соображения, даже разрабатывает инструмент (дракон-редактор) - на чём всё так же благополучно и заканчивается.
Почему?
Причины вижу три:
- консервативная (мягко говоря) авторская позиция с многочисленными табу в отношении языка Дракон;
- кустарщина, не поддержанная научными исследованиями;
- непонимание обществом перспектив (как следствие перечисленного)

Цитата:
профессионалам по языкам и когнитивному восприятию!
По языкам - сколько угодно, а вот по когнитивному восприятию - конь не валялся. Нет специалистов.

Цитата:
1. Как понимаю, вы имеете ввиду, что в сложном вычислительном алгоритме, использование графического обрамления переменных, констант и прочих наборов данных, с возможностью визуального контроля типов (стыковочные границы разной формы) - есть "визуальный мусор", так или я Вас не так понял?
Да.
И здесь надо отталкиваться от задачи.
Для первоначального обучения такой подход приемлем.
Для эффективной работы - полностью провален.

Цитата:
когда-то Вы тоже были РЕБЕНКОМ
Когда я был ребёнком, компьютеров доступных не было, не было и проблемы обучения.
И идея о том, что ребёнков надо учить погремушками - имхо, порочна.
Погремушка нужна в младенческом возрасте, а программирование - уже в подростковом. Неадекватный инструмент эта погремушка.

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

Цитата:
Я даже сильно уверен, что как кодируются и что означают те или иные биты той или иной команды вашего любимого процессора - вам даже и неизвестны от слова "вовсе".
Опять же - не будьте категоричны :) Некоторые процессоры я знаю достаточно детально - по работе :)

Цитата:
что вы имели ввиду под "поколение Макдоналдс"
Поколение, которое принципиально не учат думать, а натаскивают на конкретные "компетенции" (в том числе с помощью ЕГЭ). Его можно назвать потерянным, потому что исправлять долго и трудно, и работа эта штучная, неблагодарная и без гарантий.
В массе этому поколению нужно не "почему" и "как устроено", а "как сделать" что-то конкретное. И лучше, чтобы в красивых картинках, как младенцам - а то возможности концентрации внимания у них ограничены, а мотивация отсутствует напрочь.

Цитата:
Вы считаете, что эргономика в т.ч. и ДРАКОН - хуже чем текстового представления программы на ЯВУ?
То, что я был первым публичным защитником Дракона на множестве форумов, ещё не означает, что я не вижу его слабых мест.
Это весьма ограниченный инструмент. И надо чётко позиционировать его в работе.
Пока что тут определилась его экологическая ниша - представление алгоритмов "для домохозяек", медиков и т.п.
Однако не прекращаются попытки неадекватного его применения. Например, у юристов. У них декларативные знания, и нужен другой инструмент.
Ну и т.д. и т.п.

Цитата:
Сделать сразу и изменение к ДРАКОН И компилятор под новое представление И систему разработки И сопровождения, отладки кода .. извините, но я ТАК не умею.
Это умею, например, я (без ложной скромности). Но если за десяток лет не сделал, наверное, была тому причина?
А она проста: я не имею научно обоснованных предложений по всему комплексу когнитивных проблем. Ведь тут алгоритмика - самая простая штука. Гораздо более важны данные, стандартизированные интерфейсы с внешним миром, и т.д. и т.п.
Здесь я не знаю, как решить это эффективно.
И никто не помогает, не хочет впрягаться и думать в эту сторону.

Цитата:
предлагаете объемное визуальное представление программного графа?
Нет, зачем же.
Нужен набор эффективных инструментов редукции сложности.
Нужен набор эффективных инструментов постановки и решения оперативно-тактических задач в процессе разработки.
И т.д.
Если мы останемся на уровне бумажного представления (нарисуем алгоритм, ER-диаграмму и т.п.), то мы обречены на неудачу.
Процесс разработки (и принятия проектных решений в том числе) принципиально динамический, тут и нужна компьютерная помощь. А мы пока возимся с вопросом, как бы покрасивее трек нарисовать.

Цитата:
КУДА надо направить усилия по Вашему мнению?
На когнитивную эргономику.
Определить, как эффективнее всего изучать и проектировать данные. Как понимать логику внешних интерфейсов, которые изложены в убийственно неподъёмных кривых стандартах. И т.д. и т.п.
И вот только после того, как мы будем понимать, как именно со всеми этими вещами работает человек, можно будет предложить способы повышения эффективности этой работы (вплоть до возможной смены представлений, например).
А после того, как мы будем знать, чего хотеть, - вот тогда и можно задуматься над разработкой эффективного инструментария.

Ардуино никак в эту работу не вписывается. Им можно заниматься для коммерческой популяризации каких-то концепций и инструментов, но популяризовать пока и нечего...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Язык ДРАКОН и Data Definition Language
СообщениеДобавлено: Воскресенье, 13 Ноябрь, 2016 16:55 

Зарегистрирован: Пятница, 15 Апрель, 2016 11:38
Сообщения: 119
Откуда: из СССР
Цитата:
На когнитивную эргономику.
Определить, как эффективнее всего изучать и проектировать данные. Как понимать логику внешних интерфейсов ..


O'key google. :) Полистал, посмотрел и .. не нашел ничего вразумительного, кроме того что сам термин появился в районе 90-х годов, то есть лет 20 назад.

Как эффективнее всего .. у Вас есть какие-то ссылки, на какие-нибудь труды, где в чиселках выявлено и каким-то более надежным и достоверным способом чем "опрос моего сына" какие существующие способы представления и описания данных "когнитивно эргономны" и "насколько в эргограммах" или чем там оно измеряется?

За 20 лет, это направление обросло какой-то математикой или ещё нет? Я вот пока не нашел чего-то похожего на "теорию".. поделитесь ссылками, пожалуйста.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Язык ДРАКОН и Data Definition Language
СообщениеДобавлено: Воскресенье, 13 Ноябрь, 2016 18:08 
Аватара пользователя

Зарегистрирован: Суббота, 29 Март, 2008 19:27
Сообщения: 1098
Откуда: Россия, Чебоксары
Arhat109 писал(а):
Я вот пока не нашел чего-то похожего на "теорию".. поделитесь ссылками, пожалуйста.
Так и нет её. Никому не нужно, никто и не занимается.
Не знаю, Паронджанов ли предложил термин (у него первого увидел), но повторю, что привлечение внимания к когнитивной эргономике считаю главной его заслугой!
К сожалению, именно в эту сторону работы не были продолжены. Сосредоточились на популяризации мелкого частного случая, одного из возможных инструментов - а громадное и благодатное поле деятельности по-прежнему остаётся за горизонтом...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Язык ДРАКОН и Data Definition Language
СообщениеДобавлено: Воскресенье, 13 Ноябрь, 2016 18:49 

Зарегистрирован: Пятница, 15 Апрель, 2016 11:38
Сообщения: 119
Откуда: из СССР
Ну почто так категорично?
Есть. Так юзабилити или "когнитивную эргономичность" интерфейсов программ уже вполне себе считают и даже несколькими методами аналитически и без "икспертной аценки" или "опороса свидетелей иеговы", пардон пользователей систем. :)

Меня интересовало приложение когнитивной эргономичности именно к языкам DDL, и желательно в сравнении "одномерного текстового подхода" ЯВУ (без разницы в общем-то какого) и имеющихся методик визуального проектирования данных (UML, ERIL и т.д.) ..

.. глядя на методики оценки этой самой "когнитивной эргономичности" для решения задач понимания программ .. смею ожидать что любая из имеющихся методик оценки интерфейсов даст "100 очков вперед" визуальным методам против "текстовых портянок определения классов". Точно также как описание алгоритма на ДРАКОН выигрывает по отношению к его текстовому описанию "в классическом ТЗ".

То что я предложил - это способ как изобразительными методами показывать (и контролировать) типизацию объектов данных в алгоритмах. Просто, вместо того чтобы обсасывать теорию "непойми чего", я предпочитаю двигаться вперед, пусть и кустарными методами. По-немногу, но двигаться чем ждать построения кузявой теории.

"визуальный мусор"? Да, вполне возможно что и так. На каком-то уровне абстракции алгоритма - возможно даже и вредно. Но, базовые типы данных как правило интересны только на нижнем уровне программного продукта. Почему бы и не использовать ДРАКОН на этом уровне тоже?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Язык ДРАКОН и Data Definition Language
СообщениеДобавлено: Воскресенье, 13 Ноябрь, 2016 19:17 
Аватара пользователя

Зарегистрирован: Суббота, 29 Март, 2008 19:27
Сообщения: 1098
Откуда: Россия, Чебоксары
Arhat109 писал(а):
Ну почто так категорично?
Потому что достало.

Цитата:
Так юзабилити или "когнитивную эргономичность" интерфейсов программ уже вполне себе считают и даже несколькими методами аналитически
Юзабилити и эргономика оператора, которую считают по взглядам и кликами, к КОГНИТИВНОЙ эргономике относятся весьма косвенно.

Цитата:
Меня интересовало приложение когнитивной эргономичности именно к языкам DDL, и желательно в сравнении "одномерного текстового подхода" ЯВУ (без разницы в общем-то какого) и имеющихся методик визуального проектирования данных (UML, ERIL и т.д.) ..
Здесь вот какая фигня.
DDL (как и весь комплекс задач, решаемых в ходе проектирования софта) не покрывается полностью ни одной методикой.
Очевидно, просто потому, что принципиально многомерный граф ЗНАНИЙ (метамодели, с которой работает проектировщик), невозможно адекватно распластать в рамки одной точки зрения.
Поэтому тот же UML вводит де факто целый набор различных представлений, которые всё равно не снижают сложность в достаточной мере.
А вы вообще одно хотите, оптимальное и эффективное.
Ну да я тоже хочу, но есть мнения, что это даже принципиально невозможно! ;)

Цитата:
смею ожидать что любая из имеющихся методик оценки интерфейсов даст "100 очков вперед" визуальным методам против "текстовых портянок определения классов".
Угу. Только почему-то целая армия профессионалов несогласна. Может, привычка к консерватизму? ;)

Цитата:
я предпочитаю двигаться вперед, пусть и кустарными методами.
Знакомое дело. ;)
Но таки здесь я наступил на горло и всё такое, ибо сколько ж можно.
Надо сначала понять, чего хотим - тогда решение возникнет на поверхности само собой.

Цитата:
базовые типы данных как правило интересны только на нижнем уровне программного продукта. Почему бы и не использовать ДРАКОН на этом уровне тоже?
А разве я сказал, что против визуального выделения типов данных?
Наоборот, я очень даже за. Только совсем другими методами, без визуального мусора.
Не спрашивайте, как именно - я готовое решение предложить пока не могу.
Не надо забывать ещё о таком инструменте, как цвет. Цветовой выделение синтаксиса в RAD-средах - давно привычно и удобно...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Язык ДРАКОН и Data Definition Language
СообщениеДобавлено: Воскресенье, 13 Ноябрь, 2016 20:51 

Зарегистрирован: Пятница, 15 Апрель, 2016 11:38
Сообщения: 119
Откуда: из СССР
Работающая программа движения робота по линии.
Сваял таки работающий пример согласно такому представлению типов в программах на ДРАКОН (картинка кликабельна и увеличиваема тоже):


Вложения:
drakMoveLine.jpg
drakMoveLine.jpg [ 60.57 КБ | Просмотров: 14104 ]


Последний раз редактировалось Arhat109 Воскресенье, 13 Ноябрь, 2016 21:05, всего редактировалось 1 раз.
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Язык ДРАКОН и Data Definition Language
СообщениеДобавлено: Воскресенье, 13 Ноябрь, 2016 21:02 

Зарегистрирован: Пятница, 15 Апрель, 2016 11:38
Сообщения: 119
Откуда: из СССР
Понятно что программа - проста. Но, вот какова её "когнитивная эргономичность в сравнении с текстом на "С"?

Код:
do{
  if( digitalRead(A1) == 1 )
    speedLeft = 0;
  else
    speedLeft = 255;

  if( digitalRead(A2) == 1 )
    speedRight = 0;
  else
    speedRight = 255;

  if( millis() - prevTime >= 8 ){
    analogWrite(9, speedLeft);
    analogWrite(10, speedRight);
    prevTime = millis();
  }
}while(1);


Кстати, тут есть ошибка. Весьма неприятная, и практически редко проявляющаяся: millis() возвращает unsigned long, и переменная конечно же определена также. Только вот константа указана как int .. то самое "несовпадение типов в выражении". Если развернуть предикат Wait в такую икону Выбор, то .. упс. Ошибка станет наглядна, из-за того что пристыковать целую константу уже не получится! :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Язык ДРАКОН и Data Definition Language
СообщениеДобавлено: Воскресенье, 13 Ноябрь, 2016 21:27 
Аватара пользователя

Зарегистрирован: Суббота, 29 Март, 2008 19:27
Сообщения: 1098
Откуда: Россия, Чебоксары
Arhat109 писал(а):
какова её "когнитивная эргономичность в сравнении с текстом на "С"?
Пёстро, в глазах рябит.
Не в последнюю очередь из-за картинок внешних устройств.
Серьёзную управляющую программу в таком виде будет очень трудно осматривать.
А в тексте зато легко ошибиться.

(Кстати, стандартное форматирование текста вовсе не всегда добавляет эргономичности. Скорее, наоборот!)

Цитата:
несовпадение типов в выражении
С точки зрения эргономики хорошая среда разработки обязана автоматически и незаметно преобразовывать типы, если при этом не происходит потери информации.

А вот теперь о насущных задачах разработчика, которые лежат совсем в других плоскостях, нежели обсуждаемые здесь темы.
- хочу посмотреть список устройств, на которые в программе может быть произведён вывод;
- хочу посмотреть все места в программе, где И ПРИ КАКИХ УСЛОВИЯХ происходит вывод на устройство ХХХ;
- ну и т.п., по вкусу ;)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Язык ДРАКОН и Data Definition Language
СообщениеДобавлено: Воскресенье, 13 Ноябрь, 2016 21:59 

Зарегистрирован: Воскресенье, 24 Февраль, 2008 15:32
Сообщения: 5848
Откуда: Москва
1. Почему единица
Цитата:
if( digitalRead(A1) == 1 )
это черное?
Какая связь у единицы с черным?

2. На картинке изображена программа, правильно? В программе надо убрать знак вопроса из иконы Вопрос (в двух местах).


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Язык ДРАКОН и Data Definition Language
СообщениеДобавлено: Понедельник, 14 Ноябрь, 2016 05:10 

Зарегистрирован: Пятница, 15 Апрель, 2016 11:38
Сообщения: 119
Откуда: из СССР
Ну что "пестро" то - да. Рябит от ядовитого желтого цвета икон и некоторой тесноты в иконах. Картинки устройств подобраны не совсем удачно (датчики - сливаются в мелком виде), но .. уж какие нашел. Конечно надо бы какие-то стилизованные картинки а не фотографии в мелком виде.
Надо будет попытаться переработать с дизайнерской колокольни.

Не знаю как там с точки зрения эргономики, но меня всегда бесят "умные среды разработок", которые додумывают и что-то делают "заместо автора". Ты знаешь, что тут "пока ещё" (и тут: "еще" - правильно, а ещё - нет! Класс!) написал неверно .. а оно "хлоп" и уже тебя подправило .. удалив недописанный кусок как ошибочный. З-а-ш-и-б-и-с-ь ... кто-то "просил"? В текстовых редакторах особенно бесит когда оно настырно переводит первую букву в заглавную после единиц измерений или какой ишо синтаксической браконьеры (не стал убирать автоподстановку, было кракозябры) .. да, я пишу неграмотно. Но часто - сознательно.

Как раз вот ваше:
Цитата:
- хочу посмотреть список устройств, на которые в программе может быть произведён вывод;
- хочу посмотреть все места в программе, где И ПРИ КАКИХ УСЛОВИЯХ происходит вывод на устройство ХХХ;
- ну и т.п., по вкусу ;)

Мне кажется что ни разу не относится и не может относится к набору правил языка (а пока я хочу обсудить именно их), сколько к набору возможностей и use-case как раз "интегрированной среды разработки". Это в её компетенциях пробежаться по коду, отстроить графы программы и собрать в одно место (по нажатию кнопки опять жеж) выдержки из всех мест где что-то используется. Нет?

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

Владимир Даниэлович, да там "остатки" от правки текста в иконах. Можно рассматривать как "недоглядел".

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

Можно ли таким образом дополнить ДРАКОН использованием структур данных?
То есть:
- ввести базовые иконы "Константа", "Идентификатор" и "Вызов функции" ("Данные") в виде динамически формируемых икон с боковыми краями в соответствии с заявленным типом;
- ввести икону "Операция", в которой знак операции находится между двумя иконами "Данные" и боковые края которой определяются по типу результата. Присваивание - тоже операция;
- ввести в язык гибкую икону [b]Выражение[/b], боковые стороны которой формируются динамически, согласно типам данных, представленным внутри иконами переменных, констант, вызовов функций. И которая может контролировать тип уже использованных данных при построении выражений;

- после чего разрешить кроме текста внутри икон записывать такие вот иконы-выражения;


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Язык ДРАКОН и Data Definition Language
СообщениеДобавлено: Понедельник, 14 Ноябрь, 2016 06:03 

Зарегистрирован: Пятница, 15 Апрель, 2016 11:38
Сообщения: 119
Откуда: из СССР
Поправил пример согласно требованиям ДРАКОН, и попробовал изменить цвета "на скорую руку".


Вложения:
drakMoveLine2.jpg
drakMoveLine2.jpg [ 68.45 КБ | Просмотров: 14094 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Язык ДРАКОН и Data Definition Language
СообщениеДобавлено: Понедельник, 14 Ноябрь, 2016 08:54 
Аватара пользователя

Зарегистрирован: Суббота, 29 Март, 2008 19:27
Сообщения: 1098
Откуда: Россия, Чебоксары
Arhat109 писал(а):
Надо будет попытаться переработать с дизайнерской колокольни.
Вот именно! Но "дизайнерская колокольня" - штука субъективная. А надо бы исследовать по полной психофизиологии, что оно да как.

Цитата:
всегда бесят "умные среды разработок", которые додумывают и что-то делают "заместо автора".
Ага. Понятно, что они хотели как лучше. Но даже в Вроде достают предлагаемые слова.
Это тоже аспект эргономики, да.

Цитата:
В текстовых редакторах особенно бесит когда оно настырно переводит первую букву в заглавную
Это, к счастью, отключается в настройках.

Цитата:
Мне кажется что ни разу не относится и не может относится к набору правил языка (а пока я хочу обсудить именно их), сколько к набору возможностей и use-case как раз "интегрированной среды разработки".
Совершенно верно!
Но, если развивать мою мысль, получится, что язык - не такой уж и важный инструмент на самом деле.
Большой разницы между ними нет.
И на когнитивную эргономику влияет не только язык, но весь комплекс способов отображения и использования - то есть именно характеристики среды разработки.

Цитата:
Я пока не могу определиться какие дополнения надо ввести в ДРАКОН, чтобы алгоритм в его терминах можно было бы превратить в программу.
Никакие. Это перпендикулярные измерения. Поэтому я и настроен довольно скептически относительно перспектив Дракона.

Посмотрите: даже в обыкновенном операторе присваивания будет арифметическое или логическое выражение:
Цитата:
ввести икону "Операция", в которой знак операции находится между двумя иконами "Данные" и боковые края которой определяются по типу результата. Присваивание - тоже операция... после чего разрешить кроме текста внутри икон записывать такие вот иконы-выражения;
И выйдет нечитаемая хрень. Пробовали!
И от классического способа его записи не откажется никто и никогда (хотя можно было бы разложить в виде графа по элементарным операциям).
А возможность совершить ошибку (семантическую!) в формуле - велика. Синтаксические проблемы преобразования типов настолько элементарны, что в визуальном подтверждении не нуждаются!

В результате тот алгоритмический слой, разработку которого Дракон делает чуть более надёжной, занимает настолько мизерную часть в проекте, что огород и городить не стоит.

(Опять же обращаю внимание, что говорю о профессиональной разработке софта, а не учебно-игровой методике для детей.
Но таки и детей учить плаванию надо в реальной воде, а не в песочнице).


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Язык ДРАКОН и Data Definition Language
СообщениеДобавлено: Понедельник, 14 Ноябрь, 2016 09:25 

Зарегистрирован: Пятница, 15 Апрель, 2016 11:38
Сообщения: 119
Откуда: из СССР
Ну, "исследовать" у меня нет ни образования ни времени. С эргономикой дальше краткого институтского курса 30-и летней давности не сталкивался, а с когнитивной и тем паче. Я - не дизайнер (просто есть некоторые "в доступе", могу их попросить посмотреть на схемы и только). .. много чего и где "отключается в настройках", но когда работаешь на десятке чужих компов на дню - лазить по настройкам как-то "не с руки" и вовсе, но это ладно .. офтоп.

Не соглашусь и даже выскажу обратное утверждение: Язык - первейший инструмент для создания конгитивно-эргономической среды разрадотки с поддержкой всего цикла разработки ПО.
Доказательство:
Язык функционально полон и содержит в себе логически не противоречивые утверждения и конструкции. Разработка под такой язык ИДЕ (среды программирования) относительно низка по затратам и РАСШИРЯЕТ собой применение языка. Как пример ЯВУ - JAVA. Как факт - количество разработчиков, сред(ИДЕ), библиотек и т.д. под язык. Как иной пример - С++. Плохо спроектированный язык приводит к тому, что среда (ИДЕ) вынуждена ИСПРАВЛЯТЬ недостатки языка, как следствие большая стоимость разработки, выше порог вхождения, меньшее количество специалистов, библиотек и т.д. Как опосредованный итог .. среды разработки для С++ по большей части написаны на .. ага, Яве. Как отложенное следствие на будущее - уход в "небытие": байт-код Java уже исполняется микроконтроллерами напрямую, а вот внедрение конструкций, характерных для С++ - как-то не замечаю даже "в планах". :)
Впрочем, тоже оффтоп. Но на когнитивную эргономику влияет не только язык и/или оформление среды, но .. и даже "кто автор" и прочие рекламные заморочки, часто называемые "стандарт интерфейса". Windows - таковой "де факто" .. он что, правда "когнитивен"?!? :)

Цитата:
Никакие. Это перпендикулярные измерения. Поэтому я и настроен довольно скептически относительно перспектив Дракона

В этом месте сильно хочется почитать комментарий автора ДРАКОН - Владимира Даниэловича. Если окажется что Вы - правы, жаль, ну .. попробую отнаследоваться от ДРАКОН (кто там был у них в потомках? в том смысле что меня это врядли остановит) :)

Цитата:
И выйдет нечитаемая хрень. Пробовали!
-- ок, буду пробовать изобразить таким способом, что-то посложнее. Задачку для примерчика - подкинете?

Можно и оставить "классическую запись" присваивания, в части принудительной вставки символа "=" .. не вижу, что этому может помешать в предложенном мною варианте. Ок, давайте перерисую этот пример с "="...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Язык ДРАКОН и Data Definition Language
СообщениеДобавлено: Понедельник, 14 Ноябрь, 2016 09:33 

Зарегистрирован: Воскресенье, 24 Февраль, 2008 15:32
Сообщения: 5848
Откуда: Москва
Arhat109 писал(а):
меня сейчас интересует практическое встраивание описания данных в ДРАКОН-схемы по принципу Lego-scratches или Ardublock. В смысле на одном листе схемы.
Поддерживаю. Очень хорошая идея.

Ваши две последние картинки сделаны по этому принципу? Или нет?

С чем их надо сравнивать? Со Scratch? Или с Ardublock? Просьба пояснить.

Arhat109 писал(а):
Язык - первейший инструмент для создания когнитивно-эргономической среды разработки с поддержкой всего цикла разработки ПО.
Поддерживаю. Особенно эргономичный визуальный язык.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Язык ДРАКОН и Data Definition Language
СообщениеДобавлено: Понедельник, 14 Ноябрь, 2016 09:54 
Аватара пользователя

Зарегистрирован: Суббота, 29 Март, 2008 19:27
Сообщения: 1098
Откуда: Россия, Чебоксары
Arhat109 писал(а):
Ну, "исследовать" у меня нет ни образования ни времени.
Вот, характерная отмазка.
Точно то же самое происходит и в других областях. Столкнулся с этим, когда пытался сформулировать тезисы по реформе образования...
В результате отдельные энтузиасты локально занимаются кустарщиной, а в целом происходит бардак, узаконенный пробивными дельцами...

Цитата:
Язык - первейший инструмент для создания конгитивно-эргономической среды разрадотки с поддержкой всего цикла разработки ПО
Никак нет.
Ибо любой проект - это сложная, комплексная модель некоей предметной области, состоящая из ряда проекций в соответствии с той или иной точки зрения (характерный пример - UML).
Язык - это подмножество, одна из проекций.
В больших проектах зачастую используется несколько языков.
Кроме того, язык вообще не является определяющим. Как правило, определяющими являются внешние интерфейсы (входящие в техническое задание), которые диктуют технологии разработки (в большей степени конкретные инструменты, в меньшей - конкретные языки, которые эти инструменты поддерживают).

Цитата:
Язык функционально полон и содержит в себе логически не противоречивые утверждения и конструкции.
Это не имеет значения.
Никакой язык (в классическом его понимании) не сможет охватить всё многообразие поставленных задач, ни на одном языке невозможно полностью построить сколько-нибудь полную модель, из которой вырастает продукт.

Цитата:
Плохо спроектированный язык приводит к тому, что среда (ИДЕ) вынуждена ИСПРАВЛЯТЬ недостатки языка
Мы говорим о совершенно разных вещах.

Смотрите: в самом обычном проекте нам необходимы следующие элементы:
- структура данных;
- интерфейсы импорта/экспорта данных;
- дизайн форм и визуальных представлений результатов;
- изучение и использование окружения, стандартных библиотек и API;
- алгоритмы основных действий, составляющие его функциональность;
- обеспечение вспомогательных процессов, включая обработку ошибок и поддержку сервисных процессов (установка, обновление и т.п.);
- да, блин, поиск или рисование необходимых пиктограмм и иконок для приложения;
- разработка документации, включая онлайн-справку;
- и тэдэ и тэпэ.

Укажите, в каком месте здесь важен язык? ;)

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

Цитата:
байт-код Java уже исполняется микроконтроллерами напрямую, а вот внедрение конструкций, характерных для С++
Вот и выходит, что на фоне всего комплекса задач разработки это вот есть не более, чем мелкий технический вопрос.

Цитата:
Задачку для примерчика - подкинете?
Ну, к примеру, "Тетрис" изобразите! ;)
С музыкой, разумеется! ;)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Язык ДРАКОН и Data Definition Language
СообщениеДобавлено: Понедельник, 14 Ноябрь, 2016 10:00 

Зарегистрирован: Воскресенье, 24 Февраль, 2008 15:32
Сообщения: 5848
Откуда: Москва
Arhat109 писал(а):
В этом месте сильно хочется почитать комментарий автора ДРАКОН - Владимира Даниэловича.
Владимир, считаю, что вы на верном пути. Вы выдвинули принципиально новую, замечательную идею. И уверенно идете к прозорливо намеченной цели. Конечно, есть отдельные мелкие недостатки в пробирной палатке. Но Москва не сразу строилась.

Со временем все наладится. Я уверен в вашем успехе.

Замечания Алексея Донского тоже очень полезны. Они не дают возможности расслабляться и терять драгоценный темп.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Язык ДРАКОН и Data Definition Language
СообщениеДобавлено: Понедельник, 14 Ноябрь, 2016 12:19 

Зарегистрирован: Пятница, 15 Апрель, 2016 11:38
Сообщения: 119
Откуда: из СССР
Алексей, так я и не отрицаю что являюсь кустарем - одиночкой. Это не отмазка, по крайней мере в моем случае .. Я могу поучаствовать в каком-то научном исследовании .. только вот на "каких ролях"?

Мы уходим в сторону, но тем не менее считаю важным ответить:
Цитата:
Никак нет.
Ибо любой проект - это сложная, комплексная модель некоей предметной области, состоящая из ряда проекций в соответствии с той или иной точки зрения (характерный пример - UML).
Язык - это подмножество, одна из проекций.
В больших проектах зачастую используется несколько языков.
Кроме того, язык вообще не является определяющим. Как правило, определяющими являются внешние интерфейсы (входящие в техническое задание), которые диктуют технологии разработки (в большей степени конкретные инструменты, в меньшей - конкретные языки, которые эти инструменты поддерживают).

Вы - заблуждаетесь. Язык - это тот определяющий фактор, на котором Вы формируете ТЗ, на котором определены внешние интерфейсы, диктующие технологии и инструменты в том числе и совокупность используемых языков. Даже более того! Язык формирует ваше мировосприятие и особенности мышления. И не только ваши..

Цитата:
Никакой язык (в классическом его понимании) не сможет охватить всё многообразие поставленных задач, ни на одном языке невозможно полностью построить сколько-нибудь полную модель, из которой вырастает продукт.
Э-э-э .. как-бы "русский", "английский" .. не, не подходят? :)

Цитата:
Смотрите: в самом обычном проекте нам необходимы следующие элементы: (мой ответ выделен цветом, для результата проекта)
- структура данных .. определяется и делается на совокупности языков использованных в реализации проекта. По большей части это процедурные языки мало отличающиеся друг от друга в части DDL;
- интерфейсы импорта/экспорта данных .. в готовом проекте выражены в виде форм ввода/вывода, которые .. реализованы на совокупности языков проекта (см. выше);
- дизайн форм и визуальных представлений результатов .. часто формируется в виде картинок, которые потом "верстальщик+фронтендщик" создают .. ага, используя язык(и) из совокупности языков проекта;
- изучение и использование окружения, стандартных библиотек и API .. ну тут без отсылки языка, для которого и на котором писались все эти АПИ и библиотеки ваще как-то бессмыслица получится;
- алгоритмы основных действий, составляющие его функциональность .. часто выражены в ТЗ визуальным языком, а в конечном проекте - исключительно на языках совокупности;
- обеспечение вспомогательных процессов, включая обработку ошибок и поддержку сервисных процессов (установка, обновление и т.п.) .. значительная часть сред разработки на сегодня использует для этой цели .. угу, язык программирования проекта. composer для node.js вам в помощь;
- да, блин, поиск или рисование необходимых пиктограмм и иконок для приложения .. у Вас "каша" из инструментов, описаний и видов деятельности .. давайте таки отделять "мух от котлет": но и в этой деятельности без языка рисования вы обойтись не можете. И то, что он часто представлен иконками на интерфейсе граф-редактора .. языком он быть не перестает;
- разработка документации, включая онлайн-справку .. используется язык документирования для LaTEX или более современные типа PHP-Documentor;
- и тэдэ и тэпэ. .. и везде любая передача информации производится на .. языке этой передачи

А теперь попробуйте указать в каком месте язык не является определяющим и без него проект может и обойтись вовсе? Не бывает "абстрактных инструментов программирования" не привязанных к ЯЗЫКУ. Так что - ничего без языка .. увы не выходит. :)

Цитата:
Ну, к примеру, "Тетрис" изобразите! ;)
С музыкой, разумеется! ;)

Не оценил шутку. Что изобразить из тетриса? Алгоритм падения фигурки? Её вращения и перемещения по стакану или что? Картинку стакана с кубиками и музыкой?
Фи, я ожидал серъезного ответа.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Язык ДРАКОН и Data Definition Language
СообщениеДобавлено: Понедельник, 14 Ноябрь, 2016 12:30 

Зарегистрирован: Пятница, 15 Апрель, 2016 11:38
Сообщения: 119
Откуда: из СССР
Небольшое замечание к важности контроля типов данных:
Выше привел картинку - список изображений базовых типов значений для использования в них констант и имен переменных. Далее привел пример законченной (и работающей так) программы в виде улучшенной ДРАКОН-схемы ..
.. и никто так и не обратил внимание, что в программе использовано изображение с картинки типов данных для знакового целочисленного байта, диапазон значений которого как-бы -128 .. 127. В то время как скорости моторов устанавливаются в значение 0 и 255. Собственно "ошибка" была сделана сознательно, как тест "ненужности" контроля типов участниками обсуждения ..

P.S.
Кстати, пример был рисован конечно же вручную, но он также годится как пример обратного рефакторинга ДРАКОН-схемы из текста программы. Собственно что я и хочу в конечном счете получить как "побочное следствие" - незачем хранить "ДРАКОН"-формат, когда есть полноценный DDL.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Язык ДРАКОН и Data Definition Language
СообщениеДобавлено: Понедельник, 14 Ноябрь, 2016 12:58 
Аватара пользователя

Зарегистрирован: Суббота, 29 Март, 2008 19:27
Сообщения: 1098
Откуда: Россия, Чебоксары
Arhat109 писал(а):
Алексей, так я и не отрицаю
Так не в этом же дело. А в том, что НИКТО серьёзно не занимается вопросом. И это прискорбно.
И у всех найдутся причины. Объективные и уважительные. А воз и ныне там.
Миссия моя на этом форуме (которую для себя наметил) не выполняется, увы.

Цитата:
Вы - заблуждаетесь.
Заблуждаетесь вы. Я первый сказал! ;)

Цитата:
Язык ... на котором Вы формируете ТЗ, на котором определены внешние интерфейсы, диктующие технологии и инструменты в том числе и совокупность используемых языков. Даже более того! Язык формирует ваше мировосприятие и особенности мышления.
Совершенно верно.
А теперь вслушайтесь ещё раз: для формирования ТЗ и модели мы вынуждены использовать много разных языков.
Почему? Потому что разбиваем задачу - на подзадачи, целостное представление (знание) - на набор ограниченных точек зрения.

Да, и ни один из используемых языков:
- не является универсальным;
- не является определяющим (с точки зрения постановки и решения задачи).

Цитата:
Цитата:
Никакой язык (в классическом его понимании) не сможет охватить всё многообразие поставленных задач, ни на одном языке невозможно полностью построить сколько-нибудь полную модель, из которой вырастает продукт.
Э-э-э .. как-бы "русский", "английский" .. не, не подходят? :)
Нет. Иначе бы не нужна была даже математика, не говоря уж о множестве DSL.

Цитата:
По большей части это процедурные языки мало отличающиеся друг от друга в части DDL
Ну флаг в руки, если напишете банковскую систему без ER-диаграмм и SQL, к примеру.

Цитата:
- интерфейсы импорта/экспорта данных .. в готовом проекте выражены в виде форм ввода/вывода, которые .. реализованы на совокупности языков проекта (см. выше);
Угу. А также стандартные (и корпоративные) протоколы связи, форматы данных, запросы к удалённому серверу и облачным сервисам (через всяческие кривые API и технологии, коих особенно навалом в веб-приложениях)...

Короче, вы здесь согласились с главным - языков много, они не взаимозаменяемые и плохо стыкуемые друг с другом, плохо спроектированные и трудноизучаемые, ну и т.д. и т.п.
А теперь вернёмся к пункту, где они же и определяют мировоззрение.
А потом мы удивляемся, отчего ракеты падают.

Цитата:
Что изобразить из тетриса?
Да уже ничего. Пример исключительно для того, чтобы проиллюстрировать множество задач и языков, о чём сказано выше.

Так вот теперь по существу вашей деятельности и намерений.
Во всей этой каше вы берёте один язык, который вам нравится (и он действительно имеет много плюсов), и пытаетесь прикрутить к нему совершенно другой слой знаний, точку зрения (DDL).
Это благородная задача, но за последние 30 лет software engineering её толком никто не решил (если не считать решением типы данных стандартных языков плюс вспомогательную механизацию по их формированию с помощью дополнительных примочек).

Потому прежде чем очередному рыцарю воевать неуязвимого дракона, предлагаю задуматься, чего мы хотим?
Какую часть из выше перечисленных задач проектирования мы желаем оптимизировать и до какой степени?
И что хотим получить в результате (желательно как можно более детально).
А вот потом оценим требования и возможности, и решим, стоит ли игра свеч. А также нет ли приемлемого решения где-то в стороне от проторенного пути, например.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Язык ДРАКОН и Data Definition Language
СообщениеДобавлено: Понедельник, 14 Ноябрь, 2016 14:25 

Зарегистрирован: Пятница, 15 Апрель, 2016 11:38
Сообщения: 119
Откуда: из СССР
Извините, Алексей языков конечно же много и разных (и может это даже где-то и хорошо!) .. но, Вы - "капитан очевидность"? Впрочем и сам ввязался в полемику, мало относящуюся к вопросу. ;)

Давайте, попробую ещё раз сформулировать "чего же хочется", а Вы - подключайтесь, будем корректировать "хотелки" если приспичит. А то как-то "никто не занимается" звучит грустно и не уверен что корректно.
И так:

1. Хочется поиметь визуальный язык (или набор таковых), функционально полных по части программирования (само)управляющих(ся) устройств (роботов) на базе микропроцессоров. С получением выходного кода НЕ ХУЖЕ (а желательно и лучше) чем "стандратные" (имеющиеся) средства на руках разработчиков (Atmel Studio и/или Arduino IDE - в частности для AVR). Визуальный язык должен быть наглядным и понятным (слабо/не)подготовленному программисту. Конечно же и среду разработки тоже..

Это задача - минимум, моя конкретно. Как критерий успешности решения этой задачи - успешность применения такого языка и средства программирования (ИДЕ) для "программистов" в возрасте 8-12 лет.
Для решения этой задачи я выбрал ДРАКОН, поскольку он:
- русифицирован (что важно с учетом возраста);
- нагляден (что уже многажды проверено);
- позволяет (при небольшой пляске с бубном - и это "устранимо" как уже выяснилось) писать код для микроконтроллеров;
- алгоритмически полон и учит хорошему тону;
- поддерживает автоматное программирование;
Как недостаток пока вижу только отсутствие части DDL, но ознакомившись по ссылкам - хорошо вижу полезность разделения на 2 отдельных языка у системы ГРАФИТ-ФЛОКС .. вполне возможно что тоже буду двигаться этим путем.

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

В данном случае речь НЕ идет о языках хранения и прочих "прелестей баз данных", функциональных языках, скриптовых языках, языках документирования проектов, и прочих специализированных языках. Задача "объять необъятное" - не стоит. То есть речь об относительно простом визуальном процедурно-объектном языке.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 122 ]  На страницу Пред.  1, 2, 3, 4, 5, 6, 7  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
cron
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2008-2024, участники конференции «DRAKON.SU», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB