毕业设计一般研究意义大于实际意义,但实际上作为计算机本科生,真正有意义的研究成果又会有多少?与其做什么系统、什么研究,不如弄点实用的东西好,于是我选了做一个简单的Spring Eclipse插件。
从1月份定题到现在,基本的难点都攻克了,比如GEF的大概结构,GraphEditor的使用,直接编辑,拖放等等,现在欠缺的是编码。
在模型这一块比较伤脑筋,原先计划用JDOM实现的,这样可以省很多代码,但实际上,Model还需要很多事件,要完整的按照GEF实现MVC,可能行不通。后来又参照了StrutsIDE的实现,它使用的是自己手动写模型,至于XML之间对象的映射,也是自己编码完成。这样以来代码量多了很多,不过灵活性倒是增加不少,考虑再三,还是决定自己编写模型。
另外,为了实现类似Rose写UML的效果,还需要完成一系列的窗口,早期用Visio把窗口的草图画出来,现在逐步在用Desinger画,无奈公司的机器太烂,拖一个Label居然要等10秒,一个钟头才做完一个Bean属性的对话框,忍吧!Spring的DTD定义得太灵活,类似嵌套Bean、嵌套List等,几乎很难用图或者对话框实现,考虑到实际应用得很少,所以简化了一下,不支持嵌套。以后想到更好的方法再改进。
PS:插件名字暂定为SpringEditor,不过SF上面好像有这个名字了,以后再改。