如何将字典映射到特定 class 的对象?

How to map dictionary to object of specific class?

我有一个给定的字典,想将它映射到特定 class 的对象。
字典的所有键都应映射到对象的同名实例变量。

我想这是一个常见的程序?常见的实现方式是什么?

考虑这样做:

dict := { #x -> 5 . #y -> 6 } asDictionary. "dictionary as you described"
basicObj := Point basicNew. "basic instance of your object"

dict keysAndValuesDo: [ :key :val |
    basicObj instVarNamed: key put: val ].

^ basicObj

这确实是一个常见的模式。它经常用于序列化和物化。您可以在中找到一个实现 STON