allow the programmer to break up their code into smaller, more manageable, chunks which can be called by name and which may or may not return a value.
The purpose of these blocks is to decrease the complexity of a piece of code, and allow the programmer to reuse specific functions, rather than constantly repeating the same block of code performing a specific operation.
Procedures and Functions
Allow define the name, the information to be passed to (and returned from) the function, as well as the code that is executed between the start and end block delimiters.
Methods
A method is a special kind of user defined code block, which is used in Object Oriented techniques.