Capa de Negocio ¿Donde la poneis? ¿Como la pasais?

02/03/2009 - 15:35 por Gonzalo Rodríguez Carrera | Informe spam
Buenas tardes.

Tengo una pregunta de principiante, pero que me tiene bastante
intrigado: ¿Donde ubicais la capa de negocio?
Es decir, ¿donde la instanciais y como haceis para que se accesible en
todo el programa?

Yo lo he hecho de varias formas... he creado una clase pública
estática, he creado un campo static en el formulario MDI y se lo he
ido pasando a los formularios hijos, etc... pero ninguna forma me
convence, no sé si está bien hecho si hay mejores formas
(seguramente), así que os planteo la pregunta para que una vez más y
si no os importa me echéis una mano.

Como siempre, muchísimas gracias por adelantado

Preguntas similare

Leer las respuestas

#1 pvergara
02/03/2009 - 15:40 | Informe spam
Sinceramente no sé que entiendes tu como capa de negocio... (ya el
hecho de que digas de que "sea accesible desde todo el programa" no me
da la sensación de que haya entendido bien)... pero normalmente lo
interesante sería tener un proyecto (o varios) de tipo Dll con los
métodos de negocio (validación, permisos y realización de las
accionoes de negocio) y que UNICAMENTE atiendan a invocaciones de
capas como el UI (o una fachada en servidor para WebServices)... y que
UNICAMENTE ejecuten métodos de capas de datos o... si me apuras de
otros ensamblados de negocio.

Un saludo.

On 2 mar, 15:35, Gonzalo Rodríguez Carrera
wrote:
Buenas tardes.

Tengo una pregunta de principiante, pero que me tiene bastante
intrigado: ¿Donde ubicais la capa de negocio?
Es decir, ¿donde la instanciais y como haceis para que se accesible en
todo el programa?

Yo lo he hecho de varias formas... he creado una clase pública
estática, he creado un campo static en el formulario MDI y se lo he
ido pasando a los formularios hijos, etc... pero ninguna forma me
convence, no sé si está bien hecho si hay mejores formas
(seguramente), así que os planteo la pregunta para que una vez más y
si no os importa me echéis una mano.

Como siempre, muchísimas gracias por adelantado
Respuesta Responder a este mensaje
#2 Gonzalo Rodríguez Carrera
02/03/2009 - 15:56 | Informe spam
Veamos... en una solución, a grandes rasgos, yo tengo tres proyectos.
Uno que se encargará de todo el apartado gráfico, uno que se encarga
de todos los procesos de la aplicación en sí y un último proyecto que
se encargará de la comunicación con la base de datos.

Un proceso "habitual" sería, por ejemplo: El usuario abre el
formulario de listado de clientes. El formulario le pide a la capa de
negocio "dame el listado de clientes" y éste a su vez le pedirá a la
capa de datos que le recupere de la BD los clientes... También se la
llamará para "guardame esta factura", o "valida a este usuario". Lo
pongo para que, si estoy cometiendo algún error de concepto, me
corrijáis.

A lo que me refiero con "accesible desde todo el programa" es a que en
todo el programa éste deberá realizar operaciones a lo largo y ancho
de todo el programa ¿no? o por lo menos en la mayoría de este, así que
debería poder llamársela desde cualquier punto de la interfaz... y
quería saber como haceis vosotros.

Gracias nuevamente.
Respuesta Responder a este mensaje
#3 pvergara
02/03/2009 - 17:02 | Informe spam
Te paso un par de enlaces en los que me baso para un desarrollo
WinForm de tres capas... para ver si te sirven los ejemplos:

http://www.codeproject.com/KB/smart...ction.aspx

http://msdn.microsoft.com/en-us/lib...07885.aspx

Básicamente viene a decir:
Haz el código de un negocio que no conozca para nada a la vista.
La vista tendrá tanto el estado como la presentación de la
información.

Comentan en algún sitio que la UI no necesita ni siquiera pasar por
el negocio para obtenciones simples... pero a mi eso no me gusta nada
(opinión personal).

Un saludo.

On 2 mar, 15:56, Gonzalo Rodríguez Carrera
wrote:
Veamos... en una solución, a grandes rasgos, yo tengo tres proyectos.
Uno que se encargará de todo el apartado gráfico, uno que se encarga
de todos los procesos de la aplicación en sí y un último proyecto que
se encargará de la comunicación con la base de datos.

Un proceso "habitual" sería, por ejemplo: El usuario abre el
formulario de listado de clientes. El formulario le pide a la capa de
negocio "dame el listado de clientes" y éste a su vez le pedirá a la
capa de datos que le recupere de la BD los clientes...  También se la
llamará para "guardame esta factura", o "valida a este usuario". Lo
pongo para que, si estoy cometiendo algún error de concepto, me
corrijáis.

A lo que me refiero con "accesible desde todo el programa" es a que en
todo el programa éste deberá realizar operaciones a lo largo y ancho
de todo el programa ¿no? o por lo menos en la mayoría de este, así que
debería poder llamársela desde cualquier punto de la interfaz... y
quería saber como haceis vosotros.

Gracias nuevamente.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida