DRAKON.SU

Текущее время: Среда, 24 Апрель, 2024 05:53

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




Начать новую тему Ответить на тему  [ Сообщений: 14 ] 
Автор Сообщение
СообщениеДобавлено: Пятница, 24 Июль, 2009 10:47 

Зарегистрирован: Понедельник, 15 Июнь, 2009 13:30
Сообщения: 4
Откуда: Новосибирск
Доброго времеи суток, уважаемое сообщество!
В сообщении я кратко опишу те обстоятельства, которые привели меня сюда, а после выскажу некоторые свои соображения (ещё весьма сырые) и идеи.

Для начала два слова о себе: я аспирант Физического Факультета НГУ (Новосибирск, Академгородок), занимаюсь исследованиями в области волоконной оптики и лазерной физики и, ввиду широты интересов, также участвую в решении задачь по программированию и разработке электронике, которые у нас не пременно возникают при разработки опытных образцов лазеров различного типа.

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

Идём в гугл, гугл нам намекает на UML, но UML в данном случае подходит весьма скверно. Во-первых, он всё-таки достаточно сложен с первого захода, во вторых, сильно ориентирован на ООП, что в данном случае вообще мимо, и в-третьих, единственные инстременты, которые могли бы пригодиться, это "диаграммы действий" и "диаграммы состояний", но и они говорят лишь о том, в каких состояниях и какие действия должен выполнять объект, но ни слова о том, как он их должен выполнять (хотя, вопрос наверно и спорный, и во многом определяется привычкой).
Далее идём к блок-схемам. В принципе они бы дали необходимый результат, но рядом с ними я вдруг наталкиваюсь на упоминание о некоемом "ДРАКОНе", который, мол, и создан для формализации алгоритмов, чтобы "всё понятно с первого взгляда" и пр.. Ну чтож, вроде это именно то, что мне нужно. Начинаю рыть о том, что это такое, с чем едят и как пользоваться. Выходу на книгу Паранжанова "как улучшить работу ума", которая, прошу прощения, написана весьма пафосно, что первое время сильно отталкивает. Однако в книге содержится множество интересных и правильных вещей, так что, абстрагировавшись от пафоса, читаю сейчас с большим интересом.
Я так, что имеем - описание языка есть, а где же "среда разработки", гре примеры программ? Лишь обрывочные упоминания о применениях в ВПК, в других областях народного хозяйства, на которых всё и заканчивается. Однако, почитав этот форум, я понял что такая проблема не только у меня. Из софта я нашел лишь одну вешь, и, как я понял из здешних обсуждений, единственную - "и.с. DRAKON". Качаю архив, запускаю... в течении первой минуты в ступоре, в течение второй в недоумении "как это работает", и на третей закрываю с большим разочарованием (опять же прошу прощения, это лишь имхо). Ощушение от "среду разработки" такое, будто я попал не то чтобы на 50 лет назад, а на другую планету. Где привычные меню? где "проект"? как создать проект? где элементы языка?.. Комечно, может это я споткнулся на первом же камне и сразу всё критикую... Но ведь ДРАКОН позиционируется как язык для непрограммистов, где же наглядноять и интуитивность инструментария?
Т.о. идею лёгкого и быстрого освоения ДРАКОНа пришлось оставить, и рисовать блок схемы в OOo draw (читать "любом векторном редакторе").


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Пятница, 24 Июль, 2009 11:04 

Зарегистрирован: Понедельник, 15 Июнь, 2009 13:30
Сообщения: 4
Откуда: Новосибирск
Однако идея запала. Ведь суть ДРАКОН есть набор правил для размещения графических элементов, отражающих суть алгоритма, так, чтобы они обладали максимальноий информативностью. И эти правила, наверно, взялись не с пустого места (каюсь, книгу до конца не дочитал). Надо ведь лишь оформить эти правила в современную оболочку, которой было бы легко пользоваться. Легко, в смысле запустил и сперёд, максимум, прочитал руководство по быстрому старту на 10 мин.

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

Вообще, из-за чего я всё это пишу, среди проектов, которыми я буду заниматься в ближайшее время. есть и нечто, что подразумевает создание среды для весьма специфических блок-схем, это работа входит в другой проект и особо в данном контексте не важна, но реализация данного проекта может сильно пересекаться с созданием среды для ДРАКОНа, где мне на данный момент весьма интересно попробовать свои силы. Разработку среды предполагается вести на связке С++/Qt, что автоматически делает оболочку доступной на других ОС. Также разработка будет открытой, иначе нет смысла заморачиваться, да и не потянет её один человек. В связи с чем есть ряд вопросов:
1. Есть ли актуальность такой среды?
2. Есть ли прям сейчас люди, которые готовы её тестировать и вносить свои пожелания.
3. Есть ли люди, котовые принять участие в разработке?

p.s. всё обозначенное лишь намётки, которые не значат, что результат будет уже завтра. но при наличии интереса в обществе, есть надежда, что результата можно будет бодиться.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Пятница, 24 Июль, 2009 11:31 
Модератор
Аватара пользователя

Зарегистрирован: Среда, 16 Ноябрь, 2005 00:53
Сообщения: 143
Откуда: Россия, Орёл
Посмотрите http://oberoncore.ru/wiki/drakon/start, если ещё не смотрели...
galilley писал(а):
Однако в книге содержится множество интересных и правильных вещей, так что, абстрагировавшись от пафоса, читаю сейчас с большим интересом.
См. "Язык Дракон. Краткое описание"
galilley писал(а):
единственную - "и.с. DRAKON".... Комечно, может это я споткнулся на первом же камне и сразу всё критикую... Но ведь ДРАКОН позиционируется как язык для непрограммистов, где же наглядноять и интуитивность инструментария?
Согласитесь, то что "ДРАКОН позиционируется как язык для непрограммистов" ни как не означает, что автоматически появится идеальный редактор. "и.с. DRAKON" разрабатывается одним человеком - Геннадием Тышовым в меру его сил, возможностей и т.п. Если есть вопросы/пожелания по "и.с. DRAKON", Вам сюда viewtopic.php?f=62&t=1301


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Пятница, 24 Июль, 2009 12:13 

Зарегистрирован: Пятница, 24 Апрель, 2009 05:19
Сообщения: 7
Вот сколько уже народу грозилось сделать нормальную среду Дракона. Я только за ! Чем смогу помогу.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Пятница, 24 Июль, 2009 13:06 

Зарегистрирован: Понедельник, 15 Июнь, 2009 13:30
Сообщения: 4
Откуда: Новосибирск
Евгений Темиргалеев писал(а):
Посмотрите http://oberoncore.ru/wiki/drakon/start, если ещё не смотрели...
См. "Язык Дракон. Краткое описание"

Спасибо за наводку.

Цитата:
Согласитесь, то что "ДРАКОН позиционируется как язык для непрограммистов" ни как не означает, что автоматически появится идеальный редактор. "и.с. DRAKON" разрабатывается одним человеком - Геннадием Тышовым в меру его сил, возможностей и т.п. Если есть вопросы/пожелания по "и.с. DRAKON", Вам сюда viewtopic.php?f=62&t=1301

Я согласен, что одно не означает другого, но ведь и язык сам-по-себе мало что значит. Много уже воды утекло со времени запуска Бурана, т.е. с того времени, когда язык появился на свет, и я наивно полагал, что за это время редактор, близкий к идеальному, вполне мог родиться :)


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Пятница, 24 Июль, 2009 13:07 

Зарегистрирован: Понедельник, 15 Июнь, 2009 13:30
Сообщения: 4
Откуда: Новосибирск
PowerBoy писал(а):
Вот сколько уже народу грозилось сделать нормальную среду Дракона. Я только за ! Чем смогу помогу.

Да, идея не нова, похоже... раньше чем через 2-3 месяца врятли я сделаю что-то, что можно будет реально пощупать, но как только что-то будет выходить, сразу же буду отписываться.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Пятница, 24 Июль, 2009 19:54 

Зарегистрирован: Воскресенье, 06 Апрель, 2008 14:43
Сообщения: 1657
Для galilley, в справке к и.с. DRAKON есть раздел "Об освоении пользователем интегрированной среды Drakon", рекомендую прочитать и для освоения надо приложить усилия.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 27 Июль, 2009 16:24 

Зарегистрирован: Среда, 13 Май, 2009 21:05
Сообщения: 153
Откуда: Саратов
galilley писал(а):
Т.о. идею лёгкого и быстрого освоения ДРАКОНа пришлось оставить, и рисовать блок схемы в OOo draw (читать "любом векторном редакторе").


Может быть кто-нибудь нарисует Дракон-схему - справочник по и.с. Дракон? :)


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Пятница, 31 Июль, 2009 13:11 

Зарегистрирован: Воскресенье, 09 Март, 2008 22:38
Сообщения: 341
galilley писал(а):
Идём в гугл, гугл нам намекает на UML, но UML в данном случае подходит весьма скверно. Во-первых, он всё-таки достаточно сложен с первого захода, во вторых, сильно ориентирован на ООП, что в данном случае вообще мимо, и в-третьих, единственные инстременты, которые могли бы пригодиться, это "диаграммы действий" и "диаграммы состояний", но и они говорят лишь о том, в каких состояниях и какие действия должен выполнять объект, но ни слова о том, как он их должен выполнять (хотя, вопрос наверно и спорный, и во многом определяется привычкой).
Далее идём к блок-схемам. В принципе они бы дали необходимый результат, но рядом с ними я вдруг наталкиваюсь на упоминание о некоемом "ДРАКОНе"

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


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Среда, 19 Август, 2009 11:29 

Зарегистрирован: Вторник, 11 Август, 2009 11:44
Сообщения: 42
Откуда: Бердск
Бытко Сергей писал(а):
Может быть кто-нибудь нарисует Дракон-схему - справочник по и.с. Дракон? :)

А мне интерсен более провакационный вопрос: Может быть кто-нибудь нарисует Дракон-схему - САМОЙ и.с. Дракон? :)
А если не затрагивать вопросы лицензий, то тогда так: а как коллеги расценивают реальность такого мероприятия :?:
Суть вопроса в том, что хочется понять: насколько сохранится высокая понимаемость задачи, когда объем исчисляется не десятками, а тысячами структурных единиц
Если хотите - психологический эксперимент такой........


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Среда, 19 Август, 2009 12:21 

Зарегистрирован: Воскресенье, 04 Ноябрь, 2007 23:01
Сообщения: 511
Чего-то я не въехал, где Вы обнаружили тысячу структурных единиц..


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Среда, 19 Август, 2009 12:29 

Зарегистрирован: Вторник, 11 Август, 2009 11:44
Сообщения: 42
Откуда: Бердск
Еще не обнаружил, но предполагаю - в кодах САМОЙ интегрированной среды, если БЫ она была нарисована на ДРАКОН-е (возможность такового - тоже предположение).
Которая сегодня сделана на "семерке", насколько я понимаю...


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Среда, 19 Август, 2009 12:42 

Зарегистрирован: Воскресенье, 04 Ноябрь, 2007 23:01
Сообщения: 511
Честно скажу - не вижу в данном случае необходимости проверять правильность декомпозиции задачи. Ежели уж предполагается существенный изъян в и.с. DRAKON, то почему бы не описать его более конкретно? Что неправильно-то: функциональность, идеология..?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Среда, 19 Август, 2009 15:17 

Зарегистрирован: Вторник, 11 Август, 2009 11:44
Сообщения: 42
Откуда: Бердск
Вообще-то, мне гораздо интереснее вопрос Создания, чем Декомпозиции.
Например, на компиляторе FPC (Forth, C, и т.д., до бесконечности) можно решать задачи не менее сложные, чем сам компилятор.
Аксиома. Тут никаких вопросов не может быть в принципе, потому-что они сами на себе и сделаны

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


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 14 ] 

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


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

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


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

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