Gallery:框架的相关讨论
jmullan: When bharat started g2 the frameworks weren't there. So now that the frameworks are there, can we eliminate wasted effort while still maintaining a world-class product?
valiant: Yes, that's where I see us going.
talmdal: +1
jmullan: we should define "framework" though
talmdal: i think it is the base infrastructure that handles the interaction between application components
valiant: the minimum is something like zend framework...you glue things together yourself
valiant: the maximum is using drupal and building your app on that
talmdal: or i was reading about [cakePhp]
valiant: talmdal: cake isn't a cake
talmdal: When i think of a framework, i think of something like spring or struts, where there is a whole bunch of "plumbing" in place that glues the application together.
valiant: possible solutions could be:
[zend framework] (not integrated enough for my taste)
[drupal] (not OO enough, but they're changing)
[flow3] (too new, but very very interesting)
valiant: What i like about drupal as a framework is the energy and resources that are behind it -- there are tons of resources... so they have teams specializing in scalabiltiy, usability, etc
talmdal: Then we would just build a series of drupal plugins that would be Gallery?
valiant: Possibly...i haven't explored the feasibility that much yet.
You also have to ask yourself what value we have generated with gallery2. What's left after removing the framework? I guess it's mainly about offering every kind of feature you could imagine, great lots of translations, some great design patterns (e.g. toolkits), great testing / designed for testability. and that's value that we can preserve when migrating to another framework.
The drupal aspect would really be just about the framework, what developers see -- not how the app works, how it looks like or what interfaces it offers to clients and other apps.
PHP is cool to hack something together, but we're far beyond that point and would profit a lot from strong typing, namespaces, all the tools and libs for java, the app container. For unit testing, java is awesome. there's so much the unit testing frameworks and dependency injection frameworks can do to make your life more productive and tests fun and succint.
That's why i have great hopes for flow3 (the new typo3 framework), but it also looks like it needs 3 years for prime time and that it could be pretty slow because php won't support aspect oriented features or dependency injection ala spring without major costs in performance.