projectsyn/commodore

Refactor classes `Component` and `Package` to have a shared base class

simu opened this issue · 0 comments

simu commented

Context

The current implementation uses standalone classes for managing components and packages, but the two implementations share a bunch of code, see e.g. #602 or #607. We really should refactor the two classes to have a shared base class which implements the generic functions which are identical for both dependency types.

Look at ComponentTemplater, PackageTemplater and their base class Templater for inspiration.

Alternatives

Keep code base as it currently is, accepting that we duplicate some identical code between classes Component and Package.