Hey guys,
Yeah the main difference I see is that plugins are global to the app,
where as modules live in their own container or scope. Many modules
may use the same controller name and these need to be distinguished
from one another and at the very least routes configs would also be
specific to the module too. Ideally the implementation would be
cascading (coldMVC does a good job of this now). Module > Plugins >
ColdMVC. w/ configurable conventions.
I think the biggest advantage I see is the ability to group many
different applications under the same ColdMVC scope. Right now these
all live in separate applications so everything has to be wired
independently.
What I am really after is support for sub requests. Modules would get
me closer because they would allow applications to be loaded into
their own scopes and not interfere with each other. This would allow
me to call multiple modules in a single request and not be bound to a
HTTP request. Kinda like Zends dispatch loop.
In our framework, we have a master layout with many containers. In
each of the containers any number of modules can be included, so to
process a page request we loop through all the modules in the
container and execute each module. An example of this might be a page
with a HTML WYSIWYG module on top of a Photo Slideshow module. I'm
not sure how to do that with ColdMVC without coding the HTMLs and
slideshows as plugins, making sure to use distinct names for all of
the beans and I am not even sure that would work.
thoughts? Is there another way to do this?
.brett