我认为不会。RAM 对 OOP 至关重要。一旦你坚持了一些东西,在 RAM 之外,它就不再是 OOP 了。
一个对象实际上是它所接触的所有对象的总和,加上它们所接触的所有对象,再加上……为了工作,一个对象几乎需要与许多其他对象进行即时通信。否则,性能将停滞不前。(想想虚拟内存:如果你曾经在一台 0.5GB 的机器上使用过 1.5GB,你就会知道问题所在。)
基于慢速内存的存储倾向于使用关系存储或大块顺序数据,每个块都通过键随机访问。我编写了大数据、高度交互(以及如此严重的 OO)系统,这些系统将数据保存在 SQL 数据库中。我必须组织数据库,以便可以将其划分为可管理的块,每个块都可以独立存在,其中几个块将被加载到会话中。然后我不得不编写大量代码来将表格、行和列变成有用的对象。要写入数据库,我必须扭转整个过程。
因此,要启动程序,DB 数据进入搅拌机,结果完全不同。当用户完成并保存到数据库时,数据被取消混合并放回。内存中的对象与数据库表没有明显的关系(尽管显然可以通过足够的工作从另一个创建一个)。这与我能够达到的可用持久性一样接近。原子单位比对象或行大得多,每次转换都需要一段时间(整秒)。
我在 ORM 上做了一点(非常)工作。这里的诀窍是 OO 用于模仿关系存储。如果你从一个好的 OO 设计开始,你最终不会得到你会得到的对象,而是得到一个看起来就像一个关系数据库的东西。在很多情况下,这正是您想要的,而且效果很好。但这不是真正的OOP,可能也不是您想要的。
所以我没有找到普遍的答案。快速记忆和面向对象——以及慢速记忆和关系/非现实——是两个不同的东西,弥合这种差距需要仔细研究具体案例和一些天才。