You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is an anti-pattern that comes from not having proper separation of code into separate classes. To make things even worse, all this code is being included into model classes, so making any of the methods private doesn't actually prevent application code from calling them.
A better pattern to follow is the one taken by the classes in the IdentityCache::Cached namespace. They are built during initialization, which avoids adding extra object allocation on hot code paths, but still provides a place to store configuration state and methods that use that state. There may be more methods we can move into those classes and there may be opportunities to create new classes that are decoupled from the model classes.
The remaining methods on those single use internal module should be moved into IdentityCache::WithoutPrimaryIndex.
The text was updated successfully, but these errors were encountered:
Currently, IdentityCache::WithoutPrimaryIndex has the following single use internal module includes
This is an anti-pattern that comes from not having proper separation of code into separate classes. To make things even worse, all this code is being included into model classes, so making any of the methods private doesn't actually prevent application code from calling them.
A better pattern to follow is the one taken by the classes in the IdentityCache::Cached namespace. They are built during initialization, which avoids adding extra object allocation on hot code paths, but still provides a place to store configuration state and methods that use that state. There may be more methods we can move into those classes and there may be opportunities to create new classes that are decoupled from the model classes.
The remaining methods on those single use internal module should be moved into IdentityCache::WithoutPrimaryIndex.
The text was updated successfully, but these errors were encountered: