On Mon, Jul 14, 2008 at 2:08 PM, Jeremy Haile <[EMAIL PROTECTED]> wrote:
>> Everyone needs to get it out of your head that this is a full-blown
>> logging abstraction framework or that it will need maintenance.  We're
>> not providing multiple implementations for Log4J or Logback, etc.  Its
>> just a graceful degredation and low-coupling mechanism.
>
> Why do you say this?  What else is an abstraction framework if not a
> low-coupling mechanism?  SLF4J is a low-coupling mechanism so people don't
> have to write their code around a specific logging framework.

Importing a 3rd-party API _all over_ your entire framework is _not_
low-coupling.  SLF4J allows us to decouple from Log4J and logback or
anything else, sure, but now we're tightly-coupled to SLF4J.  Sure,
that reduces risk, but its not as nice as it can be.

>
> Why do we have a low-coupling mechanism if we only provide one
> implementation?  This just seems completely unnecessary.

Because our code is tightly-coupled to SLF4J, it _forces_ a
dependency.  My solution does not force it nor does it require
polluting our entire framework with 3rd-party APIs.  But, if you want
to use SLF4J to abstract away a custom implementation, great!  Our
framework would still work perfectly in that environment too!

Reply via email to