Tecnología

Inicio

Diferencia entre el desarrollo basado en componentes y arquitectura orientada a servicios

Con los años, una variedad de modelos y arquitecturas de desarrollo de software han aparecido y luego se desvaneció en popularidad. En el camino, cada uno contribuyó a la actividad artesanal e influyó en el modo software está construido. Dos de estos modelos, el desarrollo basado en componentes y la arquitectura orientada a servicios, hicieron contribuciones significativas a los modelos de desarrollo actuales. desarrollo basado en componentes tanto condujo hacia el desarrollo rápido de aplicaciones y programación visual, mientras que la arquitectura orientada a servicios o SOA, se convirtió en servicios de computación en la nube en la que el acceso del software de servidor a través de un navegador Web.

Desarrollo basado en componentes

Visual Basic, Delphi JavaBeans y programación de cada basan en un conjunto de componentes de arrastrar y soltar sacados de una paleta en algún tipo de superficie de trabajo. Junto con los componentes incorporados, los desarrolladores pueden crear sus propios controles personalizados para llevar a cabo las funciones adaptadas a sus propias necesidades de negocio. Los desarrolladores crean conjuntos de componentes reutilizables primero, y luego utilizarlos como bloques de construcción para crear nuevas soluciones de negocio. Esta es la base del desarrollo basado en componentes.

Arquitectura orientada a Servicios

SOA utiliza un número de servidores web para distribuir la potencia de cálculo para resolver grandes problemas de negocios. Cuando un navegador muestra una página Web, primero envía una solicitud a un servidor Web espera a los resultados y la muestra a la página. Un servicio web, los bloques de construcción de SOA, se basa en las mismas solicitudes Web y respuestas para coordinar el trabajo entre los ordenadores. Cada equipo tiene un conjunto de servicios que puede realizar y otros ordenadores solicitar estos servicios.

similitudes

Aunque los modelos de programación parecen bastante diferente, la visión general es la misma. Ambos componentes y servicios tienen cada uno un conjunto predefinido de métodos o funciones que realizan. Los diseñadores de software comienzan definiendo bloques de construcción que representan objetos del mundo real. Estos pueden ser facturas, estados de cuentas bancarias, clientes u otras entidades comerciales. El diseñador continuación, define una serie de mensajes o funciones que le indican al objeto de hacer algo. Por ejemplo, un objeto de cuenta de cheques puede tener una función que devuelve su saldo actual o puede tener una función que recibe un pago, lo que aumenta su equilibrio y publicar el cheque en su registro.

diferencias

Las principales diferencias se centran alrededor de la escala y la tecnología. Un componente vive en un único equipo y toda la comunicación se produce dentro de una sola caja. Servicios viven en varios equipos, a menudo en diferentes ubicaciones físicas y de la comunicación se produce a través de redes. Componentes generalmente implementan funciones muy pequeñas, granulares. Una tarea componente típico puede ser para leer y escribir datos de una sola tabla de base de datos o publicar una transacción. Servicios menudo abarcan varias divisiones o incluso diferentes empresas. Los servicios Web típicos pueden publicar las ventas de las filiales regionales de la oficina central o enviar una lista de los cheques de nómina de banco de la compañía.