Aunque muchos sitios web que usan ASP no usan componentes en absoluto, en este artículo, se supone que ASP es un puente entre clientes y componentes de Internet.
Servicios de división de ASP y componentes
ASP se usa más comúnmente para crear archivos HTML o XML para usar por clientes en servidores, por lo que discutimos principalmente este escenario de uso. Esto plantea una pregunta común: si las páginas ASP están en el servidor, ¿entonces pertenecen a parte de la capa de negocios? En el mundo de los componentes, la respuesta suele ser no. Si bien ASP se ejecuta en el servidor y puede estar en el mismo espacio que el servidor de aplicaciones, esto no lo hace parte de la lógica comercial.
Con las herramientas de interfaz de usuario que crecen o, a medida que se habilitan más soluciones de empresa a empresa, tener esta clara distinción pagará una gran recompensa.
Dicho esto, veamos algunos de los criterios más importantes de la División de la Capa de Empresas y la División de Capa de Presentación:
Separe el código de la interfaz de usuario de la lógica de negocios. Esto incluye escribir código acoplado a la interfaz de usuario, como usar un objeto MTS que utiliza un componente interno ASP para separarlo del código de lógica comercial, como si estuviera en una DLL diferente.
Transacciones separadas de las páginas ASP. La transacción ASP es muy buena en algunos casos, pero los componentes y las aplicaciones de varios niveles cambian esto. Los componentes no deben confiar en la capa del cliente para administrar sus transacciones y semántica de lógica comercial.
Coloque el componente de representación (componente que usa solicitud y respuesta) en la misma máquina y/o proceso que el servidor web. Si un objeto que usa el objeto de componente interno ASP se coloca en una máquina remota, todas las llamadas al componente interno ocurrirán en un formulario de devolución de llamada. El servidor COM+ que llama al cliente IIS es un servidor COM+, lo que reduce significativamente el rendimiento y complica la configuración de seguridad. Estos objetos de ajuste se pueden colocar en una "activación de la biblioteca" marcada con la aplicación COM+.
ASP existe en el servidor, por lo que la página ASP debe cumplir con las reglas de intercambio de recursos y tener en cuenta la escalabilidad. Consulte los detalles a continuación:
En una "sesión", la administración debe intentar evitar el estado específico del usuario.
Mantenga ASP sin estado y permita los grupos de recursos cuando sea posible.
Método de operación
Al evaluar si un segmento de código pertenece a la lógica de negocios o la capa de presentación, pregúntese: "Si tengo que reemplazar mi página ASP con una aplicación de teléfono de tipo botón, ¿ese código sigue siendo útil?" Si la respuesta es "Sí", puede intentar dividirla en el código de lógica de negocios o el código de ayuda de la interfaz de usuario.
Si el código no se puede usar después de cambiar el cliente, o si es un ayudante para construir la interfaz de usuario, el código pertenece a la capa de servicio de representación. Está en la página ASP, o en un componente que utiliza los componentes internos ASP. No pertenece al componente del objeto comercial.
Comprender la diferencia entre el escritorio y el cliente ASP
ASP es un cliente especial de componentes, a diferencia de las aplicaciones Win32 tradicionales de un solo hilo en el escritorio. Las principales diferencias se resumen de la siguiente manera.
Gestión de hilos: ASP es un cliente multiprocesado. Esto significa que puede haber muchas actividades concurrentes que se ejecutan juntas, tal vez manejando diferentes páginas ASP al mismo tiempo. Esto significa que no se puede hacer que el objeto afirme falsamente que es el único usuario que ocupa exclusivamente el sistema. Hacer esto puede causar reacciones inesperadas, por ejemplo, para desarrollar un mal hábito de almacenar objetos en una sesión de ASP o variables de aplicación.