Question about Domain and external dependency
minizilla opened this issue · comments
In this docs, package domain
cannot have a direct dependency on external packages. Why User
domain import package golang.org/x/crypto/bcrypt
? Any good reason?
Answer for that is mentioned in Clean Architecture article under Entities
section: "They are the least likely to change when something external changes".
Now if you consider x/crypto/bcrypt
, this is an implementation of BCrypt algorithm which is well-defined and never going to change (Or, there is nothing external about it). This is in a way similar to using a package which is part of the standard library itself.