Mir passiert es häufig, dass ich ungewollt die Begriffe "Operation" und "Methode" durcheinander werfe.
Da anscheinend viele Entwickler den Unterschied zwischen den beiden Begrifflichkeiten gar nicht kennen, möchte ich ihn hier kurz erklären:
Operation
Eine Operation ist die abstrakte Definition einer Funktionalität. Operationen sind somit nur der Kopf, nicht aber der Rumpf einer "Funktion" (ich verwende den Begriff hier um neutral zu bleiben).
Beispiel (gilt für alle OO-Sprachen, hier in PHP):
interface Example {
/**
* Executes an example function.
**/
public function execute();
}
?>
Interfaces können somit immer nur Operationen enthalten, da sie die konkrete Implementierung der Operation (durch eine Methode) den konkreten Klassen überlassen.
Methode
Eine Methode ist die konkrete Implementierung einer Operation und besitzt somit einen Methodenrumpf.
Beispiel:
class ExampleClass implements Example {
/**
* @see Example::execute()
**/
public function execute(){
echo("Execution successful! Have a nice day :)");
}
}
?>
Ich hoffe, dass ich euch mit dieser Definition etwas helfen konnte.