当下有许多流行的Web原型设计工具,比如mockplus等,mockplus在我们团队初次开发rms系统用到过,确实还不错,但是,原型工具有其优势也有其劣势。
礼拜一开会时,经理跟我说,觉得现在的LMS还不太完善,比如如果我们要更换某个功能时,或者是换掉这个第三方提供者接口功能,使用另外的第三方提供者的接口功能,还需要改动一些代码,经理希望可以通过在线配置的方式或者通过读取xml文件或json文件的方式(只需改配置文件即可)来实现零编程化。另外还说了关于个性化定制,个性化定制目前而言,属于非紧急任务,不过提到在页面设计方面尽量灵活。
昨天我通过mockplus原型设计工具,写了一上午,但是发现虽然原型工具设计出来的确实美观大气,换言之,高大上。但是存在的不足是缺乏整体性构思,没有大致的图纸构思,单单靠头脑想象或者是抄袭某个模板,最后发现往往不尽人意。
通过手绘设计的方式,一边设计一边思考。在设计与思考的过程中,我发现我找到了web原型的共性。比如共性是采用一二布局方式,什么是一二布局(顶部Header,中部包含Nav和Section)。一二布局是共性,这样我就可以将其抽取为一个FreeMarker的模板。
关于通过模板生成HTML代码,可以参考我的博客园链接:https://www.cnblogs.com/youcong/p/9520730.html
手绘还有一个好处是,使我对整体项目流程更加清晰,因为是对现有的系统升级,务必要清楚现有的系统架构和流程。1.0系统的缺点,每当新增某个功能时,比如数据库没有这个表,我们就得通过MySQL客户端工具在该数据库中新增对应的表。Hibernate根据更加表生成实体,但是Hibernate并不符合我们的需要,因为我们需要对SQL达到精确控制的目的,所以我们使用MyBatis,但是MyBatis的逆向工程,生成的,让我感觉到,很多用不到,不好改,看起来也不整齐清晰,所以我决定采到了一个开源项目 MyBatis Plus。
在接触MyBatis Plus之前,在码云上,我最先接触到的一个开源项目是jeecg,然后再是jeesite,jeecg是开源团队自己编写的一个DAO,称为MiniDAO,特点是即具有Hibernate自动化,又兼有MyBatis对SQL的灵活控制性;而jeesite是对MyBatis的源码改装,其特点主要是使用了大量的注解,通过注解来达到单表(含增删改)及其多表关联业务查询注解式开发,只不过最后没有采用jeecg的和jeesite的原因是,主要原因还是目前业务不需要,这里我要强调一下,技术是为业务而服务的,并不是为了技术而技术。
MyBatis Plus的代码生成器,可以参考我的博客园地址:https://www.cnblogs.com/youcong/p/9043051.html
该篇文章是通过main方法运行生成代码。
还有一种可以通过在线配置的方式生成代码,地址为:https://www.cnblogs.com/youcong/p/9494892.html
最后我想强调的是手绘web原型图与写字的道理是一样的。只有当你拿起笔写,一笔一划,你才真正的了解该字的结构和含义。