Whitepaper

A few weeks ago, we were asked to write a white paper on what the Zend Framework is for the Marketing people at Manning. Obviously, being a programmer, I reused and re-factored what I had already written for Chapter 1 of the book.

It’s interesting taking an excerpt out of a larger body of work and trying to make it stand on its own. I ended up re-wording more than I expected and also re-ordering bits as they didn’t make sense order that they are in Chapter 1.

I got some feedback on it a couple of days ago and apparently it looks useful which is good. It’s going to be formatted up and presumably it’ll be published on the Manning website. if it is, no doubt I’ll link to it from the Resources page here.

Of course, now I need to go and rework Chapter 1 with the improvements that I’ve made!

Posted by Rob on 4th January 2008 under The Book |

3 Responses to “Whitepaper”

  1. Turist responded on 05 Jan 2008 at 12:05 pm #

    Zend Framework still doesn’t have good tutorials ;( and lacks a good community. Tell me if I’m wrong.

  2. Rob responded on 05 Jan 2008 at 6:12 pm #

    How would you define the community? It seems great from where I sit.

    Regards,

    Rob…

  3. Nima responded on 06 Jan 2008 at 9:57 am #

    Hi Rob,

    I’ve been working with Zend Framework since early preview releases. I’ve made many changes in Action, Routing and View components of ZF 0.2 and redesign first Iranian social network website which has over 500,000 visitors now and over 3000 online people at a time. I just used MVC component of ZF in Cloob.com (which means ‘club’ in Persian). I like the simplicity and good design of ZF and buy your MEAP release of ebook to learn more. I also used your file system layout in cloob.com based on your guide “Getting Started with the Zend Framework”. I’ve not used database components of ZF because data tier has been developed totally in MySQL via stored procedures and triggers and also Auth and ACL packages were not matured enough, so I developed an ACL component with extra features like per-session, per-action and time-based permissions with different priorities (user, friend, operator, admin). Each controller in our system has three level of inheritance to set own default permissions (all controllers should implement a method named “defaultPermissions” and specify default permissions on their action for four predifined roles), layouts (base layout which named “moduleLayout”, content wrapper of controler (controllerLayout)), initial values and etc. Our framework based on ZF traps all requests in a method of Zend_Controller_Action which is the parent of all controllers and after reading default permissions of specific controller and applies exception rules from db, runs and renders its output. As we have a virtual credit in cloob.com, therefore some actions need render a different view(usually a form) to get user acceptance to charge credit. I’ve developed a concept like controller helpers that each action can register a beforeRun and afterRun method to resolve this issue. Also I’ve redesigned View component to meet the “Graceful Degradation” concept because if users disable their javascript and request an Ajax request which renders a partial template, whole page renders with all the parent wrappers. For this I’ve developed a addTemplate() method which implemented in Action_Controller main class to add a template in a stack and define local view objects as a collection of base view object defined in bootstraper. With this approach we can render nested views easily. Local scope view objects can access general template variable very easily. Also each ajaxified method should define its parent method which will automatically called after rendering this particular action’s view and only if it is not a XMLHTTPRequest. There are also some ideas which specifically developed for this framework to run efficiently under load. After all, I just want to say ZF is so easy and well-structured framework that we could customize and use it in enterprise. I’m currently reading “User Authentication and Authorization” chapter of your book. I’ll send you my suggestion later. Keep the good work.

Comments RSS

Leave a Reply