Tengo que recuperar la que te debo :-)

----------------------------------
Carlos Peix

2011/6/6 Nestor Rodriguez <[email protected]>

> Ya te deben una cerveza.
>
> 2011/6/6 Carlos Peix <[email protected]>
>
>> Hola Arlen,
>>
>> 2011/6/1 Arlen <[email protected]>
>>
>>> ¿Los DTO deberian soportar la navegacion entre entidades? No se muy
>>> bien como se le llama a esto. Pero es que si tengo una entidad Usuario
>>> y otra Rol, por ejemplo, a traves del usuario puedo navegar hasta el
>>> rol o referenciar el rol. Disculpen mi mala explicacion.
>>>
>>
>> Los DTOs debe estructurarse en funcion de las necesidades del consumidor
>> *de ese webservice en particular*. en otras palabras, cada servicio o
>> familia de servicios, deberian tener su propio juego de DTOs.
>>
>> Dentro de esa estructura de DTO pueden tener cualquier estructura, sin
>> embargo suele buscarse la simplificacion o aplanamiento de la estructura (lo
>> contrario de un modelo muy profundo).
>>
>>
>> ¿Donde deberia ubicar los DTO en la capa de datos o en la de negocio?
>>>
>>
>>  Ninguna de las dos, los DTOs deben estar bien cerca del servicio al que
>> asisten, entonces, deben estar en la capa de servicios. Incluso, ante algun
>> cambio de la version del servicio, deberias prever un cambio completo del
>> juego de DTOs
>>
>>
>>
>>> ¿Es factible crear varios DTO de una misma entidad? ¿Como aseguro que
>>> si la entidad que representa cambia el DTO correspondiente cambie?
>>>
>>
>> Si, si tenes varias "familias de servicios" cada una deberia tener su
>> propio juego de DTOs ajustados a las necesidades de los servicios y sus
>> clientes.
>> Con respecto al cambio, usualmente se busca lo contrario. Uno no quiere
>> cambiar las interfaces de los servicios externos ante cada cambio del modelo
>> interno o, por lo menos, uno desea desacoplar eficazmente cambios en ambos
>> entornos.
>> Por supuesto, cuando cambia el modelo interno seguramente debe cambiar el
>> codigo de mapeo entre ese modelo interno y los DTOS, pero los DTOs no
>> cambian.
>>
>> Por ejemplo, en los servicios publicos (XML webservices), comienzo con una
>> estrucura mas o menos asi:
>>
>> {webroot}/Clima/v1/Hoy.asmx
>> {webroot}/Clima/v1/DTOs/Temperatura.cs
>> {webroot}/Clima/v1/DTOs/Viento.cs
>>
>> Luego, cuando llega la version 2 del servicio, duplico todo y hago los
>> cambios necesarios y promuevo gentilmente los clientes de la version 1 a la
>> 2.
>>
>> ----------------------------------
>> Carlos Peix
>>
>>  --
>> Para escribir al Grupo, hágalo a esta dirección:
>> [email protected]
>> Para más, visite: http://groups.google.com/group/NHibernate-Hispano
>>
>
>  --
> Para escribir al Grupo, hágalo a esta dirección:
> [email protected]
> Para más, visite: http://groups.google.com/group/NHibernate-Hispano
>

-- 
Para escribir al Grupo, hágalo a esta dirección: 
[email protected]
Para más, visite: http://groups.google.com/group/NHibernate-Hispano

Responder a