Diferencia entre revisiones de «Plantilla:PHP/ConceptosBasicos»

De WikiEducator
Saltar a: navegación, buscar
(Conceptos básicos de OOP)
Línea 1: Línea 1:
 
===Conceptos básicos de OOP===
 
===Conceptos básicos de OOP===
 +
====OOP Vs Programación estructurada====
 
*En programación ''el paradigma imperativo'' está basado en '''funciones y datos'''.  
 
*En programación ''el paradigma imperativo'' está basado en '''funciones y datos'''.  
 
*''El paradigma orientado a objetos'' está basado en '''Objetos'''.
 
*''El paradigma orientado a objetos'' está basado en '''Objetos'''.
Línea 29: Línea 30:
 
[[Archivo:UNIVERSO_DISCUROS_OBJETOS.png|700px]]
 
[[Archivo:UNIVERSO_DISCUROS_OBJETOS.png|700px]]
 
}}
 
}}
 
+
{{MRM_Ejemplo|Title=Compartiva con la aplicación de master mind|
 +
[[Archivo=comparativa_oo_estructurado.png|center]]
 +
}}
  
 
<!--1 -->
 
<!--1 -->

Revisión de 07:34 2 mar 2021

Conceptos básicos de OOP

OOP Vs Programación estructurada

  • En programación el paradigma imperativo está basado en funciones y datos.
  • El paradigma orientado a objetos está basado en Objetos.
  • Los objetos son el elemento básico y central de la programación orientada a objetos (OOP) o (POO).
  • Podemos hablar de universo de discurso como el sistema que queremos automatizar por software
  • Un Objeto es una entidad (concreta o abstracta) que presenta una actividad en un entorno concreto, en un determinado universo de discurso.




Icon define.gif
Definición
Objeto Cada elemento activo que identificamos dentro de un determinado universo de discurso.
Serán nuestros componentes software para ensamblar nuestros programas




Icon casestudy.gif
Ejemplo
En un banco hay cuentas bancarias (objeto)
Las cuentas bancarias se identifican con un número y un titular (nombre, apellido y dni) atributos
Las cuentas se pueden dar de alta, de baja, hacer extracciones e ingresos y transferencias... métodos




Icon casestudy.gif
Ejemplo
En la gestión de una empresa, a nivel de información tenemos
  • Empleados
  • Nóminas
  • Base de datos
  • Proveedores
  • Facturas
  • Pedidos

UNIVERSO DISCUROS OBJETOS.png




Icon casestudy.gif
Compartiva con la aplicación de master mind

center





  • Puede parecer una forma más complicada de programar, pero es una manera de dividir la naturaleza del problema que estamos estudiando en unidades independientes que pueden interactuar entre ellas.
  • Cada una de ellas va a tener una identidad propia asignando valores a sus atributos
  • Cada una de ellas va a tener un comportamiento concreto que va a ser lo que sabe hacer para que los demás o el programa principal lo utilice


Elementos en la programación orientada a objetos

  • De lo dicho anteriormente deducimos que tenemos dos elementos:
  1. Los atributos o características de la clase.
  2. Los métodos o comportamiento de la clase .
  • Para crear objetos, previamente hay que definir su estructura.
  • La definición de la estructura (atributos y métodos ) de componentes software se llama clase


Icon define.gif
Clase
La descripción y especificación de componentes software para su posterior uso en los programas
  • Una clase es la estructura de un tipo concreto de objetos.
  • Los objetos son elementos concretos en mi sistema. Instancias de la clase en memoria para ser usadas por un programa



Elementos de la POO


Icon define.gif
Atributo
  • Son las características o datos de un objeto.
  • Sus valores nos da el estado de un objeto en un momento dado.
  • Normalmente al instanciar un objeto en memoria lo primero que hacemos es dar valores a sus atributos
  • Es recomendado que los atributos estén encapsulados solo al objeto (privados)




Elementos de la POO


Icon define.gif
Métodos
  • Especifican el comportamiento de los objetos.
  • Permiten modificar y conocer el estado de un objetos (métodos getter and setter).
  • Permiten que un objeto haga cosas en el sistema (comunicación entre objetos) .
  • Los métodos son las acciones que el objeto sabe hacer, servicios que ofrece
  • También son las acciones internas para facilitar las acciones al objeto


Clase.png