Re: PHP 4.0 Bug #5343: a way of implementing class methods

From: Date: Sun, 02 Jul 2000 15:58:20 +0000
Subject: Re: PHP 4.0 Bug #5343: a way of implementing class methods
References: 1  Groups: php.dev 
Request: Send a blank email to php-dev+get-23224@lists.php.net to get a copy of this message
imagine.... file A: class parser {} file B: collection of object classes for class parser: class structure_generic class structure_open_structure_a extends structure_generic class structure_open_structure_b extends structure_generic class structure_open_structure_c extends structure_generic class structure_open_structure_d extends structure_generic class structure_close_structure_a extends structure_generic class structure_close_structure_b extends structure_generic class structure_close_structure_c extends structure_generic class structure_close_structure_d extends structure_generic Class open_structure_a,class_structure_b use the same functions Class open_structure_c,class_structure_d use the same functions Class close_structure_a,close_structure_b use the same functions Class close_structure_c,close_structure_d use the same functions Current way to implement: class functionality_type1 extends structure_generic class structure_open_structure_a extends functionality_type1 class structure_open_structure_b extends functionality_type1 class functionality_type2 extends structure_generic class structure_open_structure_c extends functionality_type2 class structure_open_structure_d extends functionality_type2 class functionality_type3 extends structure_generic class structure_close_structure_a extends functionality_type3 class structure_close_structure_b extends functionality_type3 class functionality_type4 extends structure_generic class structure_close_structure_c extends functionality_type4 class structure_close_structure_d extends functionality_type5 And notice, this is the *most simple* form of shared functionality (1 level), imagine deeper sharing class functionality_type1 extends functionality_type2 class functionality_type3 extends functionality_type2 class functionality_type4 extends functionality_type3 class super_structure extends functionality_type4 I´ve noticed a significant performance drain using this way to implement function sharing... regards Stanislav Malyshev wrote:
w>> I'd welcome this kind of functionality. w>> It's sometimes needed to equip classes with some standard methods and w>> making class X a subclass of Y of Z of A of B is not the fine way ;) Why you need this? PHP is not a compiled language, so I don't see why you need to have 2 files for a class. For C++ this makes sense, since you usually get class as a library, so you can't use it as class definition, you need source interface definition - .h. But I do not see cause for this in PHP.
-- o----------0-¬---------O-·---¬----o---®-----o o O ° . | http://www.kiffen.de | pRoteçt y0ur bRaín |0 O ° ¤ ° · 0°·³°²'²³-¹'³´³°^°³~³²³°'³²²¨³²^³¹³²°²³`³º³°Þ ° o © ° . · | psychedelic experience | gott@kiffen.de | O ° o ° o-¬--o--0-----©-·--O-----o-----0-¤----------o 0 ° · ° . ¤ ·

« previous php.dev (#23224) next »