红嘴玉技术选型
March 6, 2017
@coding
前几个月开发了一个算法集成软件,一定程度上是weka的C#复刻,界面技术使用了WPF。最近想做一个开源版本的,首先要给这个项目起一个名字,考虑到致敬weka,需要找一个鸟的名字,最后决定使用湖南省省鸟——红嘴玉,学名红嘴相思鸟。
于是调研了一下C#的跨平台GUI库,有GTK#,xwt,eto等,决定选用xwt,因为它在各个平台可以分开编译,有较个性化的界面,而且开发很活跃,而且接下来要讨论的chart库也有xwt版本。
chart库使用oxyplot,替代我之前使用的zedgraph,oxyplot有xwt版本的。
数学计算库使用math.net,它能适配mono,其实accord.net也可以,但是它太庞大了,而我想插件式的自己添加机器学习算法,accord.net完全开箱即用,反而灵活性不够。
基于这些选型,软件应该能在windows、mac、linux三大平台分别编译,不需要写平台特定的代码。
接下来的工作安排:
- 完成一个xwt版本的算法流程编辑demo;
- 移植旧版程序到新的技术选型上,算法可以先移植几种;
- 先开发全英文版本;
- 接下来的计划,先等移植完成再说吧。