At 12:32 09.04.2002, Pierre-Alain Joye wrote: > > Would it be so bad allowing closed source? >I really do not care, but I really appreciate and use only ( for my dev ) >open sources products, but that is not the question, and was a joke ==> ;) >:)) > > > I think having one of MI, aggregation and interfaces is essential for OO > > modelling. >I m not a professionnal of OO design, but do not see how interfaces in php >will help us during the design phases. >Where do you use interfaces during the modelling phase ? If you use pear::db >and an interface is available, how do you will use it ? ( no irony in these >questions, just interested). > >pa
Lets A be a generic interface to do some work. Then A is an abstract object. Lets B be a specific implementation on some other stuff. And let assume that B has to be used for the same work as A was designed for. Then we could have C be totally different from B but able to take its place according to A. Ok. Example: class Collection is a class that allows collection o objects. class A and class B are some classes. Now Collection must store objects in general and it is not able to communicate with the objects it stores. Now implementing sorted lists: Instance Item is an interface that allows comparison of to Items in Collection by a method. interface Item { function ItemContent() { ... } } class Collection { ... function Sort() { ... $diff = $a->ItemContent() - $b->ItemContent(); ... } function Insert($o) { if ( !$o is Item) { echo "Error: O is not Item"; } else { insert.... } } } class A implements Item { var $a; function ItemContent() { return $this->a; } } class B implements Item { var $b; function ItemContent() { return $this->b; } } helped? marcus -- PHP Development Mailing List <http://www.php.net/> To unsubscribe, visit: http://www.php.net/unsub.php