【发布时间】:2015-03-22 06:03:35
【问题描述】:
如何安全地声明和初始化 Monticello 包使用的全局变量,以便在加载过程中不会出错?正在做
Smalltalk at: #VarName put: varValue
在其中一个包类的类端“初始化”方法中是否足够? (在这种情况下,我不希望使用共享池。)
【问题讨论】:
标签: smalltalk pharo squeak monticello
如何安全地声明和初始化 Monticello 包使用的全局变量,以便在加载过程中不会出错?正在做
Smalltalk at: #VarName put: varValue
在其中一个包类的类端“初始化”方法中是否足够? (在这种情况下,我不希望使用共享池。)
【问题讨论】:
标签: smalltalk pharo squeak monticello
是的,这就够了。另一种选择是使用延迟初始化:
^ VarName ifNil: [ VarName := value ]
我很好奇,你为什么使用全局变量?根据我的经验,只有极少数情况下不使用全局变量是无法解决的,我认为在大多数情况下,使用全局变量暗示了糟糕的设计。
【讨论】: