Re: Re: Problem creating an acount to submit a proposal
| From: | Bakir Hassani | Date: | Tue, 01 Jan 2008 10:16:02 +0000 |
| Subject: | Re: Re: Problem creating an acount to submit a proposal | ||
| References: | 1 2 3 | Groups: | php.pear.dev |
| Request: | Send a blank email to pear-dev+get-48834@lists.php.net to get a copy of this message | ||
Hello,
David Coallier wrote
>
> Few points you have to fix.
>
> 1. Make that php5
OOP_Template performs better with php5 due to better object handling as I
noticed in some benchmarks I did, but what about
support for php4?
> 2. Use proper naming (Prefix with PEAR_ your class name)
> 3. Read the coding standards
In fact that online files are the pre-draft of the package and links to them
showed by mistake on my first message
> 4. Add more benchmark, from looking at that code it doesn't seem
> faster than what's out there. Do we really need another templating
> engine ? Have you looked at Sigma, Flexy, PHPLIB, Xipe ? Can you put
> benchmark up there
I did some benchmark and it is about three times faster than Template_IT in
reading and initializing blocks tree ...
benchmarks will be published when proposing package
OOP_Template has a different approach to templates, it somehow treats
template like a DOM, and it is extensible, indeed I have
simple implementations for five DOM resembling functions marked as 'todo' in
'block.php' - but I wanted to chose a co-author,
I prefer to work in team - many other DOM properties and functions can be
implemented easily.
> 5. Variables by references (in function declaration) are deprecated.
I know about 'allow_call_time_pass_reference = off' php.ini setting and the
problem it solves but if 'Variables by references
(in function declaration) are deprecated' too then what is the recommended
way to pass a reference of a variable in php,
particularly object variables in php4? do I miss something?
> 6. What's OOP_Template ? I see basically no OO, I'd suggest changing
> the whole name.
Well, what you read was the pre-draft of the package and I have chosen that
name to emphasize access to child blocks
and variables as properties of block objects
> 7. require_once doesn't require you to use ()
That is correct, but this language construct allow calling it like a
function so as not to confuse newbies like me
> 8. Cache ? Hrm...
I have not settled on this yet
> 9. New packages HAVE to make use of PEAR_Exception. At least you
> should be using PEAR_Error for your own good.
"New packages HAVE to make use of PEAR_Exception" can I find this in PEAR
developer guide or CS?
> 10. class block simply doesn't make sense and is not acceptable for
> any wide spread and large open source project. This naming will mostly
> conflict with some 3rd party package.
Well, it may make sense, blocks in OOP_Template parlance are like nodes in
DOM, but sure it may conflict with other packages,
but remember that was in a pre-draft and will be changed when proposing
package,
> A lot of things are missing and I am not sure you can really *upgrade*
> from IT to OOP_Template.
I successfully upgraded by replacing a single line of code!, it was a
template with about 32 blocks and 95 variables,
although in another upgrade I found that variable search when no current
block set in OOP_Template does not mimic Template_IT
behavior completely which may cause a bug
> Looking at the code there's an important feature missing that is glob
> variables.
I do not get this point, where do you suggest to use them?
> Why don't you simply contact the people of Template_IT and send them
> some patches to reorganize and optimize the code ? That'd be much
> cleaner.
I was going to contact them. indeed I uploaded pre-draft package files for
this purpose, I need them to clarify me about some
Template_IT behaviors but I do not think this package will fit in a 'patch'
or some suggestion for 'optimized code'
> In other words, good luck and I hope those points will help you grow
> up in your package development :)
Many thanks David
Regards
Bakir Hassani