On Nov 8, 1:47 pm, miniwark <[email protected]> wrote:
> Yes after reading a while here and here, this is not realy what i was
> seeking.
> Apparently "extendable" mostly mean hackable wihout forking. It not
> seems to
> correspond to plugining or decomposing an application.

Hi, just chiming in.  I'm the PM for a large BFG-based application
that uses the plugin/decomposition machinery quite a lot.

As a specific example, our app has an actions menu on many screens
with links to let you add something to a folder, edit an item, delete
an item, etc.  Our application has a number of different customers/
sites with potentially different policies about who is allowed to do
what, and where.

So we made a plugpoint for the actions menu.  Code on the outside of
our application can register a handler that overrides the built-in
handler, providing a different list of allowed actions.  The
customization point is handed enough of the environment (e.g. the
place in the site it was called from, security information about the
current user's roles) to make an informed response.

The plugin machinery is reasonably good at allowing fine-grained
targeting.  This stuff is obviously hard to balance.  If you make too
big of a surface area pluggable, then you carry a maintenance burden
on customization code.  If you have too small a surface area, the
pluggability isn't meaningful.

I'll confess that we've been back-and-forth in our application on
pluggability, trying to set the dial correctly.  But the machinery
itself isn't the problem.  In fact, it is rock-solid and second-
nature.

Perhaps it wold help if we started a thread to collect real-world ways
(such as we had for actions menu) that you'd like pluggability and
decomposition.  I could chip in with some of the things we did, then
compare.

-- 
You received this message because you are subscribed to the Google Groups 
"pylons-discuss" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/pylons-discuss?hl=en.

Reply via email to