讨论时间:2020年5月20日
讨论内容:关于代码的显示和编辑方式

我们小组认为,对于代码的显示方式,不一定是文本的形式,也可以是可视化编程的形式,比如图形节点式的:
在这里插入图片描述
理由如下:
(1)我们的软件应该为非技术人员可以更轻松地通过有意义的方式进行数据分析处理。我们的软件功能重点在于对数据的可视化呈现,而这种方式能在提供相较于普通统计分析软件更大自由度的同时更容易使用。比如说很多的游戏开发完全靠UE4提供的图节点式编程来完成。
(2)可视化编程适用于对各个高度封装的模块进行组合。这种图节点式的编程,我们可以:
<1>融入函数式编程的思想,将一个复杂的流程封装成一个子节点进行调用。
<2> 通过这种方式,用户可以轻易的将自己用其他语言编写的程序变成可视化编程模块中的一个节点。我们可以通过定义一个简单的进程通信接口,或者为常用编程语言编写简单的库,用户就能够轻易的在自己的程序中选择输入输出的变量,然后将自己的程序导入成为一个节点.这样就能轻易的分析一个或多个程序的运行结果,同时拥有一定的多程序管理功能。
例如可以调用我们编写好的CS库:

1
2
3
4
5
6
7
8
int time = clock();//获取系统当前时间
::CS::addOutput(time);//添加作为输出节点
int y = 0;
::CS::addOutput(y);
while(true){
time = clock();
++y;
}

然后通过导入节点和一定的拖拽进行可视化编程:
在这里插入图片描述
这样就会得到一个以时间为x轴,y值不断递增的折线图。
同时我们可以借鉴现有的图节点编程程序来设计语言到图节点的转换。并且单是实现图节点编程的难度反而会更小。
并且我们可以内置对进程的基本信息的监视(如运行时间、占用cpu等),此时用户可以直接导入原生程序然后对其性能进行分析。

<3>在设计层面,我们的统计图界面设计成了画布的模式。即生成的统计图在画布上可以自由拖动、用户可以添加自定义的文字、图片等。这样,可以使用户将所有精力都放在设计上,并且使得设计人员也能快速上手。