领域模型的必要性

本文讨论了ADO.NET与Nhibernate在数据访问和封装方式上的区别,作者提出了关于领域模型编程的一些疑问,并探讨了随着业务复杂度增加时这两种方式的适用性和灵活性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前几天在javaeye上面发表了一篇文章,是讨论ADO.NET与Nhibernate的数据访问和封装方式的讨论的,http://october731.iteye.com/admin/blogs/348415,得到了很多大虾的批评,但是作为一个菜鸟,我自己还是深知自己不知道什么东西。所以这次继续发帖,想把没有弄明白的东西弄个明白。
我们在做开发的时候,不是如何开发的效率高就选择什么样的开发方式吗?个人认为,在做领域模型的思考的时候,其实是把数据库需要返回的数据的字段进行了一个映射,但是这个真的有必要吗?当我的业务越来越多,越来越复杂的时候,原来的domain和dto真的能够满足我们的需求吗?我们还不得不随着开发的进行,慢慢的去增加或删除模型层数据的字段,以及设置字段类型,而这种事情,我们原本是不需要去考虑的。我承认我们的业务很依赖于SP,但是不管是调用数据库的SP,还是自己在程序当中写自己的sql,其实当你的业务改变的时候,你除了修改你的sp或是sql之外,domain和dto的改动都是在所难免的不是吗?
而ADO用起来的时候,我们更多的可以关注我们的业务,很大程度上数据业务上的增删改查我们都可以这样来完成:
每一个表格里面都有一个隐藏字段,editmode,用来设置‘U’‘I’‘D’字段,以便程序中控制对数据进行如何的操作。
查:就是返回的数据在表格上的绑定,不赘述;
增:增加一行表格,然后把这个行的表格的数据返回给数据库的SP去处理;
删:提取出关键字段,一般就是pk,返回给数据库的SP去处理;
改:提取出被修改的行,然后返回给SP去处理。

可能是因为我真的接触领域模型编程的太少,没有太多时间来体会到领域模型编程的特点与优势,所以在此妄言了,希望各位领域模型的XDJM给我指点。感激不尽。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值