| 1234567891011121314151617181920212223242526272829303132333435363738 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!-- Reviewed: no -->
- <sect1 id="zend.tool.project.introduction">
- <title>Introduction</title>
- <para>
- <classname>Zend_Tool_Project</classname> builds on and extends the capabilities of
- <classname>Zend_Tool_Framework</classname> to that of managing a "project". In general, a
- "project" is a planned endeavor or an initiative. In the computer world, projects generally
- are a collection of resources. These resources can be files, directories, databases,
- schemas, images, styles, and more.
- </para>
- <para>
- This same concept applies to Zend Framework projects. In Zend Framework projects, you have
- controllers, actions, views, models, databases and so on and so forth. In terms of
- <classname>Zend_Tool</classname>, we need a way to track these types of resources - thus
- <classname>Zend_Tool_Project</classname>.
- </para>
- <para>
- <classname>Zend_Tool_Project</classname> is capable of tracking project resources throughout
- the development of a project. So, for example, if in one command you created a controller,
- and in the next command you wish to create an action within that controller,
- <classname>Zend_Tool_Project</classname> is gonna have to <emphasis>know</emphasis> about
- the controller file you created so that you can (in the next action), be able to append that
- action to it. This is what keeps our projects up to date and <emphasis>stateful</emphasis>.
- </para>
- <para>
- Another important point to understand about projects is that typically, resources are
- organized in a hierarchical fashion. With that in mind,
- <classname>Zend_Tool_Project</classname> is capable of serializing the current project into
- a internal representation that allows it to keep track of not only <emphasis>what</emphasis>
- resources are part of a project at any given time, but also <emphasis>where</emphasis> they
- are in relation to one another.
- </para>
- </sect1>
|