Una
opción que han venido planteando los desarrolladores de aplicaciones de escritorio para
contrarrestar el creciente cambio de programadores que han optado por las aplicaciones
web la cual cada día tiene más adeptos es la programación multicapas o el Delphi
DataSnap, la cual es una tecnología que
permite a los desarrolladores de aplicaciones Delphi crear proyectos a través de
la web y sin tener preocupación por la información que van a transportar a través
de la red ya que DataSnap minimiza
la cantidad de registros en cada transacción haciendo que esto sea algo fácil, sencillo
y rápido para las aplicaciones Delphi.
Esta
arquitectura de desarrollo utiliza muchos componentes ya creados del Delphi tradicional
y los modifica para hacer posible gran cantidad de cambios en las aplicaciones
multicapas o DataSnap.
En
Delphi 6 ya se venía trabajando con esta tecnología ya que los componentes
estaban disponibles pero es hasta Delphi 2009 y 2010 que se implementa a un
100% por los desarrolladores Delphi al ver el alcance que puede tener una aplicación
bien desarrollada y trabajando con esta arquitectura.
Primero se trabajaban las aplicaciones en un solo pc o
monousuario se pueden llamar es las que existía un solo un computador una sola aplicación
y todo se llevaba en ese solo computador.
Después aparecieron las redes y varios pc entonces se optó
por los manejadores de archivos, que es esto?, los que halla trabajando en Delphi
con Paradox me van a entender mejor, eran aplicaciones en varios pc 2, 3 o 4 computadores
que se conectaban a unos archivos creados en Paradox, algunos los llamaban
tablas pues sí, no está mal la definición, pero todas esta aplicaciones se
conectaban a estos archivos o tablas configurando la ruta donde estaban las
tablas y su nombre, por ejemplo : C:\Mi Aplicación\Mis Tablas o
Archivos\tabla.db es solo un ejemplo, a claro la ruta podría estar en otro pc
de mi red ejemplo: 192.168.1.150\Mi Aplicación\Mis
Tablas o Archivos\tabla.db, por que digo que eran administradores de archivos
ya que estas aplicaciones no se conectaba directamente a un servicio,
manejador, gestor o motor de base de datos.
Más adelante aparecieron los motores, gestores o manejadores
de base de datos (MYSql, Oracle, Sql Server, Interbase, FireBird y muchos más que existen en la actualidad…)
con los cuales podíamos trabajar en red y además no conectábamos al motor de
base de datos mas no las tablas y tenían muchas más utilidades, administración de
usuarios, roles, consultas, procedimientos almacenados etc…
Como trabajamos aquí, está el motor de base de datos en un
servidor y en cada una de nuestras terminales o computadores de mi red estaba
instalada mi aplicación la cual tenía las interfaces para que los usuarios interactuarán
con la base de datos y obviamente la conexión a dicha base de todos, ósea que
en una misma aplicación teníamos nuestras interfaces o ventanas y los componentes
que se conectaban a la base de datos.
Cuando llega la arquitectura multicapas o DataSnap esto
cambia y aparece una nueva capa que se llamaría capa intermedia, servidor de aplicaciones,
servidor de datos o como lo queramos llamar la idea es que en esta aplicación o
servidor van a estar los controles o
componentes que se conectan a la base de
datos y en cada terminal o computador van a ver ampliaciones que se conectan a
esta aplicación para solicitar la información a la base de datos. Muchos dirán
pero para que otra aplicación si en una podemos hacer todo eso, sencillo si en
determinado momento queremos cambiar de base de datos ejemplo teníamos Interbase
y la empresa creció ahora trabajaremos con Oracle tendríamos que actualizar
todas las terminales de la empresa y si son 50 o 100 terminales imagínense que
trabajo tocaría hacer, también habría que modificar nuestra aplicación e cuanto
a los componentes que se conectan con esta nueva base de datos, pero si
tenemos un servidor intermedió solo
cambiamos el driver de conexión de nuestros servidor a la nueva base de datos y listo todo
funciona como si nada. Eso sin mencionar que las aplicaciones Cliente – Servidor
consumen gran cantidad de recursos de nuestra red ya que cada terminal es un curso
a la base de datos que esta abierto y es
información que está fluyendo por nuestra red colocándola lenta, si trabajamos
con multicapas la conexión de nuestras terminales con el servidor de ampliaciones
solo mantiene en la red el registro con el que estamos trabajando esto es algo
muy mínimo en cuanto al consumo de nuestra red.
Frans Willian Garner
fransgarner@gmail.com