• @Kache@lemm.ee
    link
    fedilink
    1
    edit-2
    2 months ago

    Sounds easy to simplify:

    Use one of: constructor A(d), function a(d), or method d.a() to construct A’s.

    B and C never change, so I invoke YAGNI and hardcode them in this one and only place, abstracting them away entirely.

    No factories, no dependency injection frameworks.

    • @GissaMittJobb@lemmy.ml
      link
      fedilink
      22 months ago

      Now B and C cannot be replaced for the purposes of testing the component in isolation, though. The hardcoded dependency just increased the testing complexity by a factor of B * C.