issues
search
masahikotsujita
/
Asterism
C++ Package Manager
MIT License
1
stars
0
forks
source link
Refactoring version resolving logic (`ModuleManager`, `Module`, and `Context`)
#40
Open
masahikotsujita
opened
2 years ago
masahikotsujita
commented
2 years ago
WHY
Now
ModuleManager
,
Module
, and
Context
are tightly coupled so not easy to maintain
ModuleManager
is not good name, because the meaning of "manager" is ambigous.
These classes are not easy to test because they are strongly depend on file system
WHAT
Clean up type structure
Rename
ModuleManager
to properer name
Abstruct file system and remove direct dependency to it from these classes
Dependency to concrete system such as git should be injected from outer
WHY
ModuleManager
,Module
, andContext
are tightly coupled so not easy to maintainModuleManager
is not good name, because the meaning of "manager" is ambigous.WHAT
ModuleManager
to properer name