kwutzke (25) [Avatar] Offline
#1
I don't know if you have noticed it... ZF 1.9.6 has revealed some changes in the directory structure, hopefully.

Get the full ZF package from here http://framework.zend.com/releases/ZendFramework-1.9.6/ZendFramework-1.9.6.zip and extract it. In contrast to release 1.9.5 the 1.9.6 release contains two empty subdirs "src" and "resources". There seems to be some movement in revising the directory structure. Could this be true?

In Java and other programming languages, the directories are handled more consistently. I'm a long-time Java programmer, and the directory structure is strictly divided into separate directory trees for sources (src), libraries (lib), the compiled classes (build or bin), the docs (doc/s), resources (res) etc.

With ZF, source files and resources are crammed together into the application dir, instead of opening up the directory trees analogously. (After all, PHP is currently going all the way where Java has already been years ago: object-oriented, namespaces, Phar, Phing, PHPUnit, etc. I don't really see why ZF should be structured differently).

BTW: I'm also against the "extras" dir in the ZF release, because it contains two dirs that are already in the root: "library" and "tests". I don't see why separating out these into "extras" is necessary. Release 1.9.6 also gets rid of the documentation dir. I think this clearly belongs into the root.

Is there any movement into putting all application source files into a src dir instead of putting them into the "models", "views", and "controllers" subdirs of the application modules' dirs, where all types of files are mixed?

I think the emergence of Phing and Phar might make the old-school ZF structure obsolete...

What's your opinion on this? I have just seen too many badly structured apps and modules. At least, you seem to have the opinion that modules may only contain 3 dirs for MVC, because every file can basically be associated with exactly one of these domains. Unfortunately, most apps add other dirs parallel to these. Furthermore, the (plural!) MVC dirs are also used as namespaces. To me, it is a total mess to interleave source and resource files. Will it be cured in the near future?

Karsten