Ajax: CSLA-- e integración con BBDD

1,147 views
1,048 views

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,147
On SlideShare
0
From Embeds
0
Number of Embeds
817
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Ajax: CSLA-- e integración con BBDD

  1. 1. CSLA-- e integración con BBDD
  2. 2. 2/19¿Qué es CSLA? Framework de desarrollo .NET Arquitectura eScalable de Componentes Lógicos ● Component Scalable Logical Architecture Mecanismo estandarizado de crear aplicaciones robustas orientadas a objetos Gira en torno a los llamados Objetos de Negocio (Business Objects) Algunas características clave Toda la lógica de objeto de negocio está encapsulada en una misma clase, que son los objetos de negocio Esqueleto de la parte de servidor. Está implementado siguiendo el patrón CSLA-- ● versión descafeinada de CSLA en php ● contiene algunos errores de limpieza del código
  3. 3. 3/19Esqueleto de CSLA--
  4. 4. 4/19dal.php Centraliza las operaciones de la base de datos
  5. 5. 5/19fechas.php Operaciones sobre fechas
  6. 6. 6/19getJugadoresConectados “Servicio web” que recupera qué jugadores están en este momento conectados
  7. 7. 7/19util.js Utilidades de javascript genéricas a toda mi aplicación
  8. 8. 8/19jugador.php Primer objeto de negocio Regiones. Una clase de negocio está estructura en las siguientes: 1. Referencias externas 2. Propiedades 3. Constructor 4. Getters y Setters de las propiedades 5. Métodos de sobrecarga del objeto (ToString, IsEmpy, IsValid, IsNew,...) 6. Helpers o métodos auxiliares 7. Métodos públicos 8. Métodos de acceso a datos 9. Procedimientos almacenados
  9. 9. 9/19Región 1: Referencias externas Aquí van los include a otros ficheros que utiliza nuestro objeto de negocio
  10. 10. 10/19Región 2: Atributos Son los atributos/campos propios del objeto Deben ser declarados como privados Separemos los propios de los genéricos (isValid, isEmpty, isNew,...)
  11. 11. 11/19Región 3: Constructor Constructor del objeto de negocio Aquí colocamos la inicialización de sus campos
  12. 12. 12/19Región 4: getters/setters Métodos que manejan los campos/atributos de nuestro objeto
  13. 13. 13/19Región 5: Sobrecarga de object Métodos que deben contener TODOS los objetos de negocio y que personalizamos para uno en concreto ● ObtenerReglasRotas ● IsValid ● IsNew ● IsEmpty
  14. 14. 14/19Región 6: Helpers o métodos auxiliares Métodos auxiliares que me ayudan a realizar una función que hace el objeto
  15. 15. 15/19Región 7: Métodos públicos Métodos que ofrece el objeto hacia el exterior Visibles desde fuera de la clase
  16. 16. 16/19Región 8: Métodos de acceso a datos Guardar ● Guarda el objeto en base de datos ● Distingue entre si es un objeto nuevo (insert) o se es uno ya existente (update) ● Utiliza isNew para hacer esta distinción Obtener ● Método por defecto de recuperar un objeto desde bd ● El método por defecto recupera por Id del objeto Obtener_PorXXX ● Otras formas de recuperar un objeto de base de datos CargarRecordset ● Carga los atributos del objeto a partir de una row de bd Obtener_desdeLinea ● Se utiliza para cargar colecciones (listas) de objetos
  17. 17. 17/19Región 9: Procedimientos almacenados Generación de la SQL del motor de BBDD que hallamos escogido para nuestra solución Devuelven la sql generada Estos métodos tienen la siguiente notación: ● XXX_P_<nombre del sp> ● Ejemplo: – CRN_P_CrearJugador – CRN_P_ActualizarJugador – CRN_P_ObtenerJugador_PorId – ...
  18. 18. 18/19jugadoresList.php Colección de objetos de negocio Su responsabilidad es manejar listas de jugadores Internamente contiene un array que almacena objetos de la clase Jugador Acceso a datos ● Obtener. Método por defecto que recupera todos los jugadores ● ObtenerConectados. Método que recupera sólo aquellos jugadores que están conectados
  19. 19. 19/19Base de datos: cronoDB Crearemos una base de datos mySQL que se llamará cronoDB En principio tendrá una única tabla que se llamará CRN_Jugadores Esta tabla almacena toda la información asociada a los jugadores

×