Thursday, April 18, 2024    
English 
Portuguese 
Skip Navigation Links
Inicio
Mi Cuenta
Foro
¡Pruébelo!
¡Adquira Ahora!
Skip Navigation Links
Sobre
Contáctenos
Mapa del Sitio


La Arquitectura Importa

Sin una arquitectura adecuada, una aplicación renuncia a su capacidad de mantenimiento, flexibilidad y escalabilidad y se hace muy difícil sobrevivir. Incluso los desarrolladores originales de la aplicación tienen dificultad de diagnosticar problemas o mantener el código. La ausencia de una estructura apropiada promueve un código monolítico y fuerza el sistema para ser diseñado en una base por formulario. Cuando la lógica real del negocio y el acceso de datos son limitados al formulario, parece que las prácticas orientadas del objeto no se pueden forzar y el código es duplicado. Si se cambian las reglas del negocio o el acceso de datos necesiten de ser modificados, cada repetición del código tiene que ser alterado y reexaminado.

Una aplicación debe contener límites que separen el acceso de datos, la lógica del negocio y la interfaz del usuario en capas apartadas. Una vez separadas, cada capa se puede fácilmente centralizar y reutilizar antes que repetir. Utilizar el StrataFrame permite a cualquier desarrollador crear rápida y eficientemente una aplicación adecuadamente dividida en las capas de acceso de datos, de la lógica del negocio y de la interfaz del usuario.

Capas Versus Niveles

Un nivel es definido como un módulo de una aplicación separado desde otros módulos de aplicaciones por un límite de proceso y/o de red, mientras una capa es definida como una separación lógica dentro de un solo nivel. Un modelo de un nivel, como el Microsoft Access, tiene todas las capas en funcionamiento en un solo proceso en una sola computadora. Un modelo de dos niveles, como el Client/Server, tiene dos niveles separados en funcionamiento en dos computadoras apartadas. Una aplicación con más de dos niveles puede implicar en muchos procesos y múltiples computadoras. Adicionando niveles hacia una aplicación se puede aumentar su complejidad, disminuir su mantenimiento y provocar un rendimiento debido al estado latente que incurre al cruzar un límite de red o de proceso. Algunas aplicaciones, sin embargo, requieren niveles adicionales, más allá de esos del cliente y del servidor, debido a la escalabilidad extrema (>500 clientes) y requerimientos de seguridad.

Sin tener en cuenta el número de niveles utilizados, una arquitectura hecha en capas apropiadamente es una necesidad para cualquier aplicación. Una arquitectura que divida la aplicación en múltiples capas resulta en simplicidad, escalabilidad, capacidad de mantenimiento y reutilización del código. StrataFrame es una Aplicación Framework hecha en 3 capas y cuando las utilice, las ventajas de una arquitectura hecha en capas son automáticamente alcanzadas con poca o ninguna intervención o diseño del desarrollador. La figura 1 describe la arquitectura de la aplicación que se puede obtener utilizando StrataFrame.

Otras Arquitecturas de Aplicación

  • Cliente-Pesado -- Una aplicación de Cliente-Pesado es una en que todo el acceso de datos y la lógica del negocio están incluidas en los formularios de la aplicación. Sin centralización, la lógica del negocio y el acceso de datos se hacen difíciles y no se pueden modificar rápida y fácilmente por el desarrollador. Dado que ellos están incrustados dentro de los formularios, cambiar cualquier uno de ellos irá generalmente romper la aplicación. Vea la figura 2 para un ejemplo de una aplicación de Cliente-Pesado.

  • Servidor-Pesado -- La arquitectura del Servidor-Pesado fue creada como una solución posible hacia los problemas heredados de la arquitectura del Cliente-Pesado. En una aplicación de Servidor-Pesado, la lógica del negocio fue eliminada desde la interfaz del usuario y puesta dentro del servidor de la base de datos. Utilizando procedimientos almacenados y disparadores, toda la lógica de la aplicación es manejada por el nivel del servidor, más bien que por el nivel del cliente, centralizando la lógica del negocio y haciéndolo más fácilmente extensible y mantenible (Vea la figura 3).

    Mientras soluciona algunos de los problemas de la arquitectura del Cliente-Pesado, un Servidor-Pesado introduce nuevos problemas. El servidor de la base de datos se hace el cuello de botella para la aplicación ya que el servidor está computando toda la lógica del negocio así como recibiendo el proceso de la base de datos. Además, el T-SQL no es fuertemente tipado, ni con alto nivel de programación de lenguas e impone muchas limitaciones al desarrollador.

  • Lado del Cliente / Lado del Servidor -- La arquitectura del Lado del Cliente / Lado del Servidor (CSSS) es una combinación de ambos tipos de arquitectura, el Cliente-Pesado y el Servidor-Pesado (Vea la figura 4). Generalmente, una aplicación CSSS es el resultado de muchos años de agrandamiento y mantenimiento de una aplicación. La aplicación no fue diseñada con la arquitectura adecuada en el inicio y el mantenimiento del código ha requerido que la lógica de negocio sea colocada en ambos niveles, del servidor y del cliente. La arquitectura CSSS no soluciona ninguna de las limitaciones del Cliente-Pesado o del Servidor-Pesado, pero combina las limitaciones en un único paquete.

Aplicaciones StrataFrame Hechas en Capas

El nivel del cliente de una aplicación StrataFrame es dividida en tres capas distintas:
  • Capa de Acceso de Datos
  • Capa de Negocios
  • Capa de Presentación
La aplicación es fácilmente mantenida y extendida como las capas son débilmente acopladas a sus capas vecinas y cambio de una capa no irán afectar otras capas. Si la lógica del negocio se puede cambiar, el desarrollador debe solamente modificar la codificación en un local, es mejor que tener que visitar cada formulario dentro de la aplicación para hacer los cambios (Vea la figura 5)

En una aplicación StrataFrame, una serie de objetos de negocios contienen la lógica del negocio para la aplicación. Instancias de este objeto de negocio son creadas para relacionarse con los formularios de la aplicación. Una única clase de objeto de negocio puede relacionarse con ilimitados formularios y un único formulario puede relacionarse con ilimitados objetos de negocios (Vea la figura 6)

El trabajo ha sido hecho para usted

Una Aplicación Framework es, por definición, una libraría de clases que se pueden reutilizar por cualquier número de aplicaciones, ahorrando tiempo para los desarrolladores, dado que a ellos no se requiere reescribir grandes cantidades de códigos para cada aplicación.

StrataFrame es una Aplicación Framework hecha en 3 capas para se utilizar con SQL, Oracle ú OLE DB. Todo acceso de datos, validación de datos no personalizados y vinculación de la interfaz del usuario son manejados por las clases dentro del framework.

Además, conseguir una arquitectura de aplicación de n-capas adecuada y sus ventajas asociadas utilizando el StrataFrame da al desarrollador los siguientes beneficios:
  • Tiempo de desarrollo GRANDEMENTE reducido
    • La libraría de clase del StrataFrame maneja todo el acceso de datos y el vinculo de datos para el desarrollador. La única cosa que el desarrollador debe codificar es la disposición de la interfaz del usuario y la lógica personalizada del negocio.
    • StrataFrame es fuertemente integrado con el Visual Studio para proporcionar métodos rápidos de realizar tareas como configurar campos requeridos, alterar propiedades del objeto de negocio y mantener el mapear de objeto de negocios.
  • Rendimiento de la Aplicación
    • El acceso de datos en el StrataFrame es dinámico y eficiente debido a las mejorías en el ADO.NET 2.0 y acceso de datos enhebrados (procesamiento asíncrono).
  • Curva de aprendizaje nominal
    • StrataFrame es escribido enteramente para el .NET y no se requiere al desarrollador aprender ningún lenguaje híbrido de script (VB.NET, C#, etc.).
  • Localización Completa
    • StrataFrame proporciona funcionalidad plena para desarrolladores para localizar etiquetas, títulos de formularios, etc., a través de textos almacenados en la base de datos del SQL o en un archivo XML.
    • Los mensajes de la interfaz del usuario y mensajes de errores se pueden también localizar utilizando la misma funcionalidad.
  • Extensibilidad
    • Mientras el StrataFrame realiza muchas tareas comunes para el desarrollador, la mayoría, sino todas de estas tareas se pueden modificar por el desarrollador para extender el alcance del StrataFrame.
    • Un complemento repleto de ganchos es proporcionado, permitiendo a los desarrolladores relacionarse con eventos y secuencias de flujo de datos.
  • Fácil de Utilizar
    • Desarrolladores no tienen que programar en el StrataFrame y ganan autonomía de decisión más que pierden. Diferente de otras aplicaciones framework, StrataFrame no da un paso afuera de sus límites e intenta hacer “todo” para el desarrollador.

Comparación: Aplicación StrataFrame Versus Aplicación Típica del .NET

En una aplicación típica del .NET, un DbDataAdapter es arrastrado sobre un formulario utilizando el diseñador de formularios dentro del Visual Studio. El DbDataAdapter debe ser configurado manualmente antes de que el desarrollador pueda codificar un DbCommand o una instrucción “SELECCIONAR” que no retorna valores (statement), para recuperar un DataSet desde la base de datos. El DataSet debe entonces, ser vinculado manualmente hacia la interfaz del usuario, y cualquier validación de datos y lógica del negocio deben de ser codificadas dentro del formulario. Para crear un formulario adicional, los mismos pasos son repetidos. Diseñando formularios en este método sigue directamente una arquitectura monolítica y las limitaciones asociadas a una aplicación sin capas (Vea la figura 7)

En una aplicación StrataFrame, para crear un formulario, uno o más objetos de negocios son arrastrados encima del formulario utilizando el diseñador de formularios dentro del Visual Studio. El desarrollador puede entonces, vincular los controles de formularios hacia los objetos de negocio y el formulario estará completo. Los objetos de negocios no se necesitan configurar, y el acceso de los datos es concedido a través del objeto de negocio en pareja con la Capa de Datos. Toda la validación de datos y la lógica del negocio están contenidas dentro del objeto de negocio (mapeadas hacia una tabla de base de datos). El formulario expone una aplicación hecha en n-capas que reutiliza el objeto de negocio, preferible que forzar cada objeto a ser reprogramado o modificado (Vea la figura 8)

Tipos de Aplicaciones de StrataFrame

  • Aplicaciones hechas en capas WinForms
  • Aplicaciones hechas en capas WebForms
  • Aplicaciones de n-Niveles utilizando las Capas de Datos y de Negocios para proporcionar el acceso de los datos a servicios web o el nivel mediano del SOAP.
Una libraría de clases de los objetos de negocios creadas en el StrataFrame se pueden utilizar por uno o más de los tipo de aplicaciones dados (los mismos objetos de negocios se pueden utilizar para todos los tipos de aplicaciones).

Resumen

  • Versión Corta -- ¡Desarrolle códigos de calidad más rápidamente que nunca antes hecho mientras que reduce el costo del desarrollo!
  • Versión Larga –- Muchos libros y artículos han sido escritos sobre la teoría de framework con capas y hechos en niveles, pero algunos preciosos desarrolladores en realidad, producen un modelo de funcionamiento. Si estás interesado en crear aplicaciones con la mejor ciencia de computación en framework que se puede ofrecer: ¡StrataFrame es su respuesta! Es fácil de se utilizar y no quedará en su camino. Adicionalmente, el código fuente está disponible para si quieres tomar una mirada más cerca o adicionar un evento o un gancho.

    La decisión no es si comprar el StrataFrame – pero si tendrás las ventajas verdaderamente innovadoras, bien diseñadas y un producto excitante.

    Acuérdate de la definición de Einstein sobre la demencia que es cuando continúas a repetir una y otra vez la misma práctica, con la esperanza de tener resultados diferentes.



Mapa del Sitio - Inicio - Mi Cuenta - Foro - Acerca de Nosotros - Contáctenos - ¡Pruébelo! - Adquirir

Microsoft, Visual Studio, y el logo del Visual Studio son trademarks o trademarks registrados de Microsoft Corporation en EEUU y/u otros paises.