La función es una combinación de instrucciones juntas para lograr algún resultado. Puede tomar argumentos y devolver el resultado. Si una función no devuelve un resultado, generalmente se llama un procedimiento. Ejemplos:
function drawLine(x1, y1, x2, y2):
// draws a line using Bresenham's algorithm from x1,y1 to x2,y2.
// doesn't return anything
function <number> add(a, b):
// adds a to b and returns the result as a number
return a + b
Las funciones son para hacer un trabajo particular. Por ejemplo, cuando necesita dibujar un polígono de 3 líneas como parte de una imagen vectorial, es más conveniente llamar al drawLine
tres veces que poner toda la rutina para el dibujo de línea en línea.
Los métodos ("funciones de miembro") son similares a las funciones, pertenecen a clases u objetos y generalmente expresan los verbos de los objetos/clase. Por ejemplo, un objeto del tipo Window
generalmente tendría los métodos open
y close
que realizan operaciones correspondientes al objeto al que pertenecen.
Propiedades son como en el lenguaje cotidiano y técnicamente son campos de objetos/clases con getter dedicada rutinas/setter (que pueden ser considerados como los métodos. Hay lenguas que no tienen propiedades y este comportamiento se logra utilizando una campos privados + métodos get/set).
gracias ... las respuestas han sido muy útiles ... – Hans