It seems to me that the problem Paul Reedman describes isn't that of
building layers on top of frameworks, but of building frameworks on top
of frameworks.

I find that I often build an adapter layer around third-party subsystems
to create an interface written specifically in the terms of my
application.  That gives me a natural abstraction to use within my
application.  As a side benefit, I get a seam (to use Michael Feather's
term) for testing--I can test that my application uses the adapter the
way I expect and I can test that the third-party subsystem behaves in
the manner I expect.

Such an adapter is not a general purpose framework, however.  It's very
specific to the application.

I can't think of any time I've wrapped an MVC framework in this fashion,
however.  Instead, I wrap my application in an API that forms a
convenient Model for the framework.

Either way, I find it a good technique for keeping my business logic
distinct from, and not directly dependent on, the framework.

 - George Dinwiddie
   http://www.idiacomputing.com/

Rob Manthey wrote
> I found this recent par on a local JUG resonated for me and 
> had some theme parallels to Rick's current thread ... how 
> much do we over-code in ignorance of the natural mechanisms 
> available?  (Sure, the uber-coders among us can code better 
> frameworks and deserve the fruits, but not we lesser-lings, 
> who usually tangle things more by trying on that caper.) Rob
> 
> Paul Reedman wrote:
> 
> ><snip/>
> >I still run into Java projects that build their own 
> frameworks !!! Yes 
> >Struts or hibernate is not good enough, we need our own 
> framework, so 
> >lets spend precious several weeks (or months) of the project time 
> >recasting a new web framework.
> >
> >Another thing I have noticed is that Java people love 
> building layers. 
> >So a particular developer doesn't like the interface into 
> hibernate or 
> >struts (or whatever framework) so they build another layer on top of 
> >the framework.
> >
> >This layer then becomes complicated and so a whole bunch of other 
> >people add to the layer in an attempt to make it "easier". (which 
> >doesn't happen because all they have done is to make it more 
> >complicated)
> >
> >Of course this new layer hides everything and soon you have no idea 
> >what you are doing. Importantly no one documents this new layer, so 
> >when new people join the project, they ask "I don't understand this 
> >framework..". Of course they don't know that underneath all of this 
> >software is plain old struts which has disappeared from view. <snip/>

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to