代码生成器技术乱弹四,弹性万能界面

本文介绍了动词算子式代码生成器中使用的弹性万能界面技术。通过将变化集中于域对象并提供特定方法,使得界面能够灵活适应不同数据对象的字段需求。文章还展示了Grid及多对多关系的弹性万能界面示例。

        在代码生成器的实现中,有一个问题也是制约大家能否研发出代码生成器的关键之一。那就是界面。大家知道代码生成器是有一定灵活性的。如果一个代码生成器不能指定数据对象的字段,所有的关系都是僵死的,这样的代码生成器相信不会有太多用户,所以,代码生成器需要有一定的弹性。

        在动词算子式代码生成器中,解决这个问题的是使用了我称之为弹性万能界面的技术,或者更准确的说是单页式弹性万能界面。

        在动词算子式代码生成器中有三个特殊字段domainid,domainname和activefield。而弹性万能界面也有三个,主页模板基本上没有功能,单表操作的Grid单页式弹性万能界面和专用于多对多关系的三栏式多对多弹性万能界面。

        可以做如下分析,弹性万能界面最大的问题在于,如何处理不同对象的不同的字段。动词算子式代码生成器的解决方案是把变化集中于域对象。对域对象而言getDomainId返回主键,getDomainName返回域对象的标准名字,getFields返回所有字段,getFieldsWithoutId返回除了主键的所有其他字段。如此等等,有了这些方法,您就可以赋予界面以弹性。

        下图是Grid弹性万能界面的截图:

        下图是多对多弹性万能界面的截图:

 

        希望上述文字解答了对代码生成器感兴趣的同学们的疑惑。如果您对动词算子式代码生成器感兴趣,请参考以下链接:

        https://gitee.com/jerryshensjf/InfinityJEEEU

        https://gitee.com/jerryshensjf/InfinitySimpleJEE

        https://gitee.com/jerryshensjf/PeaceWingSMEU

        https://gitee.com/jerryshensjf/InfinityGPGenerator

        https://gitee.com/jerryshensjf/PeaceWingSHCEU

转载于:https://my.oschina.net/jerryshensjf/blog/1821638

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值