9
Antonio Pineda Pérez. Luis Alberto Rojas Ramos Rolando Rodríguez Martínez

Lenguaje de programación orientada a objetos

Embed Size (px)

Citation preview

Page 1: Lenguaje de programación orientada a objetos

Antonio Pineda Pérez.

Luis Alberto Rojas Ramos

Rolando Rodríguez Martínez

Page 2: Lenguaje de programación orientada a objetos

• Un constructor es un método que se ejecuta

automáticamente cuando se crea un objeto de una

• clase. El método constructor tiene el mismo nombre que

la clase, no se puede indicar un valor de

• retorno (al menos en los lenguajes orientados a objetos

que conozco), tampoco devuelve algo.

• Pero si puede tomar cualquier número de

argumentos, esto es mediante la sobrecarga de

• métodos (la vemos más adelante).

Page 3: Lenguaje de programación orientada a objetos

• Suponiendo que existe una definición de una clase llamada"Persona", entonces para declarar y

• crear un objeto de esta clase se escribe la siguiente sentencia

• Persona alguien = new Persona();

• En este caso "alguien" es una variable cuyo tipo es "Persona"y se crea el objeto mediante el

• operador "new" invocando el constructor de la clase, en estecaso el constructor por defecto.

• Supongamos que se ha implementado un constructor quepermite asignar el nombre de la

• persona, entonces la sentencia podría ser:

• Persona alguien = new Persona("Juan");

• Ahora el constructor recibe un parámetro, consecuentementeno es el constructor por defecto

• (que no hace falta implementar). Cuidado en C# si seimplementa algún constructor y luego se

• necesita el constructor por defecto también debeimplementarse.

Page 4: Lenguaje de programación orientada a objetos

• Esta posibilidad que brindan ciertos los lenguajes (en

general todos los lenguajes orientados a

• objetos), la de tener un método que puede recibir

distintos parámetros en cantidad y tipo, es lo

• que se denomina sobrecarga de métodos.

Page 5: Lenguaje de programación orientada a objetos

• Tienen origen en Simula 67, un lenguaje diseñado para

hacer simulaciones, creado por Ole-Johan Dahl y Kristen

Nygaard del Centro de Cómputo Noruego en Oslo. . En

este centro, se trabajaba en simulaciones de naves, la

idea surgió al agrupar los diversos tipos de naves en

diversas clases de objetos, siendo responsable cada

clase de objetos de definir sus propios datos y

comportamientos.

Page 6: Lenguaje de programación orientada a objetos

• Fueron refinados más tarde

en Smalltalk, desarrollado en Simula en Xerox

PARC (cuya primera versión fue escrita

sobre Basic).

• La programación orientada a objetos se fue

convirtiendo en el estilo de programación

dominante a mediados de los años ochenta, en

gran parte debido a la influencia de C++, una

extensión del lenguaje de programación C.

• El Eiffel de Bertrand Meyer fue un temprano y

moderadamente acertado lenguaje con esos

objetivos pero ahora ha sido esencialmente

remplazado por Java, en gran parte debido a la

aparición de Internet, y a la implementación de la

máquina virtual de Java en la mayoría

de navegadores.

Page 7: Lenguaje de programación orientada a objetos

• Las características de orientación a

objetos fueron agregadas a muchos

lenguajes existentes durante ese

tiempo, incluyendo Ada, BASIC, Lisp, Pa

scal, entre otros.

Page 8: Lenguaje de programación orientada a objetos

• Permite acortar la distancia entre el software que

estamos desarrollando y la realidad, debido a que en la

POO se busca representar los objetos como existen en

la realidad.

• Además, gracias a la posibilidad de heredar atributos y

métodos de clases padres, lograremos reutilizar código

fuente, por lo que los tiempos de desarrollo bajarán.

Page 9: Lenguaje de programación orientada a objetos

• La POO también incorpora el concepto de

encapsulamiento, lo cual nos permite

proteger las propiedades de un objeto.

• La POO busca abstraer los objetos del

contexto, de forma de que se puedan

diferenciar los distintos objetos que están

interactuando y luego representar a cada uno

de manera separada.