Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Uml 持久对象中瞬态属性的初始值?_Uml_Persistent_Transient_Bold Delphi - Fatal编程技术网

Uml 持久对象中瞬态属性的初始值?

Uml 持久对象中瞬态属性的初始值?,uml,persistent,transient,bold-delphi,Uml,Persistent,Transient,Bold Delphi,尽管我使用了一个特定的ORM框架,Bold for Delphi,但我对这个问题的框架无关理论观点更感兴趣 所以问题是关于有一个持久对象和一个带有初始值标记的瞬态属性 初始标记指定创建拥有对象的实例时将获得的值属性 然而,当随后从持久性加载此对象时,transient属性的值应该是多少 是否应再次应用初始值标记?从逻辑上讲,它应该是空的,否则它将保持未分配状态(null) 我在任何文档中都找不到关于这种特殊情况的任何规范。我们无法仅创建DB记录的对象,因为我们将丢失所有瞬态属性。因此,在加载持久

尽管我使用了一个特定的ORM框架,Bold for Delphi,但我对这个问题的框架无关理论观点更感兴趣

所以问题是关于有一个持久对象和一个带有初始值标记的瞬态属性

初始标记指定创建拥有对象的实例时将获得的值属性

然而,当随后从持久性加载此对象时,transient属性的值应该是多少

是否应再次应用初始值标记?从逻辑上讲,它应该是空的,否则它将保持未分配状态(
null


我在任何文档中都找不到关于这种特殊情况的任何规范。

我们无法仅创建DB记录的对象,因为我们将丢失所有瞬态属性。因此,在加载持久对象时,只能在已创建的实例中执行。没有其他方法可以不使用设置初始值的基本对象构造函数进行实例化。当然,有些语言可以解决这个问题,但为什么?

我使用的框架仅在首次创建对象时设置属性的初始值。在获取之前的后续重新创建中,它不会设置初始值,因此瞬态属性保持未初始化状态。我想确认我的意图,将其视为一个bug并在框架中修复。也许我在这个问题上不是很清楚。@DanielMaurić如果我们谈论的是一个具体的框架,我会在源代码文档中寻找它必须如何实现以及如何实现。你有权访问吗?@Gangus:这是一个遗留产品,文档没有指定这种特殊情况,但我有来源,我们自己维护它。目前,它只在第一次创建持久对象时设置初始值,我是否应该更改它,以便在从db还原时以及在初始创建时设置初始值?@DanielMaurić此框架是否必须支持某些接口?