Daevid Vincent wrote:
> I've had at least three job interviews in the past two weeks, and each one 
> has asked me this rather "text book academic" question regarding the 
> difference between "abstract" vs. "interface". I've been coding for nearly 20 
> years, and at least 10 of those have been in PHP and another 3 in J++. I have 
> NEVER used either of these concepts/keywords? Am I missing some exciting 
> tool/feature? 
> 
> All the reading I've done tonight just reinforces my thoughts that these are, 
> for the most part useless. Unless you're building some HUGE project that has 
> an API and there are teams of people that are going to extend your framework, 
> then what good are they? 
> 
> This DB wrapper is the closest to an answer I've come across. 
> 
> http://www.developer.com/lang/php/article.php/3604111
> 
> But that still doesn't explain the difference between abstract and interface, 
> it only illustrates the possible need for a 'template' so others know which 
> methods they must implement. In my mind, it just seems like overhead, as if 
> you were going to write another DB wrapper using this one, then wouldn't you 
> just look at their code (example) and implement those same methods anyways? I 
> mean, you'd have to look at the abstract/interface to find out the required 
> methods, so why not skip that and just look at the actual class instead?
> 
> Here are two more pages that still don't seem to answer why there are both 
> and when you'd use one over the other?
> 
> http://www.hiteshagrawal.com/php/oops-in-php5/oops-in-php5-tutorial-abstract-class
> http://www.hiteshagrawal.com/php/oops-in-php5/oops-in-php5-using-interface
> 
> And then this completely absurd over the top use of them for a HelloWorld 
> example, which seems to use them just for the sake of using them...
> 
> http://marc.info/?l=php-general&m=115950654928311&w=2
> 
> Lastly was this page:
> 
> http://www.phpro.org/tutorials/Object-Oriented-Programming-with-PHP.html
> 
> Which seems to only really provide a "hack" (printerFax) to circumvent the 
> lack of multiple inheritance.
> 
> 
> Can someone clear this up for me?

Look at this url:
http://www.codeproject.com/KB/cs/abstractsvsinterfaces.aspx

    Iñigo

> Daevid.
> http://daevid.com
> 
> 


-- 
--------
Iñigo Medina García                     
Librería Díaz de Santos         Madrid (Spain)
[EMAIL PROTECTED]               [EMAIL PROTECTED]

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to