La Programación Orientado a Objetos Introducción a la Programación Orientado a Objetos (poo)



Descargar 10,32 Kb.
Fecha de conversión20.05.2017
Tamaño10,32 Kb.

La Programación Orientado a Objetos

Introducción a la Programación Orientado a Objetos (POO).

  • Significado de Orientado a Objetos
  • El significado de Orientado a Objetos nace como un conjunto de practicas que definen un estilo de programación.
  • Los seres humanos perciben el mundo como si estuviera formado por objetos: mesas, sillas, computadoras, coches, cuentas bancarias, etc. Donde conciente o inconscientemente tienden a organizarlos, clasificarlos, relacionarlos entre si, y hasta extraen las características más importantes dependiendo de lo que quieren hacer con ellas.

Las clases y los objetos están en todas partes

  • Vehículo
  • Animal
  • Figura

Clases

  • Concepto
  • Generalmente, una clase se puede definir como una descripción abstracta de un grupo de objetos, cada uno de los cuales tiene una serie de atributos, un estado específico y es capaz de realizar una serie de operaciones.
    • Atributos
    • Operaciones
    • Comportamiento
  • Lavadora
  • marca
  • modelo
  • capacidad...
  • Programar
  • PonerRopa
  • CerrarPuerta
  • Lavar

Objetos

  • Concepto:
  • Un objeto, no es más que una instancia de una clase. La instancia de una clase significa definir un objeto dándole valores a sus atributos y comportamiento, y realizando operaciones permitidas por la clase.
    • Valores de los atributos
    • Estado
    • Identidad
  • ID:Lavadora
  • marca=“Lapava”
  • capacidad=5
  • estado=enjuagando

Programación Orientada a Objetos

  • Definición:
  • La POO es un estilo de programación, donde todos los elementos que forman parte del problema se conciben como objetos, definiendo cuales son sus atributos y comportamiento, como se relacionan entre sí y como están organizadas.
  • Estructura Interna de un Objeto:
  • Atributos: Define el estado del objeto
  • Métodos: Define el comportamiento del objeto

Terminología de la POO

  • Clase
  • Objeto
  • Atributos
  • Métodos
  • Instancia
  • Abstracción
  • Encapsulamiento
  • Modularidad
  • Jerarquía
  • Generalización
  • Herencia
  • Asociación
  • Agregación
  • Polimorfismo
  • Constructor
  • Destructor
  • Miembro Público
  • Miembro Privado
  • Miembro Protegido

Terminología de la POO

  • Abstracción: La abstracción es la capacidad que permite representar las características esenciales de un objeto sin preocuparse de las restantes características (no esenciales).
  • Encapsulamiento: Es la propiedad que permite asegurar que los aspectos externos de un objeto se diferencie de sus detalles internos.

Terminología de la POO

  • Modularidad: La modularidad es la propiedad que permite dividir una aplicación en partes más pequeñas ( llamadas módulos ), cada una de las cuales debe ser tan independiente como sea posible de la aplicación en si y de las restantes partes.
  • Jerarquía: Es una clasificación u ordenación de las abstracciones.

Terminología de la POO

  • Generalización: Una clase que comparte atributos y métodos similares con otras clases se le llama superclase o clase padre. Cuando definimos una clase padre estamos generalizando.
  • Herencia: Del mismo modo, cuando definimos una clase a partir de una clase padre estamos creando una subclase. La definición de una subclase se le denomina herencia.

Terminología de la POO

  • Asociación: Una asociación es una relación semántica entre objetos. Cuando un objeto accede a los atributos y métodos de otro objeto estamos definiendo una asociación entre ellos.
  • Agregación: La agregación es una relación que define que un objeto es parte de otro objeto. Cuando definimos que un objeto tiene como atributo otro objeto decimos que es una agregación. A través de la agregación se definen objetos compuestos.

Terminología de la POO

  • Polimorfismo: Es el mecanismo de definir un mismo método en varios objetos de diferentes clases pero con distintas formas de implementación.
  • Constructor: Es un método que se invoca cuando un objeto es construido
  • Destructor: Es un método que se invoca cuando un objeto es destruido.

Terminología de la POO

  • Miembro Público: Atributo o método de una clase que puede ser accesado desde cualquier parte del programa.
  • Miembro Privado: Atributo o método de una clase que puede ser accesado solo dentro de esa clase.
  • Miembro Protegido: Atributo o método de una clase que puede ser accesado desde esa clase y sus clases heredadas.

Definición de clase en PHP

  • class NombreClase {
  • [public | private | protected ] $nombreVariable;
  • [public | private | protected ] function nombreMetodo($parametros) {
  • //Cuerpo de la función
  • }
  • [public | private | protected ] function __construct($parametros) {
  • //Cuerpo de la función
  • }
  • function __destruct() {
  • //Cuerpo de la función
  • }
  • }

La palabra reservada $this

  • class NombreClase {
  • [public | private | protected ] $nombreVariable;
  • [public | private | protected ] function nombreMetodo_1($parametros) {
  • //Cuerpo de la función;
  • }
  • [public | private | protected ] function nombreMetodo_2($parametros) {
  • $this->nombre_variable = valor;
  • $this->nombreMetodo_1 ($parametros);
  • }
  • }

Ejemplo

  • class clasePersona {
  • private $nombre;
  • private $anio_nacimento;
  • private $edad;
  • public $estado_civil;
  • public function __construct($nombre, $anio_nacimiento) {
  • $this->nombre = $nombre;
  • $this->anio_nacimiento = $anio_nacimiento;
  • }
  • private function calcular_edad($anio_actual) {
  • $edad = $anio_actual - $this->anio_nacimiento;
  • return $edad;
  • }
  • ….
  • }

Ejemplo

  • class Persona {
  • ….
  • public function obtener_nombre() {
  • return $this->nombre;
  • }
  • public function obtener_edad($anio_actual) {
  • $anio_actual = date(“Y”,mktime());
  • $this->edad = $this->calcular_edad($anio_actual);
  • return $this->edad;
  • }
  • }

Construcción y Manipulación de Objetos

  • Creación de un objeto
  • $objeto = new NombreClase($parametros);
  • Acceso a un atributo de una clase
  • $objeto->variable = valor;
  • Acceso a un metodo o función de una clase
  • $objeto->nombreMetodo($parametros);

Ejemplo

  • $persona1 = new clasePersona("Juan", 1983);
  • $persona1->estado_civil = "soltero“;
  • echo "1) El estado civil de la persona 1 es: ". $persona1->estado_civil . "

    “;

  • $persona2 = new clasePersona("Maria", 1987);
  • $persona2->estado_civil = "casada“;
  • echo "2) El estado civil de la persona 2 es: ". $persona2->estado_civil . "

    “;

  • echo "3) El nombre de la persona 1 es: ". $persona1->obtener_nombre(). "

    ";

  • echo "4) El nombre de la persona 2 es: ". $persona2->obtener_nombre(). "

    ";

  • echo "5) La edad de la persona 1 es: ". $persona1->obtener_edad(). "

    ";

  • echo "6) La edad de la persona 2 es: ". $persona2->obtener_edad(). "



    ";


La base de datos está protegida por derechos de autor ©absta.info 2016
enviar mensaje

    Página principal