Инструмент для визуального программирования - PullRequest
4 голосов
/ 02 декабря 2008

Мне нужен инструмент для графического представления рабочего процесса в программе (например, электронные схемы описаны с графическим представлением). Представление должно быть следующим: функции - это поля, а стрелки между полями - это «сообщения». Как это:

альтернативный текст http://img372.imageshack.us/img372/8471/functionsqv0.png

На этом рисунке показано следующее: (c (a) (b))
Где параметры c () названы как d и e. На C это будет

void c( someType1 d, someType2 e );
someType1 a( void );
someType2 b( void );
....
c( a(), b() );

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

(a (b c d) e)  

или

f(g(z(x,y))+5)  

Речь идет не о связанных списках, а о логических связях между функциями.
Инструмент должен только генерировать текстовое представление из графического.
Ну, я нашел много материала на странице вики о "Визуальном программировании" и "Графическом программировании" и так далее. В основном все описанные инструменты классные, но несколько сложные. И этот список довольно длинный, поэтому для их тестирования потребуется много времени. Поэтому мне нужно мнение реальных, живых людей.

Требования:

  • Free
  • Простой
  • Можно экспортировать хотя бы в один реальный язык как XML или C ++ или LISP или любой другой.

И было бы очень хорошо, если бы этот инструмент был настраиваемым.

Мне нравится инструмент FlowDesigner: мне кажется, это почти то, что мне нужно, но он не может экспортироваться на любой язык ... Увы.

UPD : упомянутая мной вики-страница: Графическое программирование
UPD2 : ну, я решил написать свой собственный инструмент ...

Ответы [ 5 ]

3 голосов
/ 04 декабря 2008

Ознакомьтесь с Microsoft DSL Tools - http://msdn.microsoft.com/en-us/library/bb126259.aspx

Это «генератор дизайнеров» - позволяет вам определять свой собственный формат диаграммы, задавать фигуры, стрелки, цвета и т. Д. И генерирует для вас дизайнер, который может редактировать такие диаграммы и экспортировать любые текстовые артефакты о вашей диаграмме. (например, XML или код).

2 голосов
/ 04 декабря 2008

Предупреждение: бесстыдная вилка

Видел Memention Designer ?

Он построен на конфигурируемом движке и может выводить практически на любом языке.

Но, извини. Это не совсем бесплатно.

alt text
(источник: memention.com )

Приведенный выше пример экспортирует следующий c-код, но может с некоторой перенастройкой генерировать другой язык.

#include <stdio.h>

/* there are 8 blocks */
int running;
/* there are 1 out blocks */
int state_curr_1;
int state_next_1;

int main(int argc, char *argv[]) {
  running = 1;
  state_curr_1 = 0;
  while (running) {
    state_next_1 = (state_curr_1 + 19);
    running = (state_curr_1 != (19 * 12));
    state_curr_1 = state_next_1;
    printf("out = %d\n", state_curr_1);
  }
  return 0;
}
2 голосов
/ 04 декабря 2008

Как насчет использования чего-то вроде Graphviz ?

1 голос
/ 14 августа 2015

Что такое использование библиотек на основе .net и WPF TUM.CMS.VPLControl ?

enter image description here

1 голос
/ 04 декабря 2008
...