0

我正在研究活动记录和数据映射器设计模式之间的区别。想到的一个简单问题是,随着每个活动记录实例中持久性方法的重复,这不会导致大量不必要的内存使用吗?还是可以忽略不计?

4

1 回答 1

1

面向对象的编程语言方法通常存在于类级别,而不是对象级别。这意味着一个对象是一个类的实例,并且在调用(或发送,取决于语言)时,object.foo它实际上是指回类并在对象的上下文中调用该类的方法。(这可以通过多种不同的方式来完成,我没有资格深入写。)

想象一下,如果每个实例或其继承者都有该方法的副本,那么流行语言中的ToString//开销!toStringto_sObject

因此,要回答您的问题,对于包含 Active Record 类的上存在的方法,没有不必要的内存使用。

于 2013-03-04T12:42:15.043 回答