Hello Greg,

  this whole thread unfortunatley shows that nobody is reading our
provided documentation, see excerpt from CODING_STANDARDS:

[7] Classes should be given descriptive names. Avoid using abbreviations where
    possible. Each word in the class name should start with a capital letter, 
    without underscore delimiters (CampelCaps starting with a capital letter). 
    The class name should be prefixed with the name of the 'parent set' (e.g. 
    the name of the extension).

    Good:
    'Curl'
    'FooBar'

    Bad:
    'foobar'
    'foo_bar'

I changed that long ago....actuall more than half a year ago. And the
examples are there since over two years:

[EMAIL PROTECTED] /usr/src/PHP_5_2 $ cvs annotate CODING_STANDARDS|grep -A14 
'\[7\] Cla'

Annotations for CODING_STANDARDS
***************
1.33         (helly    26-Nov-05): [7] Classes should be given descriptive 
names. Avoid using abbreviations where
1.33         (helly    26-Nov-05):     possible. Each word in the class name 
should start with a capital letter,
1.33         (helly    26-Nov-05):     without underscore delimiters 
(CampelCaps starting with a capital letter).
1.33         (helly    26-Nov-05):     The class name should be prefixed with 
the name of the 'parent set' (e.g.
1.33         (helly    26-Nov-05):     the name of the extension).
1.26         (derick   23-May-03):
1.26         (derick   23-May-03):     Good:
1.26         (derick   23-May-03):     'Curl'
1.33         (helly    26-Nov-05):     'FooBar'
1.26         (derick   23-May-03):
1.26         (derick   23-May-03):     Bad:
1.26         (derick   23-May-03):     'foobar'
1.26         (derick   23-May-03):     'foo_bar'
1.35         (helly    22-Dec-05):
1.1          (zeev     07-Apr-99): Syntax and indentation

If you have any further suggestion i'd be happy to discuss it and place
it in the file as well.

best regards
marcus

Wednesday, July 19, 2006, 9:57:34 PM, you wrote:

> Steph Fox wrote:
>>> Please, just make a clear decision, stick to it, and tell us what it is,
>>> we will adapt our coding standards to whatever is decided.
>> 
>> 
>>> Either:
>>>
>>> 1) internals declares all top-level classes, use an unprefixed name (no
>>> _) at your own risk
>>> 2) internals grabs PHP or Php as a prefix.
>> 
>> 
>> I think both. I think top-level classes should belong to PHP _anyway_
>> and PHP 6, if it indeed brings namespacing for classes, should take that
>> option and use it.  You have to understand that I'm taking a very
>> long-term view here; I see PHP 5 as a transitional period, and PHP 4 as
>> something that needs to be supported _as far as we can and for as long
>> as we can_.
>> 
>>> Choose.
>> 
>> 
>> Why do you think there has to be a choice made there? What else should
>> be using PHP as a namespace prefix?

> Perhaps I'm not being clear.  PHP has done an excellent job of defining
> "don't touch this" areas before.  For instance:

> __magic methods are off limits.

> The reason the "Date" dilemma has started is because php has not defined
> a way that internal classes should be named.  After Marcus's email, I
> see that this will be impossible, but perhaps it would work to say this:

> "PHP will not use an underscore _ in any future internal class names.
> Userspace classes with no underscores may conflict with an internal
> class.  Exceptions include mysqli blah blah blah"

> Would this work for everyone?

> PEAR is all about underscores in class names, especially since all new
> classes since about 2003 are required to have them.  Take a peek, the
> classes that don't have them are more than 4 years old (DB, MDB, Date,
> PEAR, etc.)

> As long as we know this is a rule, we can solve the Date dilemma quite
> easily.  For instance, a 3-line solution:

> in file "PEAR/Date.php":
> class PEAR_Date {
> // ..put the code here from the old Date class
> }
> in file "Date.php":
> require_once 'PEAR/Date.php';
> class Date extends PEAR_Date {
> }

> This way, users who wish to use an older PHP version need not change
> code, and new users can use the PEAR_Date class.  The point is, you
> *must* make a decision so we can honor it.  If you simply claim all
> possible future class names, it makes it difficult to create userspace
> classes to fill in the holes in PHP that will work in multiple PHP versions.

Best regards,
 Marcus

-- 
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to