这一次带来了一系列新特新,同时我们将会从商业智能的角度讨论软件的需求

一. 批量任务向导

一个常用的需求是完成处理多个任务,可能是同一个需求以不同的参数完成多次,这类似批量分析某一问题;或者是不同的需求顺次完成,比如系统功能级测试。因此非常有必要加入该功能。由于系统有对“任务”级功能的支持,所以添加该功能很容易,加入一个任务队列,当上一任务完成时自动配置和启动下一任务即可。

我们以批量执行同一任务为例,看下下面的操作。点击“任务”菜单的“启动批量任务”向导,即可实现如下配置:选择要批量执行的任务:

选取要修改的参数,

我们此处选择“ScaleSize”参数。以一行一个参数的形式填写下面的表格:

点击完成之后,系统会自动按照不同的ScaleSize参数,完成循环,并输出所需结果。

至于对于顺次执行多个任务的需求,目前可以从外部加载任务配置单,并可按任务配置顺次执行,该任务配置保存了详细的任务参数和模块名称,以XML格式存储。

二.加强的数据浏览器

系统原先内置的数据浏览器是ListView表格控件,目前使用了功能更强大的DataGrid,效果如图:

通过延迟加载和动态绑定的特性,该控件可以获得相当好的性能,同时可以方便的对数据列做排序,分组等操作:

同时,该控件还可以方便的修改数据属性,包括字符串,时间和数字等。并将修改保存到数据库中。

三. 插件式的界面替换

对WPF程序来说,换肤是一件很普通的功能,但如果完全替换成另外一个View,还是需要一定的技巧的。由于本系统在设计时,没有充分考虑到标准MVVM的需求,而采用了插件式的Model管理View的方式(可c参考我的MVVM 开发的几种模式讨论(WPF))。这导致了动态替换View变得更为困难。

经过了长久的考虑,我决定不对框架做伤筋动骨的改变,对View也采用插件的方式,通过一个新加插件接口 ICustomView,系统在加载包含View的插件时,会在插件集合中查找实现该接口,且与原插件名字一致的界面控件,并将原插件的界面动态替换成新插件。这样就实现了启动时动态界面替换。

打了比方说,如果我觉得目前的界面和控件不符合需求,可以写一个新的界面库,将该界面库的dll文件拷贝到插件目录下,即可自动替换掉原来的View.删除该dll后,就会恢复成原有的View,非常简单方便。

四. 思考:对“无类型”数据的处理

由于数据类型也是插件的一份子,因此可以方便的添加新的数据类型,但依旧有麻烦的事情。

比如对“人”,有的数据是面对普通微博用户的,有些是面对企业和政府高官的,有些是面向学生教师的,他们都具有各自的特性和自定义字段。随着要处理的数据变多,这种问题变得更加尖锐。

为了处理一次数据,我们没有必要去为其新建一个数据类型(而且还是重复的)。但我们也不可能做到把所有可能的属性都添加到队列中。而系统现在只能处理“类型”数据,依赖它去存储,可视化,分析,计算…

如何解决这一问题呢?这一点可以向Excel学习,Excel本身不需要定义数据类型,通过表格的X,Y坐标命名变量并实现功能。这是一种很好的思路。但如果我也按照这样的方式处理,那么软件也成了Excel,反而丧失了它的价值。而统计这一类简单的功能还好说,对于更复杂的数据挖掘功能,如何处理这种无类型的数据呢?这真是个复杂的问题!

五. 说好的“算法”呢?

所有的读者可能都有这样的疑问,楼主你们做的是一个数据挖掘工具啊,怎么只见你更新“工具”的功能,却没有更新“数据挖掘”的功能啊?那些牛逼的算法呢?这个问题我也知道,如果没有精巧的机器学习/数据挖掘的算法模块,就算打造成一个超牛的数据可视化工具,又如何呢? 只是作者目前时间有限,做工具比做算法的实践性更高一些。我马上要找工作了啊亲!

之后的时间,关联规则,自动推荐,高级的聚类和分类算法,语义分析。。。这些模块才是最重要的,要做的事情多着呢。。。加油!

ITTC数据挖掘系统(六)批量任务,数据查看器和自由文档的更多相关文章

  1. CentOS6.4下使用默认的文档查看器打开PDF文档乱码的解决方案

     最近在CentOS6.4下使用其默认的文档查看器打开PDF文档时出现乱码的方块,有两种方法可以解决.    方法一:修改/etc/fonts/conf.d/49-sansserif.conf文件,如 ...

  2. python实用小技巧自问自答系列(一):查看类中函数文档doc的方法

    问题:如何查看某个类的方法文档说明或者是函数的参数列表情况? 答: 方法一:直接在需要查询的方法后面加上".__doc__"即可以打印出该方法的文档说明(需要先导入该方法所属模块) ...

  3. 从多个XML文档中读取数据用于显示webapi帮助文档

    前言: 你先得知道HelpPageConfig文件,不知道说明你现在不需要这个,所以下文就不用看了,等知道了再看也不急.当然如果你很知道这个,下文也不用看了,因为你会了. 方法一: new XmlDo ...

  4. Nemo Documents – 给文件添加标签 以日历的形式将文件呈现出来,很像 Outlook,你可以根据年、月、日来查看不同类型的文档

    Nemo Documents – 给文件添加标签   scavin(Google+) on 2012.03.28. Nemo Documents 是款文件组织管理工具(文档管理器),不是街道大妈胜似大 ...

  5. 【C#】获取当前系统桌面、我的照片、我的文档等路径

    获取当前系统桌面.我的照片.我的文档等路径   using System; using System.Collections.Generic; using System.ComponentModel; ...

  6. [Swift通天遁地]七、数据与安全-(1)XML文档的创建和解析

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...

  7. 从隔壁兄弟那爬点网页数据,整理成word文档

    package com.parse_report; import com.report.utils.ParseUrl; /** * Create by JIUN 2018/7/14 */ public ...

  8. 在Outlook中查看预览SharePoint文档库的文档

    本文概况 阅读时间: 约2分钟 适用版本:SharePoint Server 2010及以上 面向用户:普通用户,管理员 难度指数:★★☆☆☆ 在日常工作中,总有一些常用的文档需要经常打开查看,其实我 ...

  9. Storm项目:流数据监控1《设计文档…

    博客公告: (1)本博客全部博客文章搬迁至<博客虫>http://blogchong.com/ (2)文章相应的源代码下载链接參考博客虫站点首页的"代码GIT". (3 ...

随机推荐

  1. 01.SQLServer性能优化之----强大的文件组----分盘存储

    汇总篇:http://www.cnblogs.com/dunitian/p/4822808.html#tsql 文章内容皆自己的理解,如有不足之处欢迎指正~谢谢 前天有学弟问逆天:“逆天,有没有一种方 ...

  2. Angular企业级开发(5)-项目框架搭建

    1.AngularJS Seed项目目录结构 AngularJS官方网站提供了一个angular-phonecat项目,另外一个就是Angular-Seed项目.所以大多数团队会基于Angular-S ...

  3. JS核心系列:浅谈原型对象和原型链

    在Javascript中,万物皆对象,但对象也有区别,大致可以分为两类,即:普通对象(Object)和函数对象(Function). 一般而言,通过new Function产生的对象是函数对象,其他对 ...

  4. 浅谈WEB页面提速(前端向)

    记得面试现在这份工作的时候,一位领导语重心长地谈道——当今的世界是互联网的世界,IT企业之间的竞争是很激烈的,如果一个网页的加载和显示速度,相比别人的站点页面有那么0.1秒的提升,那也是很大的一个成就 ...

  5. Android数据加密之SHA安全散列算法

    前言: 对于SHA安全散列算法,以前没怎么使用过,仅仅是停留在听说过的阶段,今天在看图片缓存框架Glide源码时发现其缓存的Key采用的不是MD5加密算法,而是SHA-256加密算法,这才勾起了我的好 ...

  6. 用原生js做单页应用

    最近在公司接到一个需求,里面有一个三级跳转.类似于选择地址的时候,选择的顺序是:省份->市->区.如果分三个页面跳转,那么体验非常不好,如果引入其他框架做成单页应用,又比较麻烦.所以可以用 ...

  7. Java程序员:工作还是游戏,是该好好衡量一下了

    前阵子我终于下定决心,删掉了硬盘里所有的游戏. 身为一个程序猿,每天都要和各种新技术打交道,闲暇时间,总还得看一下各大论坛,逛逛博客园啥的,给自己充充电.游戏的话,其实我自小就比较喜欢,可以算是一种兴 ...

  8. Linux设备管理(五)_写自己的sysfs接口

    我们在Linux设备管理(一)_kobject, kset,ktype分析一文中介绍了kobject的相关知识,在Linux设备管理(二)_从cdev_add说起和Linux设备管理(三)_总线设备的 ...

  9. Xamarin.Android通知详解

    一.发送通知的机制 在日常的app应用中经常需要使用通知,因为服务.广播后台活动如果有事件需要通知用户,则需要通过通知栏显示,而在Xamarin.Android下的通知需要获取Notification ...

  10. 基于Adobe Flash平台的3D页游技术剖析

    写在前面 从黑暗之光,佛本是道,大战神的有插件3D页游.再到如今的魔龙之戒. 足以证明,3D无插件正在引领页游技术的潮流. 目前,要做到3D引擎,有以下几个选择. 说到这里,我们发现.这些都不重要. ...