Version 7, last updated by Geoffrey Bachelet at November 10, 2007 08:51 UTC
Riskle Brainstorming
This page holds all ideas I have to extend ZF, I aim at the following goals:
- make code less verbose
- conventions over configuration
- speed up app developement with ZF
- follow the DRY principle
Configuration file format + default configuration file
YAML is a format which is less verbose than INI and more (human) readable than XML. There should be a default standard configuration written in YAML (possibly compiled in php somewhere, depending on performances) with all needed directives explained.
CLI tools
CLI Tools can be useful in a bunch of situations:
- Generate classes skeleton (controllers+views, models)
- Generate a bootstrap
Filesystem layout convention
Some components could assume a default underlying filesystem convention, such as:
- Controller_Front (module directories)
- Config (where to find config files)
- Layout (where to find layouts)
Automatic view variables assignements
One should have to $view→assign() each variable he’s willing to use in its view. There could be some kind of mechanism which would grab the controller’s public variable to inject them into the view (ala rails)
Models usage
It’s a pain in the ass having to instanciate each and every model you’re gonna use. While I do agree on the design, there must be some solutions to ease the process.
Easy table relationships declaration
Relationships between database tables should be easy to express. One single statement telling the children table name should suffice, with convention on the name of the keys to use for the join.
Have an adapted behavior depending on the environment
Applications should have a set of pre-defined behavior depending on the staging:
- Development
- Automatic query logging
- Testing
- Production
- Fine-tuned for performance
Glue all these nice improvements together
These are of no use if you have to invoke all these nifty things yourself :-)