Diferencia entre revisiones de «Método (informática)»
Contenido eliminado Contenido añadido
Sin resumen de edición |
m Revertidos los cambios de 189.129.194.81 (disc.) a la última edición de 201.227.34.238 |
||
Línea 1:
En la [[programación orientada a objetos]], un '''método'''
Algunos [[lenguajes de programación]] asumen que un método debe de mantener el [[invariante]] del objeto al que está asociado asumiendo también que éste es válido cuando el método es invocado. En lenguajes compilados dinámicamente, los métodos pueden ser [[objetos de primera clase]], y en este caso se puede [[compilador|compilar]] un método sin asociarse a ninguna clase en particular, y luego asociar el vínculo o contrato entre el objeto y el método en [[tiempo de ejecución]].
En cambio en lenguajes no compilados dinámicamente o tipados estáticamente, se acude a [[precondición|precondiciones]] para regular los parámetros del método y [[poscondición|postcondiciones]] para regular su salida (en caso de tenerla). Si alguna de las precondiciones o postcondiciones es falsa el método genera una [[manejo de excepciones|excepción]]. Si el estado del objeto no satisface la invariante de su clase al comenzar o finalizar un método, se considera que el programa tiene un [[error de programación]].
La diferencia entre un [[procedimiento]] (generalmente llamado ''función'' si devuelve un valor) y un método es que éste último, al estar asociado con un objeto o clase en particular, puede acceder y modificar los datos privados del objeto correspondiente de forma tal que sea consistente con el comportamiento deseado para el mismo. Así, es recomendable entender a un método no como una secuencia de instrucciones sino como la forma en que el objeto es útil (el método para hacer su trabajo). Por lo tanto, podemos considerar al método como el pedido a un objeto para que realice una tarea determinada o como la vía para enviar un mensaje al objeto y que éste reaccione acorde a dicho mensaje.
== Tipos de métodos ==
|