Diferencia entre revisiones de «Usuario:ManuelRomero/micursos/INAEM2017/Avanzado/Tienda»

De WikiEducator
Saltar a: navegación, buscar
(Página creada con «Práctica Tienda {{vbar}}»)
 
Línea 1: Línea 1:
[[Usuario:ManuelRomero/NewPHP/B2T9/Smarty/practicaTienda|Práctica Tienda]] {{vbar}}
+
{{:Usuario:ManuelRomero/php/smarty/tienda1/nav}}
 +
 
 +
__NOTOC__
 +
===Enunciado original===
 +
*Para el enunciado visitamos la página donde se especifican los requisitos
 +
 
 +
http://es.wikieducator.org/Usuario:ManuelRomero/php/ejemploTienda
 +
===Especificaciones nuevas===
 +
*En este caso se trata de cumplir una serie de especifiaciones nuevas
 +
*Vamos a separar la lógica del negocio de la presentación
 +
*por  otro lado vamos a crear clases para la programación más estructurada y encapsulada
 +
*El resultado será un proyecto con muchos mas ficheros, pero mucho más organizado y especializado
 +
*Las especificaciones no funcionales de este ejercicio son:
 +
====CLASES====
 +
;BD.php
 +
:Clase con los métodos necesarios para acceder/consultar/validar en la base de datos. Por ejemplo
 +
 
 +
<source lang=php>
 +
validarCliente($usuario,$password)
 +
obtenerProducto($codigo)
 +
obtenerProductos ()
 +
</source>
 +
 
 +
;Producto.php
 +
:Clase para interactuar con un prodcuto concreto
 +
;CestaCompra.php
 +
:Acciones relacionadas con la cesta de la compra
 +
<source lang=php>
 +
nuevoArticulo()
 +
getProductos()
 +
getCoste()
 +
vaciar()
 +
</source>
 +
====PLANTILLAS====
 +
*Es la parte de interfaz de cliente
 +
*Normalmente cada parte php tendrá su plantilla, de modo que los ficheros php solo tienen código de control y de acceso y gestión de la base de datos
 +
;login.ptl
 +
;productos.tpl (listaProductos.tpl y productosCesta.tpl)
 +
;cesta.tpl
 +
====NEGOCIO o LÓGICA====
 +
*5 plantillas tendremos 5 ficheros php, aunque esto no tendría que ser necesariamente así
 +
;cesta.php
 +
;login.php
 +
;logoff.php
 +
;pagar.php
 +
;productos.php
 +
*La funcionalidad queda descrita en el enunciado
 +
 
 +
===Forma de proceder===
 +
*Vamos a hacer este ejercicio de forma incremental, realizando cada parte con el fin de ir asimilando bien los conceptos de plantillas y la separación de negocio o lógicay presentación.
 +
#Login ==> Nos identificaremos para acceder al sitio web
 +
#Porductos ==> Se visualizarán una lista de todos los productos
 +
#Logoff ==> Tendremos la opción de desconectarnos
 +
#Cesta ==> Aparecerá la posibilidad de ir incorporando nuevos elementos a la cesta
 +
#Opciones de Cesta ==> Podremos o pagar y terminar la app o bien vaciar la cesta de la compra
 +
*Cada una de estas cinco acciones deben de constituir una aplicación.

Revisión de 06:00 27 may 2018



Enunciado original

  • Para el enunciado visitamos la página donde se especifican los requisitos

http://es.wikieducator.org/Usuario:ManuelRomero/php/ejemploTienda

Especificaciones nuevas

  • En este caso se trata de cumplir una serie de especifiaciones nuevas
  • Vamos a separar la lógica del negocio de la presentación
  • por otro lado vamos a crear clases para la programación más estructurada y encapsulada
  • El resultado será un proyecto con muchos mas ficheros, pero mucho más organizado y especializado
  • Las especificaciones no funcionales de este ejercicio son:

CLASES

BD.php
Clase con los métodos necesarios para acceder/consultar/validar en la base de datos. Por ejemplo
validarCliente($usuario,$password)
obtenerProducto($codigo)
obtenerProductos ()
Producto.php
Clase para interactuar con un prodcuto concreto
CestaCompra.php
Acciones relacionadas con la cesta de la compra
nuevoArticulo()
getProductos()
getCoste()
vaciar()

PLANTILLAS

  • Es la parte de interfaz de cliente
  • Normalmente cada parte php tendrá su plantilla, de modo que los ficheros php solo tienen código de control y de acceso y gestión de la base de datos
login.ptl
productos.tpl (listaProductos.tpl y productosCesta.tpl)
cesta.tpl

NEGOCIO o LÓGICA

  • 5 plantillas tendremos 5 ficheros php, aunque esto no tendría que ser necesariamente así
cesta.php
login.php
logoff.php
pagar.php
productos.php
  • La funcionalidad queda descrita en el enunciado

Forma de proceder

  • Vamos a hacer este ejercicio de forma incremental, realizando cada parte con el fin de ir asimilando bien los conceptos de plantillas y la separación de negocio o lógicay presentación.
  1. Login ==> Nos identificaremos para acceder al sitio web
  2. Porductos ==> Se visualizarán una lista de todos los productos
  3. Logoff ==> Tendremos la opción de desconectarnos
  4. Cesta ==> Aparecerá la posibilidad de ir incorporando nuevos elementos a la cesta
  5. Opciones de Cesta ==> Podremos o pagar y terminar la app o bien vaciar la cesta de la compra
  • Cada una de estas cinco acciones deben de constituir una aplicación.