cerrar-sesion editar-perfil marker video calendario monitor periodico fax rss twitter facebook google-plus linkedin alarma circulo-derecha abajo derecha izquierda mover-vertical candado usuario email lupa exito mapa email2 telefono etiqueta

30020070408. Emprendedores: qadram software

Escrito por Redacción en Artículos
no hay comentarios Haz tu comentario
Imagen de logotipo de facebook Imagen de logotipo de Twitter Imagen de Logotipo de Google+ Imagen de logotipo de Linkedin

Desde la poblaciA?n alicantina de Albatera, situada en la Vega Baja, un programador iniciA?, hace ya siete aA�os, un interesante proyecto de creaciA?n de un IDE para crear programas con el lenguaje PHP de forma visual. Iniciado por JosA� LeA?n Serna, el proyecto, denominado Visual PHP, generA? las primeras betas allA? por el aA�o 2000.

La idea inicial era portar el desarrollo de aplicaciones RAD para Windows al estilo Delphi, pero para el desarrollo de aplicaciones web.

Este primer proyecto sirviA? como prueba de concepto de que la tecnologA�a era viable, y a travA�s del tiempo, el proyecto fue evolucionando hasta completar el paradigma de desarrollo RAD basado en un potente entorno de desarrollo y una completa librerA�a de clases que proporciona un elevado nA?mero de componentes y funcionalidades.

El proyecto recibe un gran impulso gracias a un acuerdo con la firma CodeGear, la nueva marca del conocido creador de herramientas de desarrollo Borland. El proyecto cuenta entonces con mA?s medios humanos y econA?micos y reA?ne dos facetas igualmente de potentes e importantes: un entorno de desarrollo profesional junto con un amplio conjunto de librerA�as base.

CodeGear aporta sus conocimientos en el desarrollo de entornos integrados, librerA�as y QA y permite que el proyecto complete su objetivo inicial, adoptar el estilo Borland de desarrollo de aplicaciones.

CodeGear estA? alineado con las tendencias de desarrollo PHP, y es por eso que la licencia de la librerA�a de clases se mantiene, siendo 100% un proyecto de cA?digo abierto, lo que permite que un desarrollador pueda introducir sus propias modificaciones en cualquier nivel de las librerA�as, incluso las mA?s bA?sicas, ya que dispone de todos los fuentes.

De forma notable, el proyecto inicial ha mantenido gran parte de su espA�ritu abierto, y las librerA�as se distribuyen bajo licencia LGPL (Library General Public License) una de las mA?s amplias y libres en cuanto a uso y modificaciA?n.

((CodeGear ha iniciado un modelo de comercializaciA?n innovador que por una parte cuenta con un sA?lido IDE comercial y por otro estA? basado en librerA�as de fuente abierta))

Con ello, CodeGear ha iniciado un modelo de comercializaciA?n y distribuciA?n innovador para un producto, que por una parte cuenta con un sA?lido entorno de desarrollo visual que facilita la creaciA?n de las aplicaciones, y por otro estA? basado completamente en librerA�as de fuente abierta. Estas A?ltimas estA?n disponibles de forma gratuita para su empleo en cualquier proyecto. La ventaja es que el producto comercial ofrece un entorno grA?fico para el desarrollo que facilita y agiliza el empleo de las librerA�as a la hora de crear un programa.

Historia y evoluciA?n

El producto, que inicialmente iba a recibir el nombre de Visual PHP, y como tal comenzA? su andadura pA?blica allA? por el 2001, se encontrA? con problemas al establecer el nombre. NingA?n producto comercial puede llevar la etiqueta PHP sin permiso (y posible pago) a la empresa Zend. Y otra empresa americana habA�a registrado previamente Visual PHP, con lo que JosA� tuvo de abandonar el nombre inicial.

Posteriormente, al crear una nueva versiA?n del producto, fue renombrado durante un corto periodo de tiempo como QaDRAM Studio, que se convirtiA? mA?s tarde en el nombre de la empresa fundada por JosA� LeA?n y que actualmente dirige, y finalmente, en su tercera versiA?n, cuya tecnologA�a ha sido la base de Delphi para PHP, fue renombrado a QStudio.

Realmente el producto QStudio nunca fue distribuido, ya que el acuerdo con CodeGear llegA? antes de liberar cualquier versiA?n beta, pero supuso un cambio importante en el proyecto. Mientras que la versiA?n anterior era capaz de generar cA?digo Perl y DWS, ademA?s de PHP, JosA� se dio cuenta de que crear una soluciA?n para mA?ltiples lenguajes era un proyecto demasiado grande, por lo que optA? por reducirlo hacia el lenguaje PHP, ya que el 80% de las aplicaciones desarrolladas por qadram software, utilizaban este lenguaje.

((Hasta el aA�o 2003, el proyecto habA�a sido un desarrollo realizado en tiempo libre por parte de su creador))

Hasta el aA�o 2003, el proyecto habA�a sido un desarrollo realizado en tiempo libre, y a partir de entonces, fue cuando JosA� creA? qadram software y se centrA? en la finalizaciA?n de este producto, con la idea inicial de acelerar sus propios desarrollos y ofrecer posteriormente la tecnologA�a a terceros.

A destacar tambiA�n es la relaciA?n de qadram software con el conocido software de cA?digo abierto de creaciA?n de tiendas virtuales osCommerce, para el cual desarrollan diversos mA?dulos de pago y contribuciones y administran la web de soporte en espaA�ol en http://oscommerce.qadram.com.

osCommerce, desarrollado en PHP, permite crear una tienda virtual en Internet. OsCommerce contiene mA?dulos para la gestiA?n tanto de la parte de facturaciA?n y gestiA?n de productos como de la secciA?n visible de una tienda virtual en Internet.

((En 2006 CodeGear inicia contactos con qadram software y se llega a un acuerdo de colaboraciA?n para la finalizaciA?n conjunta y comercializaciA?n de un producto de desarrollo RAD basado PHP))

En el aA�o 2006 la empresa CodeGear inicia contactos con qadram software y se llega a un acuerdo de colaboraciA?n para la finalizaciA?n conjunta y comercializaciA?n de un producto de desarrollo RAD para desarrollo basado en el lenguaje PHP. Borland (CodeGear) aporta su gran experiencia para crear un amigable entorno de desarrollo que se superpone a todo el trabajo previo de qadram software a la hora de crear las funcionalidades bA?sicas mediante avanzadas librerA�as.

((El proyecto de la librerA�a de clases visuales en fuente abierta estA? disponible en Sourceforge))

El proyecto de la librerA�a de clases visuales estA? disponible en Sourceforge, http://sourceforge.net/projects/vcl4php, con el nombre de VCL for PHP, mientras que el producto comercial es distribuido por CodeGear bajo el descriptivo nombre de Delphi for PHP.

Delphi for PHP

Desde luego, CodeGear ha logrado que Delphi for PHP no sea simplemente un avanzado editor de PHP, sino que ha aprovechado su amplia experiencia en IDE para construir un completo entorno de desarrollo bajo este lenguaje de programaciA?n orientado a crear pA?ginas Web. Con ello ha introducido el concepto RAD, Rapid Application Development, para el lenguaje PHP, dotando a los programadores de una herramienta que permite crear cA?digo de forma mA?s flexible y rA?pida.

Mientras que Delphi utiliza como lenguaje el Object Pascal y estA? orientado a crear formularios, Delphi for PHP crea pA?ginas HTML. Por lo demA?s el modelo funcional permanece muy similar, colocando componentes, como imA?genes y texto en la pA?gina, y modificando luego sus propiedades y eventos asociados. Sin descuidar el empleo de cA?digo HTML o JavaScript dentro de las mismas pA?ginas.

Hay un buen nA?mero de componentes distintos, que se gestionan desde una paleta en la cual estA?n agrupados por categorA�as: Standard, Additional, Advanced, Data Access, Data Controls, Forms, etc. TambiA�n hay una potente gestiA?n de plantillas, templates, que permiten heredar el diseA�o de una pA?gina para crear otra u otras nuevas, con lo que si se cambia la pA?gina madre, todas las correspondientes hijas tambiA�n se modifican adecuadamente.

Y, por si fuera poco, el propio IDE estA? abierto para instalar nuevos componentes de terceras partes, asA� como plugins, para facilitar la agregaciA?n de nuevas prestaciones, con lo que no hay lA�mite para las posibilidades de ampliaciA?n. Hay un CDK (Component Development Kit) que se usa para crear componentes personalizados y luego instalarlos en el IDE.

El entorno de desarrollo aporta interesantes ventajas a la hora de crear y modificar el cA?digo. Por ejemplo, a nivel del interfaz visible se cuenta con capacidad para:
– DiseA�ar interfaces arrastrando y soltando componentes en las pA?ginas
– Establecer propiedades para personalizar el diseA�o
– DiseA�ar interfaces mezclando componentes HTML o componentes que simulan componentes de escritorio

El diseA�o visual puede ser realizado utilizando componentes o plantillas HTML en las que podemos insertar nuestros componentes, con lo que nos beneficiamos de lo mejor del diseA�o grA?fico y de lo mejor de la creaciA?n de aplicaciones orientadas a eventos y basadas en componentes.

GestiA?n de mA?dulos y bases de datos

Esta potencia de diseA�o tambiA�n abre la puerta para usar el producto de cara a crear un interfaz de aplicaciones de escritorio. AsA�, aparte del interfaz de aplicaciA?n web, se logra el diseA�o de interfaces de aplicaciones que emulan aplicaciones de escritorio.

((La potencia del diseA�o permite crear interfaces que emulan las aplicaciones de escritorio))

Dentro de una aplicaciA?n Web se logran tener ventanas (normal y modales) e incorporar en su interior contenidos HTML. Sobre esto se puede poner encima cualquier control VCL, y se dispone de PageControls, Grids, ListViews, ButtonBars, ToolBars, etc, para completar el diseA�o grA?fico y funcional de la pA?gina.

Para los mA?dulos de datos se sigue un proceso parecido, excepto que se trata de pA?ginas no visuales, que contienen componentes no visuales. Esto sirve para aislar toda la lA?gica de negocio de su aplicaciA?n en un A?nico sitio, y tambiA�n resulta A?til para centralizar hojas de estilo. El XML de un datamodule puede ser utilizado como un fichero de configuraciA?n, ya que almacena en su interior las propiedades de conexiA?n de los componentes Database.

((El acceso por defecto a base de datos se hace utilizando ADOdb))

El acceso por defecto a base de datos se hace utilizando ADOdb. Esta es una librerA�a opensource, 100% PHP, que proporciona una capa de abstracciA?n sobre diferentes tipos de base de datos. Actualmente soporta MySQL, Oracle, Microsoft SQL Server, Sybase, Sybase SQL Anywhere, Informix, PostgreSQL, FrontBase, SQLite, Interbase (Firebird y Borland), Foxpro, Access, ADO, DB2, SAP DB y ODBC, pero se pueden desarrollar mA?s drivers.

Funcionalidades avanzadas

La VCL para PHP ha sido especA�ficamente diseA�ada para integrar cA?digo ya existente, ademA?s de crear nuevos proyectos. Los componentes pueden ser a�?envolturasa�? sobre el cA?digo existente y proporcionar un interfaz de diseA�o para trabajar en el IDE. Cualquier cA?digo PHP que proporcione una salida, incluso un grA?fico, se puede integrar en el IDE rA?pidamente y, una vez integrado, se puede reutilizar fA?cilmente.

El entorno tambiA�n contempla el empleo de eventos, tanto de servidor como de cliente. Los eventos de servidor son ejecutados en el A�ste y el lenguaje del cA?digo es PHP, mientras que en el navegador se ejecutan con cA?digo de Javascript. Ambos tipos de eventos se pueden asociar en el IDE.

((Los componentes pueden utilizar Ajax para proporcionar una experiencia mA?s completa al usuario))

Adicionalmente se cuenta con integraciA?n de tecnologA�a AJAX (Asynchronous JavaScript And XML). Los componentes pueden utilizar Ajax para proporcionar una experiencia mA?s completa al usuario. Mediante estas librerA�as se pueden hacer llamadas sA�ncronas o asA�ncronas. Es admisible el empleo de cualquier librerA�a Ajax, e inicialmente se proporcionan dos: xajax y qooxdoo RPC. Xajax proporciona modificaciA?n automA?tica del DOM de la pA?gina, lo que facilita la interacciA?n, evitando el refresco completo de pA?ginas.

(

VCL para PHP

– Diagrama de clases
– OO y PHP 5
– Reusable y expandible
– Persistencia de sesiones
– Interfaz para aplicaciones Web
– Ficheros de recursos como DFM
– Herencia de pA?ginas
– Motor de plantillas
– Piezas visuales
– Interfaces aplicaciones escritorio
– MA?dulos de datos
– AbstracciA?n de base de datos
– Acceso nativo a InterBase
– Soporte de diseA�o en el IDE
– Eventos de servidor y eventos Javascript
– IntegraciA?n de scripts de terceros
– IntegraciA?n con Ajax
– Servicios Web
– InternacionalizaciA?n y LocalizaciA?n
– 100% open source, licencia LGPL)]

La InternacionalizaciA?n y localizaciA?n de las aplicaciones estA? soportada, mediante la propiedad Language del componente Page. Para que el mecanismo sea mA?s eficaz se almacenan los cambios diferenciales, y se cuenta ademA?s con un asistente para extraer las cadenas de texto del cA?digo fuente. AsA� mismo se dispone de soporte para Gettext, usando ficheros .po.

De igual forma, y de cara a suministrar la adecuada funcionalidad para crear avanzadas soluciones web, el entorno tambiA�n estA? preparado para crear servicios web que se desarrollan utilizando el componente Service. Con A�ste componente se logra la publicaciA?n de cualquier funciA?n o mA�todo de clase, con soporte para tipos complejos de datos.

La WSDL se genera automA?ticamente y el servicio tiene un interfaz que se integra con cualquier cliente compatible, como, por ejemplo Delphi. De igual forma se pueden consumir servicios Web en las aplicaciones generadas.

Totalmente Open Source

La VCL para PHP es una librerA�a, escrita A�ntegramente en PHP, que proporciona los mecanismos y clases para desarrollar componentes PHP e integrarlos en un IDE. Los componentes pueden reutilizar cA?digo PHP existente y se han utilizado librerA�as opensource como ADOdb y qooxdoo.

((Se ha optado por una licencia LGPL, que permite usar la librerA�a en cualquier tipo de aplicaciA?n, tanto si es de fuente abierta como comercial))

La licencia utilizada es LGPL, que le permite usar la librerA�a en cualquier tipo de aplicaciA?n, tanto si es opensource como comercial. En palabras de su creador, JosA� LeA?n, a�?Publicando la librerA�a bajo OpenSource, devolvemos a la comunidad PHP una librerA�a que proporciona un estA?ndar de desarrollo de componentesa�?. AdemA?s, VCL para PHP es un proyecto vivo, que acepta contribuciones en forma de componentes, mejoras, documentaciA?n, etc y proporciona el mismo modelo de negocio para desarrolladores de componentes.

La pA?gina del proyecto es [http://sourceforge.net/projects/vcl4php 

Etiquetas

Noticias relacionadas

Comentarios

No hay comentarios.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

Debes haber iniciado sesión para comentar una noticia.