WCSF – Parte 1: Diseño de la aplicación

En este post diseñaremos la aplicación que deseamos construir usando el Web Client Software Factory que explicamos en la entrada anterior.

La aplicación que queremos desarrollar es una página ASP.NET que permita ingresar y mostrar un lista de comentarios, el wireframe de cómo queremos que se vea nuestra aplicación es el siguiente:

04 wireframe

Con esto nos damos una buena idea de lo que queremos lograr, es algo sencillo que nos servirá para nuestro ejemplo. Una vez que tenemos la idea inicial empezamos con crear una base de datos para guardar los comentarios, a continuación el script:

CREATE DATABASE CommentsWebClient
Go

USE CommentsWebClient
GO

CREATE TABLE Comments (
    [Id]        INT IDENTITY (1,1) PRIMARY KEY NOT NULL,
    Name        VARCHAR(100) NOT NULL,
    Place        VARCHAR(100) NOT NULL,
    [Text]        VARCHAR(250) NOT NULL,
    CreatedOn    DATETIME DEFAULT (GETDATE()) NOT NULL
)
GO

CREATE PROCEDURE GetComments
AS
    SELECT [Id], Name, Place, [Text], CreatedOn
    FROM Comments
    ORDER BY CreatedOn DESC
GO

CREATE PROCEDURE AddComment (
    @name    VARCHAR(100),
    @place    VARCHAR(100),
    @text    VARCHAR(250),
    @Id        INT OUTPUT
)
AS
    INSERT INTO Comments (Name, Place, [Text])
    VALUES (@name, @place, @text)
    SET @Id = SCOPE_IDENTITY()
GO

Una vez que tenemos lista nuestra base de datos, ahora sí a lo que nos interesa.. vamos a crear nuestro proyecto en Visual Studio 2008:

En VS2008 creamos un nuevo proyecto de tipo Web Client Software, lo llamaremos “CommentsWebClient”:

01 create-project

Una vez finalizado la creación, nuestro proyecto se verá así:

02 project-structure

Como nos damos cuenta se crean de forma automática los elementos que dan soporte al patrón Model-Vew-Presenter.

Dentro de la carpeta “WebSites” de la solución está la plantilla inicial de nuestra aplicación ASP.NET, mientras que en la carpeta “Modules” se encuentran los presenters y las interfaces de cada una de nuestras vistas (las páginas .aspx). Por ejemplo la página Default.aspx posee su respectivo presenter “DefaultViewPresenter.cs” y la interfaz que implementa: “IDefaultView.cs”, pero qué significan todos estos archivo y para qué sirven?, bueno la respuesta es la siguiente:

Nuestra página Default.aspx implementa la interfaz IDefaultView, lo que significa que cualquier definición de propiedades, eventos o métodos que pongamos en la interfaz, deberá ser implementado por la página .aspx; esto es con el principal objetivo de que el presenter sepa qué métodos y propiedades está disponibles en la vista sin importarle la implementación concreta de la misma, de esta forma el presenter realiza las operaciones concretas y la vista provee de los datos de entrada necesarios. Aquí un diagrama de esta relación:

05 mvp-diagram

Por cierto el WCSF ha creado la aplicación ASP.NET con contenido de ejemplo lista para ser probada, si arrancamos nuestro proyecto podremos ver algo así:

03 test-project

Así que sin mayor esfuerzo ya tenemos una aplicación simple usando el patrón MVP, en la segunda parte de este tutorial empezaremos a escribir el código para el acceso a los datos, y Linq !! así como modificar la vista existente. Si tiene dudas sobre el WCSF o el MVP comenten y trataré de responderlas.

9 comentarios to “WCSF – Parte 1: Diseño de la aplicación”

  1. Muchas gracias por tu artículo, me ha sido de gran ayuda. ¿Cuándo realizarás la segunda parte?
    Muchas gracias.

  2. esta muy bueno el wcsf y espero la segunda parte. desde ya Muchas gracias

  3. esta muuy bueno, gracias, no encuentro la segunda parte…. porfavor pasa la voz..😀 desde ya gracias.

  4. Jesus Hector Says:

    hola donde puedo encontar la la parte donde escribiste el acceso a datos con linq

  5. Thanks for the auspicious writeup. It in fact used to be a leisure account it.
    Glance complicated to far introduced agreeable from you!
    By the way, how can we keep in touch?

  6. odraciral Says:

    esta tecnología sigue vigente ahora? microsoft practice&patters actualizó la misma?

  7. It’s remarkable in support of me to have a website, which is valuable for my experience. thanks admin

  8. Hi there, I found your website via Google while searching for a related topic, your web site came up, it looks great.
    I have bookmarked it in my google bookmarks.

  9. I actually have a tendency to go along with every little
    thing that was in fact composed throughout “WCSF – Parte
    1: Diseo de la aplicacin Blackout360”. Thanks a lot for pretty much all the details.

    Thank you-Marcelo

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: