我对持久层的一点看法
最近做项目,有一个星期的时间,都在跟同事讨论:持久层怎么办?
是自己搞,还是用个持久层框架?
最后决定还是自己搞吧。
因为数据库结构一直都在变,用了持久层的确不方便。
虽然,从某种程度上来讲,持久层的确能减少代码量。
更重要的是,数据库已关系(表)为处理单元,而程序是以对象为单元。
因此,这种对象与关系的映射是很有必要的。
现在,突然觉得——持久层是软件开发的一个瓶颈。
如果没有持久层,那么软件代码量会增加,数据库 DML 操作会变得极为不方便。
可如果有了,好像也不行。
一是持久层框架增加了软件的复杂度,无法保证软件运行的效率;
二是数据库结构的变化对持久层的影响简直是噩梦。
所以,对持久层框架的使用应该是慎重的。
特别是,在一个项目,数据库频繁变更时。
比如,一个企业,要做一个软件项目,之前什么都没有,没数据库,没原型,一切从零开始。
这种情况下,谁敢用持久层呢。
但是如果软件项目,仅仅是改造,或是在现有软件的基础上改版,或是借鉴现有软件来重做。
这种情况下,倒是可以考虑选一个持久层框架。