考虑一下面向对象的编程语言(如C ++或Java)的通用教程:创建一个简单的订单处理系统,其中的对象代表帐户,订单,项目等(或多或少的等效对象)。完全具有直觉意义,但餐桌上的大象认为它不是真实的,因为它们是内存中的对象。在实际系统中,帐目,订单等实际上并没有真正存在于内存中,而是存在于数据库中,而内存表示只是它们的短暂镜像。
您可以自己编写很多代码来读取和写入数据库,但这是如此乏味且容易出错,实际上没有人这样做。
每个人最终都使用ORM,但是它们本身就存在问题,以至于著名的论文称它们为“我们行业的越南”。
我认为这不是对象和关系之间的不匹配,而是编程语言和数据库之间的不匹配,因为它们是彼此不了解的独立事物。猜想:解决方案是使用一种既是编程语言又是数据库查询语言的语言,这又将要求语言运行时也是数据库,而JIT编译器也必须是查询优化器。
这就是我所看到的问题的摘要。我的问题是,有没有人,
实际上建立了这样一个统一的系统
尝试过但未能建立这样的统一系统
关于如何构建这样的主题,或者为什么或为什么不这样做,写了很多实质性的文章
提出解决问题的替代方法?