Thank you so much. You articulated many ideas I have also thought about RonR and the Zend Framework. Both seem like crafted business moves. RonR was a clever marketing technique, Zend Framework appears to be a reaction to RonR.
Before I comment much more I have a disclaimer. I am the project manager of Zoop Framework for PHP ( http://zoopframework.com ). These comments are intended not to push Zoop, but rather expound on the benefit of a framework.
Since Manuel's article was a bit lengthy, it is likely very few people will acutally read this as well, but I thought I would add a few things that you may find informative. I have been a PHP developer since early PHP 3. As far as application frameworks go, there are two different kinds. Ones that provide a core set of libraries or classes, and ones that provide a structure to program within along with a core set of libraries or classes. Zend, PEAR and phpclasses could all fall in the first category. Zoop Framework and Ruby on Rails fall into the second category.
More than just providing a core set of classes, Zoop provides a structure in which to program. Because of that structure Zoop is able to accomplish things that no set of classes could. A good example of this is Zoop's origional feature, guiControls. guiControls are essentially extendable, validating form components. The text guiControl appears like a text box, but it has integrated type validation (both clientside and serverside). While such a thing would be possible with classes, in Zoop the processing and validation happens behind the scene, so when the programmer recieves the POST, it has already been validated. This would be impossible without a structured framework.
Would I use a framework that simply provided classes, probably not. The real advantage in using a framework is the structure it provides. Not only does it insure organized code, but it provides functionality impossible without a similar framework.
I hope this has provided some enlightentment on frameworks and some other reasons for using one.
On a side note, Zoop has been in production use since 2001; it previously went under the name PeHpPy (we didn't like the name either). Zoop works well every version of php 4.3.10 and above, so no php 5 requirements. Zoop is released under a liberal open source license (GPL compatible). Zoop makes use of PEAR and other opensource libraries when there is a compelling reason to do so.
Zoop is not availble from phpclasses currently, but will be once phpclasses provides a more practical method of uploading a few hundred files, (which I have been told they are working on).
|2006-04-28 17:09:59 - In reply to message 1 from steve|
|Right, that is a topic that I forget to mention.|
There are not many frameworks in the PHPClasses site because currently the only way to upload files is doing it one by one.
The reason is that the site needs the authors to describe their files separately.
This is OK for small packages, but not for packages with many files.
The solution that is being planned is to support remote file retrieval using CVS. The authors supply a connection string to their projects CVS server and the site retrieves all the files they want. Support for sub-version hosted projects is also being considered.
This solution, not only allows retrieving the file descriptions with minimal package creating effort, but also solves synchronizing with subsequent releases.
There is no time frame estimate to implement this, but it has been on my to do list for a while.
|2006-09-16 18:42:36 - In reply to message 2 from Manuel Lemos|
Thank you for an interesting discussion on PHP frameworks with classes, and frameworks with structure and classes! I am a relative newbie. I have taken an intro course on PHP (and MySQL) and understand what I was introduced to, but I realize that there is much more to comprehend!
I need to ask this simple question, to help clarify in my mind a direction to pursue. My question is this:
How do Content Mgmt Systems relate to PHP frameworks? Or, if a choose a particular CMS (eg. Joomla, Mambo), will it limit/affect which PHP framework I might use?
The reason for this question is that I have not quite figured out what CMS really does (or how to use it), nor have I quite understood how to effectively use a framework. Do they work together, or are they mutually exclusive?
My goal is to develop a small site, using PHP/MySQL and upload from home to a web service provider. I want to learn how to use classes, as I develop this site further.
Any further information would be appreciated.
|2006-09-16 19:49:14 - In reply to message 3 from Scott Paulson|
|Most of the mature CMS systems are based on their own framework. Some even document their framework, so others can use the framework on applications unrelated to the CMS system.|
You may want to check out each of the CMS systems to see which provide a framework that may be useful for you, at least to study what they do.