golang-design-pattern
golang-design-pattern copied to clipboard
The Prototype pattern: potential type mismatches
Hi, perhaps this example isn't the best one because there's a potential for type mismatches. If we want to use type matching here, perhaps 'switch' is a better choice; or at least I think using the following type checking method would be better.
t1, ok := c.(*Type1)
if !ok {
t.Fatal("error")
}
https://github.com/senghoo/golang-design-pattern/blob/e9d687a5411f31db2a5d7229f94fb4c6c73163d3/07_prototype/prototype_test.go#L38C1-L38C18