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

Моё видение языка ДРАКОН
https://forum.drakon.su/viewtopic.php?f=62&t=1613
Страница 1 из 3

Автор:  RANUX [ Вторник, 26 Май, 2009 00:52 ]
Заголовок сообщения:  Моё видение языка ДРАКОН

Всем доброго дня!
Почитывая книгу Паронджанова В.Д. "Как улучшить работу ума. Алгоритмы без программистов" пришёл к некоторым выводам:
1. Нужен удобный инструмент, например плагин в Netbeans или Eclipse.
2. Должна быть возможность ввода программы как с помощью текста, так и с помощью икон. Те инструмен должен синхронизировать текст с графическим изображением (например, когда работаешь в Dreamweaver-е можно править представление или html код )
Поясню почему:
Плюсы текста:
+ быстро набирать
+ удобно и быстро можно поправить
Плюсы графического представления языка ДРАКОН:
+ наглядно и скрываются лишние языковые конструкции
+ видны места с дублированием

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

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

В июне хочу попробовать разобраться с написанием плагинов в Netbeans и начать потихоньку создавать плагин. Если кого интересует данная тема и у кого есть опыт создания плагина для Netbeans не откажусь от помощи.

P.S. Спасибо Паронджанову В.Д. за проделанный труд :)

Автор:  Valery Solovey [ Вторник, 26 Май, 2009 10:02 ]
Заголовок сообщения:  Re: Моё видение языка ДРАКОН

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

Но плагин, наверно, не помешает. Так больше народу узнает про Дракон.

Автор:  RANUX [ Вторник, 26 Май, 2009 15:07 ]
Заголовок сообщения:  Re: Моё видение языка ДРАКОН

Valery Solovey писал(а):
Вы не поняли сути Дракона. Он нужен не для того, чтобы отображать уже написанное. Он нужен, чтобы писать.

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

Автор:  Valery Solovey [ Вторник, 26 Май, 2009 16:02 ]
Заголовок сообщения:  Re: Моё видение языка ДРАКОН

Это тоже верно. Но для человека-непрограммиста, тесно с программистами работающего гораздо важнее чётко донести свою мысль до программиста. А программист должен до написания кода чётко объяснить, что он будет делать, а то вдруг окажется, что его работа никому и не нужна. То есть, Дракон-схема первична.

Касательно генерации схемы по хорошему коду. Видел я UML-схемы, получавшиеся из исходников, которые коллеги считали хорошими. Ужас. Лучше уж вообще без схем, хотя бы время будет сэкономлено.

Автор:  Rifat [ Вторник, 26 Май, 2009 16:48 ]
Заголовок сообщения:  Re: Моё видение языка ДРАКОН

Как-то на сайте RSDN читал одну ветку, где человек рассказывал о своем наблюдении: то что мужчины, преподающие программирование, предпочитают при объяснении использовать псевдо код, а преподаватели женщины предпочитают использовать блок-схемы.
Многие поддержали это наблюдение историями из своей жизни, крупных контраргументов не нашлось :)

В любом случае можно сделать вывод, что есть 2 типа людей, которые предпочитают псевдо-код и блок-схемы.

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

Автор:  Димыч [ Вторник, 26 Май, 2009 17:14 ]
Заголовок сообщения:  Re: Моё видение языка ДРАКОН

Ветка подобралась как раз подстать мыслям, бродившим в голове.

А что если при вообще миновать какой-либо язык программирования при создании ДРАКОН-схем?
Мысль состоит в том, что ДРАКОН-схема - суть отображение алгоритма, знания о последовательности действий некоего исполнителя (исполнитель является внешней по отношении к алгоритму сущностью). И попытка ее перевода на компьютер (универсальный исполнитель) производится посредством формализованного языка - языка программирования.
А что, если напрямую из ДРАКОН-схемы производить генерацию машинного кода (т.е. совместить ДРАКОН-редактор сразу с линкером).
Понятно, что без языковых средств не обойтись (переменные, типы данных придется объявлять языковыми средствами), но в целом идея представляется интересной.
Отпадает часть языковых проблем (отсутствие GOTO в Обероне и тому подобное), уменьшается кол-во слоев абстракции.
Кроме того, если к этому еще прикрутить инструмент типа Glade, вообще интересно получается.
Мне идея кажется очень еретичной, но уж очень заманчивой.
Собственно, почти сама собой отпадает проблема рассогласования документации и кода и, отчасти, отпадает проблема дублирования кода (одно из преимуществ ДРАКОН-схем).
(возможно это уже обсуждалось на форуме, я не очень внимательно следил за обсуждением ДРАКОНА. если так ткните ссылкой.)

Автор:  Tomba [ Среда, 27 Май, 2009 01:47 ]
Заголовок сообщения:  Re: Моё видение языка ДРАКОН

мне, в отличие от автора топика, вполне очевидно что Дракон-схема - первична. По мыслям, изложенным в (0) можно сделать вывод, что автор привык "писать программы", а проектировать, разрабатывать алгоритм, или хотя бы наброски будущего облика системы/программы - это автор не пробовал или не подходил к этому делу серьезно. Так и хочется спросить: каков возраст автора? имхается мне - это поколение "экстремальных программистов", по принципу "что вижу - то пишу"...

Автор:  Валерий Лаптев [ Среда, 27 Май, 2009 08:45 ]
Заголовок сообщения:  Re: Моё видение языка ДРАКОН

Rifat писал(а):
Как-то на сайте RSDN читал одну ветку, где человек рассказывал о своем наблюдении: то что мужчины, преподающие программирование, предпочитают при объяснении использовать псевдо код, а преподаватели женщины предпочитают использовать блок-схемы.
Многие поддержали это наблюдение историями из своей жизни, крупных контраргументов не нашлось :)

В любом случае можно сделать вывод, что есть 2 типа людей, которые предпочитают псевдо-код и блок-схемы.

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

Это как раз мы у себя в Астраханском ГТУ своих студентов 2 и 3-го курсов опросили. И выявилась такая интересная тенденция. Причем, началось все с меня: я предпочитаю псевдокод, а моя ассистентка, оказывается - блок-схемы. Причем уже на уровне обдумывания алгоритма...

Автор:  Madzi [ Среда, 27 Май, 2009 09:12 ]
Заголовок сообщения:  Re: Моё видение языка ДРАКОН

Идея совмещения кода программы с визуальным представлением не нова. Просто сейчас (пока) не существует нормального инструментария, который можно было бы использовать.
ДРАКОН - изначально НЕ ПРЕДНАЗНАЧЕН только для кодирования. Он гораздо шире и проще. За счёт простоты, в ДРАКОНЕ отсутствуют некоторые вещи, которые нужны для программирования, но не необходимы вообще.

Автор:  Rifat [ Среда, 27 Май, 2009 10:23 ]
Заголовок сообщения:  Re: Моё видение языка ДРАКОН

Валерий Лаптев писал(а):
Это как раз мы у себя в Астраханском ГТУ своих студентов 2 и 3-го курсов опросили. И выявилась такая интересная тенденция. Причем, началось все с меня: я предпочитаю псевдокод, а моя ассистентка, оказывается - блок-схемы. Причем уже на уровне обдумывания алгоритма...


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

Автор:  Madzi [ Среда, 27 Май, 2009 10:39 ]
Заголовок сообщения:  Re: Моё видение языка ДРАКОН

Для начала можно попробовать провести опрос, а ещё лучше анкетирование на каком-нибудь широко посещаемом ресурсе.
И предложить 2 варианта одной и тойже простой (но не очень) программы.
В коде и в блоксхеме и попросить оценить время её понятия.

Автор:  Madzi [ Среда, 27 Май, 2009 10:45 ]
Заголовок сообщения:  Re: Моё видение языка ДРАКОН

RANUX писал(а):
Всем доброго дня!
Почитывая книгу Паронджанова В.Д. "Как улучшить работу ума. Алгоритмы без программистов" пришёл к некоторым выводам:

Пришёл к аналогичным, но только раньше (до книги).
RANUX писал(а):
1. Нужен удобный инструмент, например плагин в Netbeans или Eclipse.

нужен.
RANUX писал(а):
2. Должна быть возможность ввода программы как с помощью текста, так и с помощью икон.

Кроме того, следует жёстко ограничить "вольности" программиста.
RANUX писал(а):
4. [u]Необходимо согласовать ДРАКОН с ООП .

Нет. Для этого нужен не ДРАКОН, а новый концепт-язык.

Автор:  RANUX [ Среда, 27 Май, 2009 13:24 ]
Заголовок сообщения:  Re: Моё видение языка ДРАКОН

Tomba писал(а):
мне, в отличие от автора топика, вполне очевидно что Дракон-схема - первична.

Сколько систем вы написали с помощью ДРАКОН схем или UML без использования текстового языка программирования?
Так что полностью отказаться от от текста не получиться.
Tomba писал(а):
По мыслям, изложенным в (0) можно сделать вывод, что автор привык "писать программы", а проектировать, разрабатывать алгоритм, или хотя бы наброски будущего облика системы/программы - это автор не пробовал или не подходил к этому делу серьезно.

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

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

Автор:  TAU [ Среда, 27 Май, 2009 16:39 ]
Заголовок сообщения:  Re: Моё видение языка ДРАКОН

RANUX писал(а):
полностью отказаться от от текста не получиться

Есть контрпримеры по поводу "получится-не получится".

RANUX писал(а):
А вы не задумывались, что конечному пользователю глубоко не интересно на чём и с помощью чего пишется программа, главное чтобы работало то что нужно и без лишних косяков... что вы вообще знаете об экстремальном программировании?

Детский лепет.
1. Дома почему-то без чертежей не строят. И автомобили тоже. Если бы попробовали - были бы сплошные кривые косяки, как в программах сейчас :mrgreen:
2. Тут люди образованные, что такое "экстремальное программирование", представляют достаточно хорошо.

Автор:  TAU [ Среда, 27 Май, 2009 16:51 ]
Заголовок сообщения:  Re: Моё видение языка ДРАКОН

Димыч писал(а):
что если при вообще миновать какой-либо язык программирования при создании ДРАКОН-схем?
...если напрямую из ДРАКОН-схемы производить генерацию машинного кода...
Мне идея кажется очень еретичной, но уж очень заманчивой.
Собственно, почти сама собой отпадает проблема рассогласования документации и кода и, отчасти, отпадает проблема дублирования кода (одно из преимуществ ДРАКОН-схем)

Давно осознано многими компетентными людьми 8)
И примерно так и делается кое-где ;-)

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

Кстати, по-моему, в самой исходной технологии ГРАФИТ-ФЛОКС генерируется программа именно на автокоде БЦВМ "Бисер".
Может, Паронджанов прояснит.

Автор:  Ali [ Среда, 27 Май, 2009 19:02 ]
Заголовок сообщения:  Re: Моё видение языка ДРАКОН

TAU писал(а):
Димыч писал(а):
что если при вообще миновать какой-либо язык программирования при создании ДРАКОН-схем?
...если напрямую из ДРАКОН-схемы производить генерацию машинного кода...
Мне идея кажется очень еретичной, но уж очень заманчивой.
Собственно, почти сама собой отпадает проблема рассогласования документации и кода и, отчасти, отпадает проблема дублирования кода (одно из преимуществ ДРАКОН-схем)

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

А переносимость? Может быть какой-нибудь CLR или Dis.

Автор:  RANUX [ Среда, 27 Май, 2009 22:20 ]
Заголовок сообщения:  Re: Моё видение языка ДРАКОН

Madzi писал(а):
Нет. Для этого нужен не ДРАКОН, а новый концепт-язык.

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

Автор:  Madzi [ Среда, 27 Май, 2009 22:30 ]
Заголовок сообщения:  Re: Моё видение языка ДРАКОН

RANUX писал(а):
Madzi писал(а):
Нет. Для этого нужен не ДРАКОН, а новый концепт-язык.

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

Финансировать его конечно никто не будет. Так что только research programming. В ДРАКОНЕ есть свои плюсы, но и минусы. для удобной работы программиста он не приспособлен, да и не задумывался так никогда. За то свою основную функцию "связь программистов и не программистов" он на ура выполняет.

Если попадётся толковый дипломник, то может быть к концу года будет инструментарий для визуального программирования на Oberon-2.

Автор:  RANUX [ Среда, 27 Май, 2009 22:53 ]
Заголовок сообщения:  Re: Моё видение языка ДРАКОН

Madzi писал(а):
За то свою основную функцию "связь программистов и не программистов" он на ура выполняет.

С этим я согласен на 100%, конечно если алгоритм записан не на формальном языке, а на привычном русском.

Madzi писал(а):
Если попадётся толковый дипломник, то может быть к концу года будет инструментарий для визуального программирования на Oberon-2.

А смысл? Вроде есть же уже дракон-редактора http://forum.oberoncore.ru/viewtopic.php?f=62&t=1291 с возможность трансляции в Active Oberon.

Автор:  RANUX [ Среда, 27 Май, 2009 23:30 ]
Заголовок сообщения:  Re: Моё видение языка ДРАКОН

TAU писал(а):
Есть контрпримеры по поводу "получится-не получится".

Контрпримеры:
1. разработчик будет сконцентрирован на диаграмках, вместо того чтобы начать реализовывать функцию
2. посчитайте сколько времени уйдёт на то, чтобы вставить икону, потом её выравнять, соединить с другими иконами, совершить лишние нажатия мышкой, вместо того чтобы сразу написать текст.
3. попробуйте убедить хотя бы часть программистов полностью отказаться от текста и перейти на чистый ДРАКОН :)
TAU писал(а):
Детский лепет.
1. Дома почему-то без чертежей не строят. И автомобили тоже. Если бы попробовали - были бы сплошные кривые косяки, как в программах сейчас :mrgreen:
2. Тут люди образованные, что такое "экстремальное программирование", представляют достаточно хорошо.

1. Код - это не железо, его можно всегда поправить.
2. Косяки есть везде, если их не видно - это не значит что их нет вообще. (пример ВАЗ :D )
Основная причина косяков в ПО - сложность, недопонимание, лень, отсутствие достаточного уровня тестирования, отсутствие и незнание методологий разработки и т.д.
3. Помимо теории, экстремальное программирование (eXP) нужно хотя бы испытать на практике, ну или хотя бы часть методик eXP.

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