Design or improve deep modules from concrete caller, change, and test friction. Use when shaping a module or interface, placing a seam, choosing adapters, deepening shallow code, comparing architecture options, or making behavior easier to test through a public interface.
Design or improve deep modules from concrete caller, change, and test friction. Use when shaping a module or interface, placing a seam, choosing adapters, deepening shallow code, comparing architecture options, or making behavior easier to test through a public interface.