_Subdirección de Sistemas - DCAA - UNAM

1

Herramientas Cliente/Servidor

Contenido

I. II.

Introducción PowerBuilder 5.0 Object Power Ventanas de Datos Power Builder Distribuido Código de Máquina Servidores de Web Y la lista continúa Visual Basic 5.0 Nuevos Desarrollos ¿Qué es lo nuevo? Bloques de construcción Más alto, más fuerte, más rápido La fiebre de los componentes Delphi 3.0 ¿Qué es lo que revisamos? Velocidad, velocidad, velocidad Ya dentro del producto Orientación a objetos Usando Componentes Desarrollo en el Web Un digno contendiente Developer/2000 Orientación a los objetos Componentes Aplicaciones distribuidas y multitarea Despliegue en la Web Integración con Adiciones Desarrollo Declarativo Soporte al Servidor Universal Herramienta de máxima calidad Rferencia

III.

IV.

V.

VI.

_Subdirección de Sistemas - DCAA - UNAM
2

Los softwares son: POWERBUILDER 5. todas ellas tienen características comunes.0.UNAM 3 . A continuación se analizan y describen algunos softwares para desarrollo en sus últimas versiones. DELPHI 3.Herramientas Cliente/Servidor Introducción ¿Qué herramienta de desarrollo se adapta a mis necesidades?. VISUAL BASIC 5.0.0 y DEVELOPER 2000.DCAA . Es una pregunta común que pocas veces tiene una respuesta satisfactoria. pero también tienen ventajas y desventajas propias. Con estas herramientas se pueden desarrollar aplicaciones Cliente/Servidor. _Subdirección de Sistemas . mismas que se analizan a continuación.

PB ofrece una mejora en la versión 5. la versión más reciente de PowerBuilder era la 5. un desarrollador novato en esta plataforma puede visualmente pasar a través de varios ejemplos que demuestran la conectividad.DCAA . Cuando se inicializa por primera vez. cabe mencionar que PowerBuilder (PB) puede ser aplicado en diferentes niveles de desarrollo.Herramientas Cliente/Servidor PowerBuilder 5. La integración de PowerBuilder con ambientes de desarrollo es fácil de hacer. en un rango que va desde PB Desktop para pequeños proyectos de desarrollos hasta el PB Enterprise. crearlas. para los desarrolladores serios y creadores de software. Para ayudar en este proceso. pueden existir algunos problemas con la conversión de la versión 4 a la 5. PB ofrece utilerías muy poderosas para el diseño y administración de Bases de Datos.0. sobre todo en el caso de aquéllos que quieran convertir muchas de sus complejas librerías sin un enlace. la cual fue imposible de revisar.0. _Subdirección de Sistemas . [D1] PowerBuilder necesita una PC con un mínimo de 16 MB de RAM. necesitarán que las librerías de desarrollo sean actualizadas también a la versión 5. la 5. una máquina Pentium con 24 o 32 MB de memoria RAM como mínimo. o .UNAM 4 . ha sido mejorado en varios aspectos: cuenta con nuevas herramientas. al menos con la opción del Internet Developer Toolkit. un procesador 486 y aproximadamente 100 MB de espacio en disco duro. sigue manteniendo su entorno de desarrollo tipo Visual Basic con ejecución en código nativo.0: el Reconstructor. Para abrir PowerBuilder se necesitan unas librerías de PowerBuilder. de tal forma que permite planearlas. Al momento de escribir este documento. con los que un desarrollador puede construir Ventanas. PowerBuilder carga un conjunto de librerías que constituyen un grupo de buenos ejemplos que muestran muchas características de la herramienta.0. que contienen los objetos que permiten configurar una aplicación particular. una aplicación que se asegura de la regeneración y reconstrucción de los objetos de acuerdo a su línea de herencia.pbl. Para usuarios que vayan a actualizar su versión 4. además. manipularlas realizar transferencia de datos entre Bases de Datos por medio del pipeline painter.0. muchos ingenieros y programadores de esta plataforma recomiendan. Usando el SQL Sybase. Además. Posee una serie de “ painters” . la manipulación de datos. como el Internet Developer Toolkit. Ventanas de Datos.2. y las nuevas ampliaciones a partir de la versión 4. el cual habilita la conexión con la mayoría de los RDBMS más importantes en el mercado. sin embargo. y muchos otros objetos que personalizan una aplicación. en vez de simpliemente seguir el orden que cada objeto tiene en el archivo pbl. PowerBuilder 5 está disponible también para Macintosh y UNIX.0.0 PowerBuilder en su última versión.0 a la actual. Además.02. que lo coloca como un producto dominante en el mercado corporativo para el desarrollo de sistemas de gran calidad. Sin embargo.

DataWindow y DataStore ofrecen muchos beneficios excepcionales. El DataWindow de Rich Text permite a los desarrolladores construir objetos que permitan a los usuarios trabajar con archivos RTF y usar la funcionalidad de los procesadores avanzados de texto. ahora posee la habilidad para pasar argumentos a las funciones en sólo lectura. polimorfismo.0. DataStore es. El DataWindow OLE permite que las aplicaciones de PowerBuilder sean utilizados por otras aplicaciones. Al tener un sólido conocimiento de la metodología de la POO. Algunas corporaciones siguen otro método y utilizan librerías de objetos listas para usarse. El DataWindow de Powersoft tiene una larga lista de seguidores. PowerBuilder introdujo nuevos estilos de DataWindow para otros productos. La gente de Powersoft introdujo una gran cantidad de nuevas características POO en la versión 5. Otra adición poderosa que se le ha hecho a este producto es la del DataStore. La capacidad para el desarrollo de funciones completas sobrecargadas es una realidad. Después de escatimar en el mundo de C++. lo que anteriormente no era posible hacer. se aprecia la facilidad conque se puede visualmente reconstruir objetos reutilizables que hacen uso de la POO y los conceptos de herencia.DCAA . Estas librerías se utilizan como una forma de reducir los costos de desarrollo. Varios eventos interconstruidos nos dan argumentos definidos que anteriormente sólo podían ser obtenidos por la llamada a ciertas funciones de PB. quienes utilizan esta tecnología día con día para OLTP y OLAP. las cuales son proporcionadas por vendedores terceros. en esencia. una DataWindows oculta que los desarrolladores pueden usar para accesar y manipular datos detrás de la aplicación. Tomando en cuenta esto. la herramienta continúa demostrando las bondades de la POO (Programación Orientada a Objetos). lo cual ha sido bien recibido. por ello. Con la versión 5.UNAM 5 . se puede construir librerías de clases compuestas por varios tipos de objetos que pueden ser reutilizados por numerosos desarrolladores. y encapsulamiento.0. aunque no siempre alcanza la funcionalidad necesaria para un proyecto en particular. Los desarrolladores ahora pueden utilizar argumentos de los eventos definidos por los usuarios. Ventanas de Datos PowerBuilder deslumbró a más de uno de sus competidores en la facilidad de obtener y manipular información de las bases de datos. como Word y Excel de Microsoft.Herramientas Cliente/Servidor Object Power Aunque algunos críticos dicen que PowerBuilder no es un lenguaje completamente orientado a objetos. es una buena idea construir sus propias librerías de PB. algunas compañías ayudan a modularizar los componentes de PowerBuilder en encapsulamientos lógicos de negocios y así tomar ventaja de las reglas del negocio seguidas por los desarrolladores. pero uno de los más destacados es su velocidad superior en tiempos de respuesta sobre los SQL _Subdirección de Sistemas . si hay talento disponible.

DCAA . tecnologías que siempre han sido códigos compilados. nos da un desempeño Otro aspecto. algunas pruebas muestran un definitivo beneficio en la velocidad cuando se usan DataWindows y DataStores sobre los SQL incrustados. Estos actos son una aplicación del código servidor. Sin embargo. PowerBuilder Distribuido La versión 5 de PB nos da la capacidad para que las aplicaciones desarrolladas puedan ser particionadas en un tercer servidor.UNAM 6 . Con la versión 5 . ahora podemos preguntarnos: ¿PowerBuilder podrá permitir el manejo de datos no estándares?. El último punto que se menciona en la revisión concerniente a los desarrollos de las bases de datos.Herramientas Cliente/Servidor clásicos incrustados.0. que es una sorpresa de PB para los desarrolladores. Código de maquina Un punto que siempre ha sido crítico en las versiones anteriores de PowerBuilder era su lentitud en la ejecución de su código pseudointerpretado en ambientes de aplicaciones Delphi con código compilado. La respuesta es definitivamente afirmativa. una aplicación cliente de PB puede utilizar funciones y otros procesos lógicos desde otro programa PB corriendo en una máquina separada. es la posibilidad de pasar el código máquina ejecutable de objetos como bases de datos a PowerBuilder y DataWindows. pero el resultado superior. El candidato ideal para códigos compilados ejecutables que deben correr mas rápidamente que sus hermanos con pseudo-código son los que contienen scripts extensos y procesamientos matemáticos. Powersoft ha acortado la diferencia y ha brindado a los desarrolladores la posibilidad de crear código ejecutable nativo a 32 bits y . debido a ello. se requiere de más tiempo para construir las aplicaciones. Con DataBlades (Informix). es que en esta versión no se usa CORBA o DCOM. Una aspecto que falla en la distribución vista de PowerBuilder. lo cual da una gran escalabilidad a las aplicaciones de PB. En la evaluación no se pudo observar la diferencia en velocidad de la versión 4 de PB con los DataWindows y en los SQL. Con los nuevos objetos de la versión 5. ya que se pudo constatar en la DB/Expo del pasado Diciembre (1996) donde PB mostró el acceso a las DataBlades por medio de un control ActiveX de Informix. El código maquina ejecutable es mayor que cualquier pseudo-código. los desarrolladores pueden centralizar los negocios de manera lógica en un solo servidor. DataCartridges (Oracle) y lo que venga en el horizonte.dll’s o pseudo-código ejecutable y Librerías dinámicas de PowerBuilder (PBD’s). _Subdirección de Sistemas . pero en la versión 5. Esto ayuda a eliminar los tiempos muertos desde el tradicional punto de vista Cliente/Servidor. Con esta distribución. es el soporte a la Base de datos Universal. Powersoft ha hecho significativas implementaciones con la liberación de parches que ayudan a que el producto sea más sólido en esta área.

DCAA . _Subdirección de Sistemas . El precio de PowerBuilder varía de acuerdo al nivel de desarrollo que se necesite. Con una gran lista de soporte de terceros.995 dólares. los cuales sirven para manejar la comunicación con la actividad de la Web. Estas librerías consisten de una gran número de funciones que pueden generar el HTML necesario para la interacción con browser y usuario. que es un asistente que ayuda a los desarrolladores a construir páginas html a partir de las salidas de las librerías de PowerBuilder que contienen las reglas necesarias del negocio. Estos programas de PB asisten en el procesamiento lógico de respuestas. los desarrolladores quizás se asombrarían si Powersoft dejara perder a PowerBuilder en la competencia con productos de desarrollo para la Web. con las opciones de desarrollo que el profesional del software de hoy necesita para construir sus aplicaciones Cliente/Servidor. Se pude usar la combinación de un servidor personal que viene dentro de IDK. hasta la versión completa de 2.UNAM 7 . La segunda estrategia es la distribución de Plug-ins. El IDK también viene con unas librerías de clases para la Web. Una parte integral de una aplicación de la Web de PB es una distribución de ejecutables de PowerBuilder.Herramientas Cliente/Servidor Servidores de Web Con la tardanza con que se presentaron las herramientas de desarrollo para el Web por parte de Powersoft. el cual está actualmente disponible para ser usado con PowerBuilder para aplicaciones de Internet/Intranet: Plugins y Web.0 de PowerBuilder está muy completa. Pero no hay dada más lejos de la verdad. Powersoft ha seguido dos estrategias en este sentido: la primera es la incorporación del Internet Developer Kit. El IDK viene con un wizard. que pueden ser usados para correr con PowerBuilder sobre la Web. y el IDK en sí mismo para construir un aplicación simple que accese una base de datos de Oracle 7 y regrese información para browsers como Netscape o Internet Explorer. dando una buena interacción con cualquier servidor de bases de datos que se utilice como backend. las habilidades orientadas a los objetos se amplían (mecanismos poderosos de bases de datos. y que es una herramienta RAD bien diseñada. soporte a ActiveX y más) lo que hace que PowerBuilder continúe siendo el líder reconocido por grandes empresas y desarrollos visuales del tipo RAD. Para desempeñar esta tarea. tanto para Window como para DataWindow. el cual va desde 295 dólares para la versión de escritorio. Website. las librerías de runtime de PB se deben de instalar en el cliente de la Web. Y la lista continúa Se puede observar entonces que la versión 5.

una alta velocidad de acceso a las bases de datos. Además. en la cual se centrará el presente artículo.UNAM 8 . En adición al nuevo desarrollo enfocado hacia ActiveX.0. compartiendo las mismas características de desarrollo para las tradicionales aplicaciones de VB. y en el IDE del Cliente. VB 5 está listo para la tecnología Cliente/Servidor. en una nueva encarnación de la IDE (Integrated Development Enviroment). como la compilación de código nativo.0 La versión 5 es la siguiente etapa en la evolución de Visual Basic (VB): relacionado con la Plataforma Active de Microsoft. una vez más. y los tradicionales ambientes Cliente/Servidor.0 sigue el mismo paradigma de desarrollo que VB 4. es la implementación del componente con la capacidad de creación de la tecnología de ActiveX en VB 5. lo que nos permite construir nuestras interfaces mediante el ensamble de partes de componentes preconstruidos. Aunque otras herramientas también pueden crear estos componentes. el cual permite simular y analizar aplicaciones en escenarios distribuidos antes de comenzar a especificar alguna arquitectura. Intranet. es el Explorador de Desempeño de Aplicaciones (APE). ahora tiene un verdadero repositorio (Microsoft Repository 1.0. El depurador T-SQL permite a los desarrolladores depurar procedimientos almacenados interactivamente al mismo tiempo. colocan a esta herramienta en lo mas alto de la lista de las herramientas de desarrollo Cliente/Servidor. y además aplica el mismo paradigma en la construcción de los controles ActiveX.0 Edición Profesional incluyen un número de significativas ampliaciones de desempeño y productividad que. Este proceso permite optimizar una aplicación y una arquitectura para que alcance un buen desempeño. Antes. VB 5. VB sigue el camino de las más poderosas.DCAA . VB 5 no sólo tiene los mecanismos para crear componentes ActiveX para cliente. los desarrolladores pueden crear aplicaciones basadas en los componentes destinados a Internet. Servidores Web. Características avanzadas. con un nuevo compilador nativo y ligas veloces a las bases de datos.Herramientas Cliente/Servidor Visual Basic 5. La mejor característica. Los desarrolladores pueden construir controles para cualquier _Subdirección de Sistemas . y un mejor ambiente de desarrollo son sólo la punta del iceberg[D2]. El Servidor de Transacciones Microsoft Edición Desarrollador finalmente permite a VB abarcar una escala de cientos de usuarios. Esta revisión está basada en la versión beta de VB 5 que ya está disponible.0–. Por último. se incorporó una nueva versión de VBA (Visual Basic Aplication). sino que también los tiene para el browser de la Web. aunque no menos importante. junto con la inclusión de la tecnología IntelliSense.0) para cuando algún desarrollador quiera construir desde la Base de datos. Nuevos Desarrollos Las nuevas características en VB 5. sin embargo ahora –usando VB 5. los desarrolladores requerían de un ambiente especial de desarrollo para ActiveX. y el nuevo servidor de transacciones de Microsoft (Viper).

VBA no sólo es un lenguaje: es toda una máquina de lenguaje (un editor. la Edición Profesional para aquellos que desean crear básicamente aplicaciones Cliente/Servidor e Internet/Intranet (incluyendo en esta edición. Quienes consideraban a VBA como otro lenguaje de aplicaciones propietarias pueden ahora dar otro vistazo y cambiar su opinión. los controles ActiveX. Las características IntelliSense están disponibles para el código Window incluido. Servidor de transacciones Edición Desarrollador. el repositorio y el compilador nativo). es una revolución: es notable que se trata de algo más que un ambiente de programación. el lenguaje nativo para Visual Basic. y Oracle. Complete Word. lo cual es una gran ayuda para crear controles de tal forma que los desarrolladores puedan cargar tanto el proyecto del control como el proyecto del host al mismo tiempo.0 viene en tres presentaciones: la Edición de Aprendizaje para quienes sólo desean hacer programas sencillos. y. desde los controles de subclases hasta la posibilidad de combinación de más de 1000 controles comerciales de ActiveX. VB 5. List Properties/Methods. Quik Info. y una docena más de productos no Microsoft. Word. . El cambio en el IDE.UNAM 9 .0 se pueden cargar muchos proyectos a la vez. Los desarrolladores armarán la interfaz usando controles GUI preconstruidos . Data Tips. y entonces darán a la aplicación su comportamiento con la colocación del código atrás de los controles o por cambios en las propiedades del control. List Constraints. la Edición Enterprise para aquellos que lo necesitan para toda una corporación. finalmente. Access. La característica IntelliSense es realmente una referencia de sintaxis de un objeto modelo que protege a los desarrolladores de sus peores enemigos: ellos mismos. Una vez creados dichos controles ActiveX.DCAA .Herramientas Cliente/Servidor cosa. más que una evolución. un visualizador de objetos. Existen desarrolladores que no tendrán problemas en encontrar la forma de utilizar estas nuevas características e interfaces. Desde la ventana de proyecto se pueden ver ahora todos los _Subdirección de Sistemas . Con la versión 5. proyecto y ventana de propiedades. éstos pueden ser usados en otros ambientes de desarrollo que puedan usar Activex. Cabe señalar que éste es el mismo paradigma utilizado por las herramientas de la competencia. ¿Qué es lo nuevo? VBA. PowerPoint. además de las nuevas herramientas de depuración. Project. soporte multiproyecto y editor ampliado. incluyendo Excel. y una herramienta de depuración). como Borland Delphi. es ahora el lenguaje para cientos de otros productos. El proyecto del host puede crear un archivo ejecutable que permitirá al host el control para pruebas. Visual SourceSafe. Remote Data Objects (RDO). La edición Enterprise incluye SQL Server. Lo realmente nuevo en herramientas son las características IntelliSense. y Margin Indicator. Los desarrolladores pueden agregar valor en la creación de aplicaciones VBA porque el código es portable hacia otros ambientes y aplicaciones. Los desarrolladores avanzados pueden encontrarle usos muy buenos a IntelliSense. y Herramientas de Bases de Datos Microsoft.

Una vez creados los controles usando VB 5. o mediante la combinación de algunos controles existentes.0 es la habilidad de crear controles ActiveX. y si se utiliza el tabulador por categoría se verán las propiedades por categoría. el cual muestra las variables corrientes y permite encontrar exactamente dónde están localizadas estas variables y dónde son referenciadas. Las ventanas locales también incluyen un visualizador de llamadas al Stack. el aspecto más destacado en VB 5. La ventana de variables locales da la información de todas las variables declaradas en los procedimientos..0. luego. manejo de eventos y procedimientos definidos por el usuario. El browser puede distinguir entre propiedades. VB 5.DCAA . El objeto browser también permite desplegar funciones y retornar tipos y nombres de parámetros. Todo es cuestión de dibujar la Interface. usted puede ver las propiedades de los objetos por categorías o alfabéticamente. Bloques de construcción Haciendo a un lado las nuevas características. formas. En la versión previa de Visual Basic.0 usa el mismo paradigma de desarrollo visual para construir controles ActiveX que los usados para otras aplicaciones. Las nuevas características de depuración incluyen la habilidad de cargar ventanas locales. Haciendo click en el símbolo “más” se puede desplegar cuántas raíces hay y cuantas están incluidas en el proyecto. aplicaciones Cliente/Servidor. una ventana de watch. Además se pueden buscar objetos a través de todas las librerías a la vez. Con esta versión. Un mecanismo de hiperliga permite mover directamente al objeto referenciado y permite una fácil navegación de la jerarquía de clases.0. propiedades personales. Debemos recordar que ActiveX ofrece muchas de las características proporcionadas por Java. Esto incluye a todos los controles ActiveX. y finalmente se dibuja la interfaz para el control. y el Stack de llamadas despliega una lista de todas las llamadas activas a procedimientos. clases. La ventana de Watch permite monitorear el valor de una variable o expresión en particular y permitir cambios al valor durante la ejecución. Cada proyecto es representado por una raíz en la ventana de proyecto. La ventana inmediata permite examinar cualquier expresión VBA. Ahora existen dos tabuladores. así como de los valores almacenados en ellos. Construir sus propios controles ActiveX.Herramientas Cliente/Servidor componentes de todos los proyectos cargados.UNAM 10 . módulos. y una ventana inmediata. formas y clases. y archivos de recursos. es una tarea relativamente fácil. Primero que nada se crea un test container para la creación de un estándar ejecutable usando VB 5. a través de mecanismos de subclases pseudo orientadas a objetos. métodos. se pueden definir dichos controles incluyendo Páginas Web. lo que permite crear controles mediante la modificación de controles existentes de reuso. se agrega un proyecto de control blanco ActiveX. Alfabético y Categoría: mientras se utiliza el tabulador alfabético se podrán ver las propiedades alfabéticamente. fijar _Subdirección de Sistemas . documentos. la ventana de propiedades desplegaba los atributos de controles. y cualquier otro dispositivo de cómputo en red. módulos. El Object Browser es una nueva y excelente implementación.

Si se planea cualquier trabajo con componentes ActiveX. La fiebre de los componentes Algunos de los problemas que se pudieron observar en esta pequeña revisión de Visual Basic es el cambio de paradigma de las últimas versiones.UNAM 11 . no tiene problemas de desempeño. tres. y n soluciones. y da a cada una de ellas precios diferentes. Todo lo que se necesita es presionar F5 para correr la aplicación y ver cómo trabaja. Es claro que Microsoft está basando todos sus productos en los controles ActiveX en estos días. La idea. y agregar algún código VBA de manejo de eventos. Microsoft está moviéndose de un enfoque de uso de servidores COM – donde los mecanismos participan de las aplicaciones– a la construcción y desarrollo de controles ActiveX. Microsoft necesita enseñar a los desarrolladores cómo lograr que esta arquitectura pueda solucionar problemas de aplicación y desarrollo. Si se comprende la estrategia de la Plataforma Active.DCAA . El desempeño de acceso a las bases de datos también es bueno. más rápido Durante la evaluación se pudo observar que su desempeño es realmente bueno: no sólo el IDE corre rápido. los productos de Microsoft son algo difíciles de manejar con ActiveX y la Plataforma Active. servidor Active como back-end. es obligar al consumo. y servicios DCOM como enlaces. si se es un desarrollador de VB. como podemos observar. VB será la herramienta a utilizar. VB está dando el salto a la fabricación de controles ActiveX que todos estaban esperando. podemos creer que este paradigma tendrá más sentido. pues hasta el momento la creación de controles ActiveX requería de un desarrollador con conocimientos en Visual C++ o alguna otra herramienta selecta. más fuerte. Microsoft ahora vende dos. _Subdirección de Sistemas . Más alto. es simple y fácil de utilizar. VB puede ayudar a realizar una rápida actualización de lista. Sin embargo. Una vez hecho lo anterior. y esto. VB ayudará a crear contenidos dinámicos ActiveX. Sin embargo. y ésta es la forma en que se harán la mayoría de los programas Cliente/Servidor de las compañías en el futuro. sino que no requiere de intérprete. yo encontré dificultades en determinar si el mayor desempeño es el resultado de la adición de un nuevo compilador nativo o si la capa de acceso a las bases de datos es más rápido. es hora de usar y probar este control.Herramientas Cliente/Servidor las propiedades. Entonces. La estrategia principal implica que. quiérase o no. con ActiveX como front-end. se pueden utilizar los controles en un aplicación externa. Sin embargo. Es claro además que Java empieza a interrelacionarse con Microsoft[D3]. Una vez que se está seguro que la aplicación funciona. Si se es un desarrollador o Webmaster. obviamente. es un serio golpe.

Se eligió la instalación por default. Delphi definitivamente ha hecho el salto a los ejecutables eficientes. El segundo era una Pentium a 100 Mhz con 64 MB en RAM que corre Microsoft Windows NT 4. bases de datos locales (interbase). la cual instaló todo en el disco duro.Herramientas Cliente/Servidor Delphi 3. El producto ha sido instalado y probado en dos diferentes sistemas. Delphi.0 Workstation. _Subdirección de Sistemas . hace algún tiempo.. la cual nos da muchas nuevas y poderosas características no soportadas en las versiones anteriores. seguramente habrá leído algún articulo acerca de la herramienta de desarrollo 4GL de Borland Internacional Inc. editor de imágenes y Winsight32. El primero es una Pentium a 66 Mhz con 32 MB de RAM que corre Microsoft Windows 95. Las herramientas de este tipo son muy usuales cuando se desarrollan grandes sistemas Cliente/Servidor. Hasta que Delphi llegó.UNAM 12 . Estas incluían un explorador de bases de datos. el cual es una poderosa herramienta de monitoreo para clases y mensajes. Servidor de bases de datos locales. y ocupó aproximadamente 89 MB de espacio en disco. los usuarios de 4GL estaban condenados a la lentitud del interprete de código para sus aplicaciones Cliente/Servidor. ¿Qué es lo que revisamos? Se revisó una copia de la Suite Cliente/Servidor de Delphi 3.0 Si compró alguna revista de computación alrededor de 1995. La verdadera velocidad requería el uso de algo más complejo.DCAA . ¿Qué es lo que más preocupa a todos los programadores? Más de una persona contestará a la pregunta diciendo que se trata de la velocidad. Al seleccionar la instalación por default. algo como C++. pero este beneficio ya no es importante hoy en día ya que Delphi trata de recuperar el liderazgo en herramientas de desarrollo para soluciones completas en los desarrolladores de Microsoft Windows. Borland ha hecho que la industria entera se preocupe en crear herramientas de programación 4GL que compilen ejecutables de verdadero código nativo. se recibe una sorpresa al ver una variedad muy buena de herramientas y utilidades en el folder de Delphi.

velocidad. Cada objeto tiene una ventana separada de información que contiene las propiedades. al igual que el cliente. Otra ventana contiene el código de la aplicación. relaciones y los eventos. velocidad La primera cosa que se quería saber acerca de Delphi. como reescribir un método de un objeto anterior o la creación de sus propios componentes básicos de clase. Pascal con objetos exhibe todos los atributos de la orientación a objetos. lo que hace al cliente más pequeño.0 es un Pascal con objetos en el lenguaje de codificación. Orientación a objetos Delphi 3. cuando se inicia Delphi y se crea una nueva forma. Para esto. incluyendo encapsulamiento. Ahora se tiene la opción de compilar el ejecutable acompañado de un archivo . éste debe ser lo más compacto posible. Pensando en futuras versiones. Delphi no se durmió en sus laureles.Herramientas Cliente/Servidor Velocidad.0.DCAA . Lo correcto. es bueno tener un profundo conocimiento en Pascal con objetos. muchas nuevas características han sido agregadas. Esto hace posible usar las técnicas más avanzadas de la orientación a objetos en Delphi 3. Por ejemplo. las técnicas avanzadas de orientación a objetos podrán ser mas _Subdirección de Sistemas . Ya dentro del producto Delphi 3. Esto es. ahora es la extensión. La versión 3. Pero la velocidad por sí misma no es suficiente en los ambientes de hoy en día. La guía de escritura de componentes es un manual de Delphi que explica cómo hacer los procedimientos orientados a objetos. Haciendo igualmente los cambios requeridos en un nivel bastante avanzado de la comprensión de la orientación a objetos. polimorfismo y herencia. se puede especificar el procedimiento en el código que sea especificado con el objeto. lo cual hizo que muchos usuarios pudieran hacer fácilmente la conversión y sentirse cómodos con el ambiente. ésta es automáticamente derivada de una preexistente clase base del objeto forma.0 tiene muchas referencias a la Interface tipo Visual Basic. mientras que la versión 2 producía archivos ejecutables de aplicación semicontenidos. Por diseño. Esto es bastante similar en la versión 2. de cualquier forma. cuando se crea el ejecutable. Haciendo doble click en un objeto en particular. y dio un paso para ser todavía mejor.0 usa compilador de código nativo de 32 bits. La mayor implementación de Delphi fue la tecnología de compilación con la llamada a paquetes.UNAM 13 .dll. era si mantenía la reputación de su predecesor sobre la velocidad del código ejecutable.

Herramientas Cliente/Servidor gráficas. Constraint Broker propaga los constraint de las _Subdirección de Sistemas .UNAM 14 . En este campo. Así en general.0 va más lejos que la versión anterior con la implementación de lo que se llama Broker Technologies. Delphi ha triunfado. Para ampliar su arsenal distribuido. Así como por un lado el cliente tiene su contraparte. Usando Componentes Nuestra industria está del todo frenética sobre el uso de controles ActiveX y componentes de Java. Delphi viene con Visual Component Library (VCL32). la cual contiene más de 100 componentes reusables que los desarrolladores pueden utilizar simplemente arrastrando y soltando (drag and drop) donde diseñan y crean sus aplicaciones. Por ejemplo. el cual a su vez es heredado de otro paquete . La línea estratégica principal de todo esto es que Delphi posea las más sofisticadas capacidades de la orientación a objetos. En medio de la batalla entre Microsoft Corp. por otro lado el servidor de la tecnología Broker tiene 4 áreas: Remote Data Broker permite el paso de tipo de datos cursor al cliente en oposición al tipo de dato arreglo estándar en COM. Active Form permite cambiar cualquier ventana Delphi que se esté creando a una forma activa lista para Internet. Un COM interconstruido permite tener un desarrollos tecnologías ActiveX lo antes. Rich Edit.DCAA . Esto incluye Interface de Windows 95 con elementos de Tree Views. todos los paquetes estarán disponibles para ser heredados. y CORBA. ActiveX Creation permite crear controles Activex de una forma sencilla. y List Viewer. ambiente completo para COM y DCOM. Active Web Deployment ayuda a activar rápidamente las aplicaciones para desplegarlas en la Web.dll.exe puede ser heredado desde un objeto en un paquete .. DCOM. Active Insight es el nombre de las cuatros tecnologías ActiveX de Delphi que son usadas en los desarrollos Cliente/Servidor.0 permitía la compilación de relativamente pequeños ejecutables con su tecnología de paquetes.dll.0. Usando OCX y controles ActiveX en Delphi 3. Bussines Object Broker da un objeto medianamente robusto para la localización transparente de conexiones perdidas o rotas hacia los servidores de las reglas del negocio. un objeto en un paquete . y Sun Microsystems Inc. Delphi 3. las cuales son buenas para manejos de datos y herramientas multimedia. éste alcanza nuevos niveles de simplicidad. Todas las técnicas programación orientada a de la objetos pueden ser usadas entre diferentes paquetes compilados. Estas combinadas con el poder de hacen más poderoso que Cómputo Distribuido Anteriormente mencionamos que Delphi 3. Delphi estableció un conjunto de productos suyos firmados en el campo de Microsoft. Hay algunas cosas que se han dicho para tomar partido en la contienda y estar con quien permita hacer una integración de sus productos lo más similar posible.

dll que permiten tanto al cliente como al servidor tener control para las aplicaciones de Internet.DCAA . Microsoft SQL Server. Me alegré al ver y reconocer cada una de las características avanzadas de las bases de datos –como los paquetes de Oracle Corp– y que usted puede usar con SQL para modificar cualquier cosa directamente. es bastante innovador. Usted puede arrastrar y soltar cualquiera de los 15 controles ActiveX dedicados a los protocolos y estándares. Cada vez que se arrastra uno de estos objetos hacia la forma. La forma en que se tiene acceso a los datos de las bases de datos. el cual está orientado al uso de componentes de Java. Acceso a las Bases de Datos Completamente enfocado a la velocidad. Una de las características más importantes que posee Delphi para el desarrollo en la Web. Informix. Apropiadamente desde el SQL Explorer se puede arrastrar y soltar tablas enteras o campos específicos de una forma. _Subdirección de Sistemas . Esta herramienta muestra los objetos de una bases de datos. Sybase. Borland ofrece otro producto. pero actualmente Delphi es estrictamente ActiveX. el cual va arriba de la versión 2. incluyendo Oracle. se pueden manipular sus atributos en el Object Inspector. Todas las grandes RDBMS están soportadas vía SQL Links de Delphi. dentro de un browser. constraints. el ambiente Delphi. ahora tiene un conjunto de herramientas robustas de acceso de datos. el Web Broker da una alta velocidad de diseminación de información sobre la Web usando HTML y tecnologías HTTP mas allá de los escenarios.Herramientas Cliente/Servidor bases de datos al cliente. o actualizar fácilmente sus documentos en el Web. El hecho de que Delphi utilice la tecnología ActiveX significa que por ahora no se pueden usar los componentes para desarrollar aplicaciones Java. Finalmente. es su compilador de código nativo. y DB2. tales como tablas de datos. el producto que alguna vez causó impacto en la comunidad desarrolladora en el campo de los accesos a las bases de datos. el cual permite crear ISAPI (para Internet Explorer) o NSAPI (para Netscape) con extensiones . Todos los objetos para el acceso a los datos necesarios para hacer la conexión serán automáticamente colocados en la forma. La primera de estas capacidades que llamó mi atención fue el SQL Explorer. Donde se pueda poner todas estas herramientas y técnicas juntas. Jbuilder. de modo que el trabajo pueda ser continuo siempre y cuando no se conecte a las bases de datos. Desarrollo en el Web La revisión no es completa sin una discusión del Web. básicamente se tendrá la habilidad para crear una aplicación completamente funcional que le permitirá correr. y triggers para cualquier base de datos a la cual se esté conectado.UNAM 15 .

FoxPro. los desarrolladores pueden codificar sus aplicaciones relativamente independientes de un vendedor específico. PVCS. Además. Para promover los múltiples desarrollos. y si desea tener herramientas 4GL. La última noticia de cambio del BDE es el incremento de soporte para otros vendedores. Con toda la funcionalidad que el BDE brinda. _Subdirección de Sistemas . Nuevas adiciones a la lista incluyen a Microsoft Acces. Delphi permite el acceso del BDE de manera centralizada en oposición al acceso local en cada máquina.Herramientas Cliente/Servidor Delphi 3 está completamente soportado por las conexiones a las bases de datos por ODBC en adición a los drivers nativos SQL Links. El mayor cambio con respecto a la versión 2 de BDE es la forma de agregar flexibilidad. El desarrollador ahora puede escoger el uso de la BDE para el acceso de las Bases de Datos. la brecha se ha reducido. Los Oficiales de Borland dijeron que estas características estarán disponibles en las últimas versiones de este producto cuando las demandas del mercado sean mayores. entonces Delphi ciertamente podría pasar como un real contendiente. no se porque muchos desarrolladores no los utilizan. y SQA– le ha dado buenos comentarios a este producto dentro de la industria. Usando el BDE. Delphi 3. El Borland Database Engine (BDE) es el fundamento sobre el cual las bases de datos construyen los accesos. Si el ambiente Windows es su base de desarrollo. Una elemento que falta en el paquete de bases de datos de Delphi es la habilidad para manejar los nuevos datos de los objetos relacionáles disponibles en los servidores universales. e Informix. Los desarrolladores quizá prefieran el uso de Btrieve u ODBC en su caso. Un digno contendiente Considerando lo anterior. Muchos prefieren los driver SQL Links por su buena velocidad. El soporte para terceros vendedores –como Microsoft. DB” .UNAM 16 .0 ofrece muchas otras características dignas de mencionar. como las nuevas capacidades de reportes y asistencias de sintaxis para el desarrollador del código. pero no está limitado a esto. Esto es usado principalmente cuando se desarrollan aplicaciones para el Web que necesitan el acceso a los motores de bases de datos remotas. yo quedé impresionado con todo lo que ha hecho Delphi en tan poco tiempo. pero con las mejoras de la tecnología ODBC.DCAA .

Dándole al desarrollo de aplicaciones de bases de datos una parte de arte y otra de ciencia. Retrocediendo 10 años atrás. Estos objetos pueden heredar todas las propiedades que tienen sentido para ellos. Cada bloque correspondía a las tablas de las bases de datos y cada campo a una columna en la tabla. Herencia: Las propiedades de las clases designan listas de propiedades y métodos.0. la cual se planea vender al final de la primavera.Herramientas Cliente/Servidor Developer/2000 Developer/2000 permite a los usuarios construir sofisticados sistemas que se pueden escalar desde trabajos en grupos hasta empresas. pero esto sólo era el principio.DCAA . como la versión 2. Si es necesario.UNAM 17 . y una firme integración con las bases de datos de Oracle. y las Formas porción de Developer/2000 ahora ofrecen muchas más características de la programación orientada a los objetos. y campos. escalabilidad. el valor heredado de la propiedad de clase puede ser _Subdirección de Sistemas . podemos observar que las herramientas de desarrollo de aplicaciones de Oracle tenían ya los rudimentos de la orientación a objetos. Developer/2000 requiere horas e incluso días para estudiar. aunque las clases nuevas no podían ser definidas por el desarrollador. Orientación a los objetos Comencé usando el RBDMS de Oracle como herramienta de desarrollo antes de 1986. la versión corriente en el mercado. Esta es una revisión orientada a la comparación entre las características que ofrece tanto la versión 1. pero las ganancias son en portabilidad. la analogía entre la creación de una obra maestra de música y una obra maestra de software no es más distinta que la diferencia entre notas y sonidos. En contraste con algunas herramientas de desarrollo que pueden ser conseguidas y usadas durante horas para producir aplicaciones rápidas y sucias. practicar. Una propiedad de clase de cualquier objeto en una aplicación. los cuales pueden ser heredados o sobrescritos por objetos inferiores en la jerarquía. Developer/2000 es una herramienta virtuosa.4 de Developer/2000. Las herramientas de Oracle continuaron evolucionando durante años. Los métodos de objetos en SQL *Forms son definidos por los triggers (que son diferentes a los store procedures que se ejecutan en el servidor). planificar y crear. Sin embargo esto no sólo se refiere a la capacidad de producir aplicaciones maravillosamente ricas y poderosas bases de datos en las manos de un talentoso desarrollador. bloques. cuando SQL *Forms tenía una jerarquía de clases llamadas formas. Permitían fijar una jerarquía de clases. sino que también requiere de habilidades superiores en su uso para producir resultados magníficos.

y sólo hereda las propiedades y métodos que tengan sentido para el objeto en cuestión. Developer/2000 resuelve las referencias e incorpora la última versión del objeto fuente. La Modularidad puede ser alcanzada por Developer/2000 en el más alto nivel de estructuración de la aplicación en múltiples formas y en el nivel procedural. mediante la organización del código PL/SQL dentro de las librerías y paquetes. Dependiendo de los _Subdirección de Sistemas . un puntero al objeto en el módulo fuente es incorporado en el módulo destino.Herramientas Cliente/Servidor reescrito. Encapsulamiento.DCAA . y el nuevo objeto en el módulo destino puede ser modificado sin preocupación alguna. el polimorfismo es implementado usando el concepto de sobrecarga. DataSource Transparency permite construir bloques de templetes basados en tablas de las bases de datos y permite acceder a la base de datos internacional con Developer/2000 sin ningún código requerido. En la versión 2. Developer/2000 es inteligente para la herencia de las propiedades. Con los nuevos Object Subclassing. Polimorfismo significa que diferentes clases de objetos pueden implementar la misma función de una manera que sea apropiada para la clase. Polimorfismo. También se puede sustituir la herencia y cambiar las propiedades en los hijos. se tiene la opción de copiar o referenciar el objeto. La sobrecarga es un método de implementación de la misma unidad de programa que se encuentra múltiples veces dentro de un paquete PL/SQL.UNAM 18 . Se puede solucionar este problema mdiante la organización y la estructuración de la aplicación en módulos separados. Cuando los objetos son heredados. Las formas dan esta funcionalidad en tres maneras: DataSource Transparency. Esta capacidad permite a los objetos y los métodos ser encapsulados dentro de un módulo fuente y reusados a través del ambiente de desarrollo. Así mismo. Modularidad. Cuando subsecuentemente se abre o se genera la forma. Los sistemas de software complejos pueden ser muy largos y engorrosos para trabajar en ellos. Cuando se copia el objeto. y Aplicaciones y Paquetes de Bases de Datos. El encapsulamiento permite a los programas cambiar para dar confiabilidad con un mínimo monto de esfuerzo. un paquete es creado y probado. Dentro de Developer/2000. y los objetos dentro del paquete pueden ser modificados. PL/SQL Libraries ofrecen un mecanismo para reusar aplicaciones y sirven para el uso de métodos de la actual implementación. la definición del objeto es incorporada en el módulo fuente inmediato. PL/SQL Libraries. funciones. El hecho de dividir un programa en componentes separados puede reducir esta complejidad.0 de Developer/2000 el Object Subclassing puede ser agregado al Form Builder para superar algunas de las limitaciones existentes de las propiedades de las clases. estos valores pueden ser tomados por default en el valor de las propiedades de las clases si es requerido. Cualquier cambio subsecuente hecho al objeto fuente no es reflejado al módulo destino. Reuso de Objetos. y otros programas objetos con programa simple. Arrastrar y soltar objetos permite la herencia de objetos y código que puede ser copiado o referenciado entre aplicaciones. los cambios hechos a la estructura de las propiedades del padre son automáticamente heredados por los hijos. Si sobrescribimos cualquier punto. Cuando se hace referencia a un objeto. Una aplicación o Paquete de Bases de Datos es una colección encapsulada de procedimientos relacionados.

y objetos ActiveX. el cual soporta aplicaciones cliente a través de estándares de facto como Java. Aplicaciones distribuidas y multitarea En adición al soporte dado para la tecnología de componentes como ActiveX y Java. el NCA de Oracle también incluye un ambiente de objetos distribuidos basado en una infraestructura de software CORBA/IIOP. y contiene licencias para muchas herramientas de desarrollo de Oracle: Developer/2000. Componentes La versión actual de Developer/2000 para Windows permite integrar las aplicaciones con otros componentes. En la esencia de la arquitectura estándar de facto: CORBA 2. El NCA de Oracle propone resolver el problema de la competencia de estándares con el Inter-Cartridge Exchange (ICX). y ActiveX será parte de una larga estrategia de productos que Oracle denomina Network Computing Architecture (NCA). Al particionar en dos las aplicaciones. plug-ins de browser. EL ICX ofrece un mecanismo de puenteo COM/CORBA que permitirá a los clientes ActiveX/COM accesar otros cartuchos (CORBA. Se puede también llamar directamente al . Oracle anunció el NCA. Designer/2000 (CASE. controles VBX y DDE.DCAA . como OLE 2. Una de éstas es lograda mediante la partición de las aplicaciones. A través de CORBA y del mapeo de lenguajes a IDL. en el futuro permitirá el desarrollo de otros cartuchos soportados por esta arquitectura.Herramientas Cliente/Servidor argumentos pasados al paquete.0.0 y HTTP/HTML. como la 2. Aunque el soporte a los componentes ActiveX no está incluido en la versión actual de Developer/2000.UNAM 19 . Developer/2000 puede ser usado para crear cartuchos para el desarrollo de formas SQL basadas en la Web. Java) a través de IIOP. herramienta de análisis y diseño). De este modo. OLE Automation. CORBA 2. WebServer 3.0 incluye IIOP para la Interoperabilidad de los objetos e IDL para las interfaces de lenguaje neutral. ActiveX será soportado en las versiones futuras. Las aplicaciones multitarea son otra forma de redes de computadoras distribuidas. modelación. El último año. y un Kit de cartuchos de desarrollo para computación en red.0. la unidad apropiada de programa es aplicada a los argumentos. preferentemente en un ambiente que puede ser ejecutado en el _Subdirección de Sistemas . Oracle InterOffice.dll de un PL/SQL dentro de Developer/2000. Este año Oracle publicó el Suite Web Developer. El suite Web Developer soporta escritorios ActiveX. Oracle 7 Universal Server o WorkGroup Server. Netscape ONE y Java. el polimorfismo y la modularidad pueden ser usados para la creación de rutinas genéricas que desempeñan diferentes funciones dependiendo de la clase en la que sean aplicadas. se les da la habilidad de mover código entre cliente y servidor. el cual permite el desarrollo de cartuchos PL/SQL para NCA.0.

0 de Developer/2000.com lista información acerca de los agregados dados por terceros vendedores. Designer/2000 genera aplicaciones para correr en múltiples plataformas con características nativas. Además de la doble división. _Subdirección de Sistemas . reportes.DCAA .Herramientas Cliente/Servidor mismo lenguaje tanto en el servidor como en el cliente. Las aplicaciones generadas por Designer/2000 pueden ser ampliadas en Developer/2000. Oracle soporta muy bien el lenguaje PL/SQL en ambos frentes de la conexión cliente/servidor. el cartucho de la Web permite desplegar aplicaciones interactivas en la Web mediante la habilitación de formas. modelación. y en un proceso regenerativo se asegura que estas modificaciones personales sean sincronizadas y consistentes con el Depósito Designer/2000. Developer/2000 puede crear aplicaciones tripartitas que están centralizadas en la lógica del negocio en las aplicaciones servidoras medianamente divididas. En la versión 2. y gráficas construidas en Developer/20000 para correr dentro del browser de la Web. Oracle tiene más de 6000 socios que dan adiciones a lo que hacen los productos de software de Oracle. Previamente se construyeron formas o reportes que pueden ser reversivamente rehechas dentro de Designer/2000 para aplicaciones futuras ampliadas y mantenidas. muchos de los cuales trabajan con Developer/2000. El Web site alliance.oracle. explotando a cada una ellas. análisis. y diseño de tareas. y esta capacidad de las formas es la base de la estrategia de partición de las compañías. Integración con Adiciones Designer/2000 es actualmente mencionado como una adición que trabaja con Developer/2000 para el CASE. Oracle ofrece la división de aplicación mediante arrastrar y soltar (drag and drop) unidades de programas PL/SQL. Despliegue en la Web El concepto de desplegar aplicaciones de bases de datos en plataformas Internet/Intranet es la ganancia del momento. Oracle ha mantenido una fuerte integración entre estos dos diseños y herramientas de desarrollo durante años.UNAM 20 .

agrega constraint a las bases de datos de la aplicación. un menú para invocar operaciones de y todos los mensajes y manejo de errores. seleccionando un formato de reporte de la galería de estilos de reportes. el flujo de datos y el modelado de matriz. con soporte para las bases de datos distribuidas heterogéneas. Developer/2000 puede crear aplicaciones de la definición de la base de datos sin requerir ningún código procedural. PL/SQL soporta el tipo de dato LONG. Gracias a la integración con Oracle 7. y controles VBX. que significa que un tipo de dato complejo puede ser manipulado proceduralmente con Developer/2000. El Servidor Universal opción Spatial Data es una colección de programas y paquetes escritos en PL/SQL con lo que la versión actual de Developer/2000 puede hacer llamadas procedurales a los _Subdirección de Sistemas .Herramientas Cliente/Servidor Desarrollo Declarativo Las reglas del negocio son declaraciones sobre las formas de los procedimientos en la descripción de las aplicaciones. da una completa Interface query-byexample. donde imágenes y sonidos son regularmente usados para acompañar los tradicionales tipos de datos como texto y números. incluyendo cartas.DCAA . Otras áreas de interés son las bases de datos relacionales hechas para aplicaciones no tradicionales como bases de texto y Sistemas de información Geográficos (GIS). e incorpora una barra de herramientas para la operación del desempeño de la base de datos.UNAM 21 . ellos dan todo el master/detail de la coordinación y bloque inteligente de la transacción. y de la corrida del reporte. la jerarquía de funciones. Algunas de las cosas más interesantes vienen de la Web. sonido. controles ActiveX. Soporte al Servidor Universal EL servidor Universal de Oracle ha generado un gran cantidad de presión porque ha incrementado el interés en los tipos de datos complejos no relacionales. Además. Designer/2000 también puede jugar el papel en la declaración de desarrollo de aplicaciones. Los reportes pueden ser desarrollados declarativamente en Developer/2000 mediante la definición de Queries y de otras relaciones en la Interface punto y click del modelador de datos. Developer/2000 versión 2.0 contiene declaración de soporte para muchos tipos de datos y reportes. Esto da el manejo del modelo de desarrollo a través del estándar industrial y de las técnicas de modelado como lo es una entidad de relación. contenedores OLE. La construcción de aplicaciones usando el Developer/2000 punto y click declara características automáticamente establecidas a todas las interacciones con las bases de datos basadas en definiciones del servidor. El Servidor Universal de Oracle incluye dos opciones de servidor para guardar y buscar tipos de datos complejos: el ConText para datos textuales largos y la opción Spatial Data para datos geográficos. Además.

que incluye desarrollos Intranet/Internet. una herramienta de alto nivel para crear aplicaciones de bases de datos relacionales. Esto también agrega un conjunto de nuevas características de programación orientada a objetos y soportada por el extenso NCA de Oracle. La versión 2. Developer/2000 es una excelente elección para construir aplicaciones portables. Los desarrolladores pueden ahora dedicar más tiempo para aprender a usar esta herramienta de desarrollo a todo su potencial.Herramientas Cliente/Servidor programas Spatial Data. Mayo 1997. permitiendo tomar ventaja fácilmente de los tipos de datos extendidos Herramienta de máxima calidad Developer/2000 es de alta calidad. y la actualización 2.0 extiende el desarrollo tradicional basado en host Cliente/Servidor.DCAA . "Toolsc-s" _Subdirección de Sistemas .0 permite basarse en un bloque almacenado en la base de datos como procedimiento. las cuáles pueden ser escalables para las bases de datos.UNAM 22 . Referencia Byte.

Sign up to vote on this title
UsefulNot useful