我应该继续使用自制的ORM吗?

Ale*_*dro 2 .net orm

这是关于Stack Overflow的第一个问题,所以提前感谢您的帮助!:)

在过去的两年里,我开发了一个自制的.NET ORM,我在一些中小型项目中使用它.其主要特点是:

  • 使用属性从数据库映射到对象
  • 丰富的对象语法,使用提供程序将SQL查询写入不同的RDBMS
  • 使用提供程序连接和交易到不同的RDBMS
  • 延迟加载,相关实体,自动验证
  • 自动缓存以前的查询结果
  • 使用实体结构自动生成数据库模式
  • 基于Thread文化的实体自动本地化

现在我处在一个十字路口:我必须决定是否继续我的解决方案并实现其他功能,如并发控制或宣布它已经死亡,并从现有的解决方案开始,如nHibernate.

我是那种喜欢自己重新发明轮子的人......等等......

我错过了什么吗?这是开始走在更安全的道路上的时刻吗?

非常感谢,对不起我的基本英语.

亚历山德罗

Ada*_*son 5

我是那种喜欢自己重新发明轮子的人......等等......

另一个名字是软件开发人员.我们不时希望为已经解决的问题创建自己的解决方案.数据访问是人们继续出于各种原因创建自己的解决方案的领域之一(一些比其他更合理).

但事实是,一旦你达到需要并发控制和其他高级功能之类的东西,你应该认真考虑采用一个更成熟的ORM,无论是NHibernate,ADO.NET实体框架,或其他解决方案.如果这是你的工作而不仅仅是一种爱好,这是双重的.花时间重新发明已建立和稳定的东西正在浪费你雇主的钱.

无论你现在拥有多么好,自己维持它不是一个实际或明智的努力.你有两个真正的选择:

  1. 如果您的ORM只是脑力激荡,那么请向社区开放,看看响应是什么.如果你让其他志同道合的人帮助,它就会变得切实可行.谁知道; 它可能下一个NHibernate.请记住,您的雇主(如果这是您的工作)可能没有兴趣帮助社区,并且对您制作有效的软件更感兴趣.还要意识到,如果您的ORM是在公司时间开发的,那么您可能没有权利向社区开放
  2. 只需切换到主流ORM.