2 ms·
I think that some of our discussion around terms is an artefact of discussing a manifestly typed language like C. But if we handwave and say that "interface" is
by raganwald 17y ago
I think that some of our discussion around terms is an artefact of discussing a manifestly typed language like C. But if we handwave and say that "interface" is any dependency with at least one level of indirection and "concrete type" is any dependency with no levels of indirection, I agree that you can't implement plugins without some indirection somewhere.
That being said, you clearly can implement indirection without plugins. I think of a plugin architecture as being composition at a coarse level. In the case of a factory with a runtime list of implementations, I think of that as a factory and a plugin architecture, possibly that the plugin architecture is implemented with a factory.