Usuario:ManuelRomero/DAW/15 16/Distancia/tutorias
De WikiEducator
< Usuario:ManuelRomero
Revisión a fecha de 06:06 19 dic 2015; ManuelRomero (Discusión | contribuciones)
|
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
class Fecha{ .... }
- Guardar cada clase en un fichero con su propio nombre
Fecha.cpp
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
class Fecha{ private $dia; private $mes; private $year; }
- 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
métodos mágicio son métodos que se ejecutan sin que los invoquemos cuando ocurre determinadas cicunstancias |
__construct(){ }
- 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 $
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 ..... }
- Concepto de variables/métodos estáticos y constantes
- Usar self::... Para acceder a él
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 } }
- 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