继上次的文章,面向对象 — 为什么要引入面向对象概念?这里我们来说说抽象?为什么要引入抽象 ?? ?
从一个故事开始讲起:
最近在做后端开发的时候前端长腿妹子给我抛了一个前端数据返回的数据格式:
如下:
这是尼玛格式??
自己写的时候开始想把这个格式存到一个类中,使用时候方便处理。求出来对应的数据直接往里面塞就行了. . .
然后塞着塞着就觉得不对劲,太费劲了,大家可以试试先去解析计算出来的返回值,然后分别将不同的数据,往List, Map, Set等集合里面塞. . .
然后写着写着突然妹子又说,咱们改个返回格式吧。。。。。。尼玛又改 ?
然后又是如下:
然后又继续修改...又重新修改类...又重新设计解析方法...累吗????活该 ...
谁不让你好好设计存储的数据机构,当前端数据格式变化的时候也可以不用去变动封装的类代码...
其实在最开始设计的时候我们就应该先分析数据格式,将有联系的一些数据存储到一起,如图:
这里结局方法并非最优化,还可以进行优化。。。
这样我们先将数据存储到这里,然后再去解析这个类,无论返回数据怎么变,这里的数据格式不变,只需调用get方法取出来即可。
是不是抽象一下很方便??以上纯个人总结,不喜勿喷。