1. still confused where is the place to initialize a new VO()... in a view ADD command for example? only if it dont passes value? in the SUPER inside proxy constructor?
This totally depends on your situation.
be creating a VO in a view component and initializing it so it's properties can be bound to by form components like text fields when the app is created. But later that VO property might be replaced by a Mediator who takes a VO returned from a service and sent inside a Notification to the Mediator, causing the retrieved data to flow by binding from the new VO placed on the view component.
Or you might have a Proxy who creates the VO and is later retrieved and the VO manipulated.
You might create the VO in a Command and pass it on the constructor of the Proxy that will maintain it, or you might create that VO in the constructor of said Proxy instead.
Any of these are OK. You just have to get a handle on when things happen and in what order, so that you know where the most appropriate place to do something is.
and why i see in examples the second argument of super, being an array for example, or even in the constructor header?
The Proxy class takes name and data as args. The second argument is often created on the spot at construction time, so that the data property is not null, in case any other actor should attempt to manipulate the data. Later it may be replaced by a return from service.
i think i must build a business delegate to connect with amfphp... so business delegate its only a connector?
You only need the delegate if more than one proxy will talk to the service. If only one Proxy talks to a service, then feel free to encapsulate the service within the Proxy.
ive step debugged and i feel strange that it seems just passing through constructor before registering the proxy.. i dunno... feel strange the sequence that the application runs..
I'm assuming you see code like this:
Though the registerProxy may be the first thing you see left to right, the Proxy must be constructed before it can be registered, and so the MyProxy constructor is executed, returning the MyProxy instance, which can then be registered. This has nothing to do with PureMVC, this is just the way the language works.
For clearing up your confusion about PureMVC related issues, I would highly suggest that you read the Best Practices document. It can really help.