-
背景:
现从事物联网行业(也有互联网的成份),架构师岗位。
在日常工作中,经常遇到某个平台或功能,需要进行多次迭代的场景,这些场景中绝大部分都是对之前功能的补充(换句话讲:核心逻辑还是之前版本,只是加入了用户需要的某个条件分支,输出为他们想要的结果),举个栗子:第一个版本的需求:当设备上报数据小于100时,将这个数据发布到MQ主题T1中,当大于100时,则发送数据到主题T2中。过了一段时间,用户有了新的需求,当大于500时,需要将数据发布 到MQ的T3主题上。。。(从迭代或运维的开发小伙伴,可能大部分都在做类似的工作)。
上面的例子只是冰山一脚,在“浩瀚”的工作任务中,这样类似的工作可能是某些同胞正在做、将一直需要完成的工作,且对用户端是无感的,这些逻辑不可视,不可配置。
常态可能是:反复修改源码,加入判断逻辑,自测、测试、上线部署。。。青春就是这么流逝的
为了能让身边的小伙伴快些完成工作,经过长时间的思考后,决定完成一个自研EL表达式解析器,并搭配其他组件一起赋能:快速何迭代,解耦并可以进行配置式热部署(上线)
本表达式解析工具实现为Java版本,主要功能有:
- 常用表达式解析:数学表达式(加减乘除模)、位表达式(与或非异或