zend_tool: rapid application development with zend framework
DESCRIPTION
TRANSCRIPT
Copyright © 2008, Zend Technologies Inc.
Zend_Tool: Rapid Application Development In Zend FrameworkRalph SchindlerSoftware Engineer,Zend Technologies
Overview
• This Presentation? Now?
• The Proposals
• Demo of Code / Prototype
• Q & A Time
• Whats Next?
Current State of Affairs
• This is where you come in:• Need worthwhile community feedback to validate proposals, ideas and use cases
• Which in turn, will push along the component in the proposal process
• And, we have a prototype is ready, you can use it TODAY
The Proposals
• The Tooling / Command Line Tooling problem broken down into 3 logical part:• Zend_Tool_Rpc
http://framework.zend.com/wiki/display/ZFPROP/Zend_Tool_Rpc+-+Ralph+Schindler
• Zend_Tool_Project http://framework.zend.com/wiki/display/ZFPROP/Zend_Tool_Project+-+Ralph+Schindler
• Zend_Tool_CodeGenerator http://framework.zend.com/wiki/display/ZFPROP/Zend_Tool_CodeGenerator+-+Ralph+Schindler
• Zend_Reflection http://framework.zend.com/wiki/display/ZFPROP/Zend_Reflection+-+Ralph+Schindler
The Proposals – Zend_Tool_Rpc
• RPC Style “framework” for using and extending “tooling” capabilities
• Further broken down into subparts:• Endpoints• Providers• Loaders• Manifest & Metadata• Built in / System providers
The Proposals – Zend_Tool_Project
• Zend_Tool_Project facilitates the ability to build and manage ZF based projects
• Subparts:• Set of providers• Object Graph Management
Contexts Graph and Nodes
The Proposal - Zend_Tool_CodeGenerator
• Responsible for parsing and generating “code” from logical blocks of “text”
• First round of implementation:• PHP
Files, Classes, Properties, Methods, Parameters Docblocks for each Body code / maybe later support primitives and basic control structures
• Apache Conf files and .htaccess files Directory and File blocks, settings, etc.
Demo of Code / Prototype
• Demo Time!
• A script of what I will be demo-ing is located here:
Demo – Make sure the Environment Is Setup
Demo – Lets do something useful now
Demo – Make sure a Vhost is Setup
Demo – So what did that do?
Demo – What did all that do?
Demo – What else can it do?
Demo – What else can it do (part 2)?
Demo – What else can it do (part 3)?
Advanced Usage: OOP interface to Generation
• Zend_Tool_CodeGenerator allows you to generate OO Php code to script the production of classes
• Zend_Reflection allows you to reflect more granular aspects of OO classes• Docblocks, doc attributes (var, description, params, returns)
• Reflect Files• Retrieve content body
• Zend_Tool_CodeGenerator allows you to use Zend_Reflection to build OO graphs of code to be able to modify and save back to disk
Advanced Usage: Hello World
Advanced Usage: Hello World
Advanced Usage: Hello World
Advanced Usage: Hello World
Advanced Concepts: Domain Models
• Lets say we started with a Db Schema
Advanced Concepts: Domain Models
Advanced Concepts: Domain Models
• And we wrote a few scripts that utilized reflection and code generation, other tooling goodies and other elements of the ZF…
• http://svn.ralphschindler.com/RS_DomainModel/
• Perhaps we could generate some Domain Models that utilized Db Tables, as well as some getters and setters for their properties
Advanced Concepts: Domain Models
Advanced Concepts: Domain Models
Advanced Concepts: Domain Models
Q & A Time
• Ask your question
• Receive your answer
• Wash, rinse, repeat
Whats next?
• Send feedback to the proposals
• http://tech.groups.yahoo.com/group/zf-tool/
• Use the prototype and ask questions to me:• [email protected]• Or in #zftalk / #zftalk.dev• Or on the mailing list
• My next steps:• CodeGeneration refining• Help system shortcuts• Custom Profiles/CodeGenerators for Zend_Tool_Project
Copyright © 2008, Zend Technologies Inc.
Thanks!Ralph [email protected]://framework.zend.com/