Diferencia entre revisiones de «Usuario:ManuelRomero/DAW/15 16/Distancia/tutorias»

De WikiEducator
Saltar a: navegación, buscar
(Página creada con « {{:Usuario:ManuelRomero/DAW/distancia/tutorias/nav}} __NOTOC__ <br/> {{Objetivos| ;Se han tratado el tema de programación orientado a objetos #Concepto básicos #Caracte...»)
 
(Página reemplazada por «=Tutorias DWES curso 2014 - 2015= * tutoria_15_dic(3)»)
Línea 1: Línea 1:
 
+
=Tutorias DWES curso 2014 - 2015=
{{:Usuario:ManuelRomero/DAW/distancia/tutorias/nav}}
+
*[[ManuelRomero/DAW/distancia/tutorias/Tutoria2| tutoria_15_dic(3)]]
__NOTOC__
+
 
+
<br/>
+
{{Objetivos|
+
;Se han tratado el tema de programación orientado a objetos
+
#Concepto básicos
+
#Características de la programación orientada a objetos
+
}}
+
 
+
==Programación Orientada a objetos==
+
*Ver la programación orientada a objetos como una manera más cómoda de programar
+
*Creamos componentes software, luego los usamos
+
*Usamos la abstracción es sus dos visiones:
+
#Al crear los componentes software me abstraigo de lo general (de su uso), y me centro en el detalle (en su funcionamiento).
+
#Al usarlo en el programa principal me abstraigo del detalle y me centro en su uso
+
===Consejos===
+
*Los nombres de las clases la primera letra en mayúscula
+
<source lang=php>
+
class Fecha{
+
....
+
}
+
</source>
+
*Guardar cada clase en un fichero con su propio nombre
+
<source lang=php>
+
Fecha.cpp
+
</source>
+
===PHP como lenguaje orientado a objetos===
+
*PHP es un lenguaje un poco peculiar como lenguaje orientado a objetos
+
*Bajo mi punto de vista hay dos temas importantes
+
#No tiene sobrecarga tal cual la conocemos
+
#Tiene métodos mágicos que dan versatilidad aunque al principio despistan
+
*Atributos y métodos por  defecto publicos
+
<source lang=php>
+
class Fecha{
+
  private $dia;
+
  private $mes;
+
  private $year;
+
}
+
</source>
+
;Constructor
+
*Podemos poner un método con el nombre de la clase y ese se ejecutaría al instanciar el objeto
+
*Tenemos un método mágico
+
{{Definicion|'''''métodos mágicio'''  son métodos que se ejecutan sin que los invoquemos cuando ocurre determinadas cicunstancias}}
+
<source lang=php>
+
__construct(){
+
}
+
</source>
+
*Si tenemos un método con el nombre de la clase y el método '''''__construct''''' implementado, solo se ejecutará el método '''''__construct'''''
+
 
+
;Sobrecarga
+
*La podemos simular de dos maneras
+
#Pasando varios atributos con valores por defecto
+
#usanto el método mágico __call($nameFuncion, $atributos)
+
;Ver el wiki donde está explicada esta parte
+
;Otros aspectos en los que se han incidido
+
*Recordad que para acceder a un atributo hay que usar obligatoriamente la seudovariable $this, en este caso el atributo no tiene que llevar $
+
<source lang=php>
+
class Fecha{
+
  private $dia;
+
  private $mes;
+
  private $year;
+
  public function __construct( $d, $m, $y){
+
    $this->dia = $d; //mirar bien que dia no lleva $
+
    $mes = $m; //En este caso $mes es una variable local al método no tiene nada que ver con el atributo $mes de la clase
+
.....
+
 
+
  }
+
 
+
 
+
 
+
</source>
+
 
+
*Concepto de variables/métodos estáticos y constantes
+
*Usar self::... Para acceder a él
+
<source lang=php>
+
class miClase{
+
  const IVA; //Constante iva, así se declaran las constantes el oop de php
+
  public  static $cuentaObjetos; // es un atributo estático
+
  ....
+
  public function __contruct(){
+
      self::$cuentaObjetos ++;//Así accedo a un elemento estático
+
      echo "Valor de la constante " . self::IVA: //Así accedo a una constante
+
  }
+
 
+
 
+
 
+
}
+
</source>
+
 
+
*Luego hicimos un pequeño ejemplo de una calculadora
+
*El enunciado es la práctica del wiki
+
*Os dejaré el código para que lo analicéis
+

Revisión de 06:07 19 dic 2015

Tutorias DWES curso 2014 - 2015