View Single Post

  #8 (permalink)  
Old 11-28-2006
Michael Fesser
 
Posts: n/a
Default Re: php 5 classes: public, protected and private

..oO(Tony Marston)

>Intefaces are not necessary in PHP. Once you have defined a method it is a
>total waste to time to also define an interface. Interfaces are a "fix" in
>those languages as a means of dealing with optional arguments and statyic
>typing. PHP has ifferent ways of dealing with bth of these, therefore
>interfaces serve no useful purpose.


What's called an interface in PHP is a completely different mechanism
than what you described above.

>Wrong. Encapsulation means that the data and the functions which operate on
>that data are contained (encapsulated) within a single object. While the
>methods (functions) thenselves may be visible the code behind those methods
>(i.e. the implementaton behind those methods) is not. Encapslation is NOT
>about hiding information, it is about hiding the implementation. It is not
>necessary to use public/private/protected on any methods or properties.


Of course it is necessary.

>It
>does not add any functionality, it merely creates restrictions which often
>get in the way.


It prevents developers from doing things that shouldn't be done, for
example calling an internal method out of context. I don't want all my
methods being publicly available, simply in order to avoid errors and
unpredictable results.

Micha
Reply With Quote