News for hackers. Stuff that matters.
Re:Dependency Injection is dangerous for your career by brown9-2 on Thursday February 10, 2011 @11:02AM (#2202315)
For the sake of this example, let's say that the different gateways have vastly different APIs, messaging mechanisms, etc.

So in the code that you are passing a parameter to, you'd have to have some sort of branch based on the parameter value to choose to call Gateway A versus Gateway B - correct?

Which requires you, when switching gateways, to change the value of the parameter passed along with possibly updating the branch to be aware of what the different Gateway modules you might call would be - correct?

Re:Dependency Injection is dangerous for your career by jerf on Thursday February 10, 2011 @04:28PM (#2203833)
This is basic object orientation: You pass in an object that corresponds to the desired interface. "Facade pattern" if you need something to Google, but this is really basic language-agnostic OO stuff.

Another reason to dislike the Java cruft; it successfully hides the simple things going on behind immense machinery and complicated terminology.

Re:Dependency Injection is dangerous for your career by brown9-2 on Thursday February 10, 2011 @04:32PM (#2203854)
So this is what confuses me about claims that in Python you don't need all this extra cruft, because the language makes these things possible:

if you are using the Facade pattern in Python for this example, you'd be using the same pattern in Java.

So then, what exactly is different here?