I don&#x27;t know what you mean by &quot;weird interface abstractions&quot;. Interfaces <i>are how</i> you test the edges between modules in statically typed languages. They are the contracts that get checked at compile time to make sure you&#x27;re not sending IPAddress-es where DateTime-s are expected.<p>And I don&#x27;t know what that last part is supposed to mean. I&#x27;ve never not know &quot;where my dependencies are coming from&quot; or &quot;where the implementation is&quot;. It&#x27;s not like they live in some hidden place that I can&#x27;t access. I reference them directly and explicitly.<p>EDIT: you ninja-edited on me. No, you are not at a loss for where IBar is defined. It&#x27;s extremely easy--a single key press--to find it. Just hit F12 on it. You&#x27;ll go right to its definition.