What is the difference between a method and a function? Is it that a method returns a value and a function doesn't?
Method is actually a function used in the context of a class/object.
When you create a function outside of a class/object, you can call it a function but when you create a function inside a class, you can call it a method.
class foo { public function bar() { // a method ........ } }
function bar() { // a function not part of an object }
So an object can have methods (functions) and properties (variables).
The words are not opposed to each other but rather describes two possible aspects of a subroutine. An attempt to define the words follows:
Subroutine: A set of instructions that can be used several times in the same program.
Function: A subroutine that returns a value. Derived from functions in mathematics (wikipedia).
Method: A subroutine that belongs to an object or a class. Could be a function.
I tend to use the word "function" for every subroutine that has no side effects but returns one clear value and the word "method" for every subroutine that has a side effect.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With