Data Model & Singleton pattern

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    1 Favorite

    Data Model & Singleton pattern - Presentation Transcript

    1. Data Model Singleton pattern Ricardo Poblete Jara Flex, Actionscript3
    2. Agenda
      • Razones
      • Objetivos
      • MVC . Capa de vista y de modelo.
      • Data Model
      • Patrón Singleton
      • Práctica
    3. Razones
    4. Razones
      • ¿Por qué?
        • Al particionar la aplicaciones en componentes, se hace mas difícil comunicar información entre estos.
        • Cada componente busca sus propios datos.
          • Implicando nuevas conexiones
          • En un módulo, un set de componentes están asociados a un conjunto de datos particular.
      • ¿Quiénes participan?
        • Componentes y el modelo de datos
    5. Objetivos
    6. Objetivos
      • General
        • Conceptualizar y Comprender el modelo de datos en AS3 para generar componentes de alta comunicación.
      • Específico
        • Capacidad de conceptualizar el modelo de datos
        • Fabricar propios modelos
        • Seguir incorporando el concepto MVC (Modelo, Vista, Controlador) dentro de la aplicación.
    7. Model View Controller (I) Capa de vista
    8. Model View Controller (I) Capa de Modelo
    9. Modelo de datos (Model)
    10. Data Model
      • Concentra la información de un módulo de la aplicación.
      • Mantiene el estado del cliente
      • Almacena los Value Objects
    11. Value Object
      • Representan “Objetos” conceptuales del dominio.
      • Pueden representar: Persona, Auto, Item, Cuenta corriente, Dirección, etc. (en singular)
      • Físicamente es una clase que administra datos.
    12. Value Object (II)
      • Ejemplo
              • package model
              • {
              • [Bindable]
              • public class ContactoVO
              • {
              • public var nombre:String;
              • public var email:String;
              • public var telefono:String;
              • public var descripcion:String;
              • }
              • }
    13. Data Model (II)
      • El modelo apoya con la información que muestran las interfaces (Vistas)
      • Físicamente es una clase.
      • Principalmente tiene propiedades donde almacena los datos.
        • Cuentas Corrientes (un array de cuenta corriente VO)
        • Direcciones (un array de direcciones de alguien)
        • Usuario conectado
        • Estado visible de la aplicacción.
    14. Data Model (III)
      • Ejemplo
              • package model
              • {
              • import mx.collections.ArrayCollection;
              • [Bindable]
              • public class ModeloEjemplo
              • {
              • public var fechaActual:String;
              • public var Contactos:ArrayCollection;
              • public var contactoSeleccionado:ContactoVO;
              • public var BandejaSalida:ArrayCollection;
              • public var correoSeleccionado:CorreoVO;
              • }
              • }
    15. Singleton
    16. Singleton
      • El patrón de diseño singleton (instancia única) está diseñado para restringir la creación de objetos pertenecientes a una clase.
      • Su intención consiste en garantizar que una clase sólo tenga una instancia y proporcionar un punto de acceso global a ella.
      • Es útil en el modelo de datos, ya que este centraliza los datos de nuestra aplicación
      • Tiene desventajas, no abusar
    17. Singleton (II)
      • Ejemplo
          • // Singleton class:
          • package model{
          • public class SingletonClass {
          • private static var instance:SingletonClass;
          • private static var allowInstantiation:Boolean;
          • public static function getInstance():SingletonClass {
          • if (instance == null) {
          • allowInstantiation = true;
          • instance = new SingletonClass();
          • allowInstantiation = false;
          • }
          • return instance;
          • }
          • public function SingletonClass():void {
          • if (!allowInstantiation) {
          • throw new Error("Error: Instantiation failed: Use SingletonClass.getInstance() instead of new.");
          • }
          • }
          • }
          • }
    18. Práctica
    19. Práctica - Ejercicio
        • Funcionalidad
          • Fabricar una mini aplicación que permita tener una lista de contactos, donde almacene (nombre, email telefono y descripcion), que permita sólo agregar nuevos.
          • Además les puedo enviar emails, por lo que seleccionando un contacto de la lista puedo enviarle un correo y finalmente pueda ver mi bandeja de salida los mensaje que he enviado.
    20. Práctica (II)
      • Generar los siguientes elementos
    21. DetalleContacto.mxml
    22. ListaContactos.mxml
    23. Agregando un nuevo contacto
    24. Main.mxml
    25. EnvioCorreo.mxml
    26. BandejaSalida.mxml
    27. Enviando un correo
    28. Correo enviado
    29. FIN
    SlideShare Zeitgeist 2009

    + ripobletripoblet Nominate

    custom

    144 views, 1 favs, 0 embeds more stats

    Presenta qué es y las ventajas de los patrones de more

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 144
      • 144 on SlideShare
      • 0 from embeds
    • Comments 0
    • Favorites 1
    • Downloads 0
    Most viewed embeds

    more

    All embeds

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories