apwd

download apwd

of 9

Transcript of apwd

  • Artculos tcnicos Grupo Danysoft:

    Aplicaciones Web con Delphi

    Por Pablo Reyes Grupo Danysoft noviembre de 2002 - (902) 123146

    www.danysoft.com

  • Aplicaciones Web con Delphi 7 Una de las novedades ms importantes en Delphi 7 es IntraWeb de la empresa AToZed Software. Este producto, disponible tambin para C++Builder, Kylix, JBuilder y .NET, es un marco de trabajo que simplifica el desarrollo de aplicaciones Web reduciendo la curva de aprendizaje al mnimo.

    La misma filosofa Una de las principales ventajas de IntraWeb es que nos permite utilizar las mismas herramientas que utilizamos para el desarrollo de aplicaciones de escritorio. Esto significa que un programador Delphi que normalmente desarrolla aplicaciones de escritorio y no conoce las tecnologas relacionadas con el desarrollo de aplicaciones Web como HTML, JavaScrip y dems, puede desarrollar en pocos das y con mnimo esfuerzo una interface Web para sus aplicaciones de escritorio.

    Aplicaciones de escritorio Normalmente cuando desarrollamos una aplicacin de escritorio lo que hacemos es crear uno o ms formularios, aadir componentes a ellos, escribir cdigo para algunos eventos y de vez en cuando presionar F9 para compilar y ejecutar y ver si todo funciona como esperamos. Este proceso es iterativo y muchas veces es necesario depurar para encontrar los errores que estamos cometiendo. Delphi es una herramienta de desarrollo madura y su entorno de desarrollo es una prueba de ello. Los programadores Delphi estamos acostumbrados al diseador de formularios (Form Designer), a la paleta de componentes, al inspector de objetos (Object Inspector), al editor de cdigo (Code Editor) y al depurador integrado. Tambin conocemos el lenguaje de programacin Delphi y los componentes de la VCL, sobre todo sus propiedades, mtodos y eventos.

    Aplicaciones IntraWeb Cuando desarrollamos una aplicacin Web con IntraWeb lo que hacemos es crear uno o ms formularios (que luego se convertirn en pginas Web), aadir componentes a ellos (que luego se convertirn en cdigo HTML), escribir cdigo para algunos eventos (que luego se convertirn en cdigo JavaScript o se ejecutarn del lado del servidor) y de vez en cuando presionar F9 para compilar y ejecutar y ver si todo funciona como esperamos. Este proceso es iterativo y muchas veces es necesario depurar para encontrar los errores que estamos cometiendo. Desarrollar una aplicacin Web con IntraWeb es prcticamente igual que desarrollar una aplicacin de escritorio. Utilizamos el mismo diseador de formularios, aadimos a ellos componentes de la paleta de componentes, utilizamos el inspector de objetos, el editor de cdigo y el depurador integrado de la misma forma que lo hacemos durante el desarrollo de aplicaciones de escritorio. Tambin utilizamos el lenguaje Delphi y componentes equivalentes a los de la VCL con las mismas propiedades, mtodos y eventos.

    Una imagen vale ms que mil palabras Como programadores que somos, queremos ver cdigo fuente e imgenes de pantalla para saber de qu nos estn hablando. Pues bien, veamos un ejemplo. Supongamos que queremos desarrollar una aplicacin de escritorio que le permite al usuario ingresar su nombre y al hacer clic en un botn que aparezca una ventana de dilogo con un mensaje de bienvenida.

  • Aplicacin de escritorio El formulario en cuestin sera similar al siguiente:

    El cdigo para el evento OnClick del Button sera similar al siguiente: procedure TForm1.Button1Click(Sender: TObject); begin ShowMessage('Hola ' + Edit1.Text); end; Al ejecutar la aplicacin el resultado obtenido debera ser similar al siguiente:

    Supongo que esta aplicacin no entraa ningn misterio para los programadores Delphi.

    Aplicacin Web con IntraWeb El formulario en cuestin sera similar al siguiente

    El cdigo para el evento OnClick del IWButton sera similar al siguiente: procedure TformMain.IWButton1Click(Sender: TObject); begin WebApplication.ShowMessage('Hola ' + IWEdit1.Text); end; Al ejecutar la aplicacin el resultado obtenido debera ser similar al siguiente:

  • A ver quin encuentra las siete diferencias. IntraWeb provee una modalidad mediante la cual no es necesario instalar la aplicacin en un servidor Web ya que la misma aplicacin tiene la capacidad de funcionar como un servidor Web, es decir, es capaz de aceptar requerimientos HTTP y responder con contenido HTML. Esta es la modalidad que he utilizado en este ejemplo. En la imagen de arriba puede verse el formulario de la aplicacin generada por IntraWeb desde el cual podemos abrir el navegador para comprobar el funcionamiento de nuestras pginas HTML. Esta aplicacin funciona como un servidor Web. Tambin es posible generar aplicaciones ISAPI y Apache.

    Componentes de la pgina IWStandard IntraWeb provee los siguientes componentes equivalentes a los de la pgina Standard de la VCL.

    IWApplet: permite incluir un objeto Applet en un formulario y acceder por cdigo a sus propiedades. IWButton, IWCheckBox, IWComboBox, IWEdit IWFile: permite cargar (upload) un archivo desde el navegador IWFlash: permite incluir un objeto Flash en un formulario IWHRule

    IWImage IWImageFile: similar a IWFile pero para archivos de imgenes

  • IWList, IWLabel, IWListBox IWLink: permite incluir un enlace en un formulario IWMemo, IWMenu

    IWRadioGroup, IWRectangle IWRegion: similar a ScrollBox IWText, IWTimer, IWGrid, IWTreeView IWURL: similar a IWLink con la diferencia de que permite especificar una direccin URL y cuando el

    usuario hace clic en el enlace se abre una nueva ventana del navegar que navega a dicha direccin.

    Componentes enlazados a datos tambin IntraWeb tambin provee una serie de componentes enlazados a datos equivalentes a los de la pgina Data Controls de la VCL. Estos componentes utilizan los mismos componentes de acceso a datos a los que estamos acostumbrados. Veamos un ejemplo. Supongamos que queremos desarrollar una aplicacin que permite navegar los registros de la tabla Animals.xml disponible con la instalacin de Delphi.

    Aplicacin de escritorio El formulario en cuestin sera similar al siguiente:

    Creo que no es necesario mostrar esta aplicacin en ejecucin ya que todos sabemos como se vera.

    Aplicacin Web con IntraWeb El formulario en cuestin sera similar al siguiente:

  • Al ejecutar la aplicacin el resultado obtenido debera ser similar al siguiente:

    Tal y como podemos hacerlo para aplicaciones de escritorio, con IntraWeb podemos generar una pgina que permita no slo navegar un conjunto de datos sino tambin insertar, editar y eliminar registros sin necesidad de escribir ni una sola lnea de cdigo. Una particularidad que tienen las aplicaciones Web es la gestin de sesiones. Tampoco

  • tenemos que preocuparnos de ello ya que IntraWeb se encarga de gestionar sesiones por nosotros de manera transparente.

    Componentes de la pgina IWData IntraWeb provee los siguientes componentes equivalentes a los de la pgina Data Controls de la VCL.

    IWDBCheckBox, IWDBComboBox, IWDBEdit, IWDBGrid, IWDBImage, IWDBLabel, IWDBListBox, IWDBLookupListBox, IWDBLookupComboBox, IWDBFile, IWDBMemo, IWDBNavigator, IWDBText

    Caractersticas adicionales IntraWeb provee una serie de componentes del lado cliente que permiten, entre otras cosas, trabajar con un conjunto de datos del lado cliente que el usuario puede navegar sin necesidad de generar requerimientos al servidor Web para obtener los datos del registro a mostrar. Tambin provee componentes para mostrar grficos de barras dinmicos, es decir, que el usuario pueda modificar su apariencia indicando, por ejemplo, qu datos desea ver, y rejillas dinmicas en las que el usuario puede ordenar y filtrar los datos por la columna que desee.

    Integracin de WebBroker y WebSnap IntraWeb provee componentes que permiten integrar las pginas generadas por IntraWeb con aplicaciones WebBroker o WebSnap. De esta forma es posible mantener aplicaciones de este tipo sin dejar de aprovechar las ventajas que ofrece IntraWeb.

    Conclusin IntraWeb permite desarrollar aplicaciones Web de la misma manera que desarrollamos aplicaciones de escritorio. Su curva de aprendizaje es mnima. Un desarrollador Delphi puede comenzar a desarrollar aplicaciones Web con IntraWeb en cuestin de das. Para instalaciones pequeas, IntraWeb nos da la posibilidad de desarrollar aplicaciones Web autnomas, es decir, que no requieran de un servidor Web. Para instalaciones ms grandes, podemos desarrollar aplicaciones ISAPI y Apache. Con IntraWeb podemos reutilizar los DataModules de nuestras aplicaciones de escritorio para dotarlas con una interfaz Web en tiempo record y mantener ambas aplicaciones compartiendo dichos DataModules sin tener que duplicar la lgica de datos. IntraWeb tambin est disponible en versin CLX para Kylix. .

    Para ms informacin El siguiente paso, puede ser revisar la documentacin que incluye Delphi o para avanzar ms rpido, asistir al curso que regularmente impartimos en el Grupo Danysoft sobre IntraWeb, del cual le incluimos el temario a continuacin:

    Cursos Delphi 7: Creacin de sitios Web con IntraWeb Este curso explica como crear sitios Web utilizando IntraWeb. IntraWeb provee un marco de trabajo para la creacin de sitios Web con herramientas similares a las utilizadas para la creacin de aplicaciones GUI (Graphical User Interface Interface Grfica de Usuario) tradicionales. Es decir, crear un sitio Web con IntraWeb es casi igual a crear una aplicacin GUI tradicional. IntraWeb no slo permite la creacin de un sitio Web completo. Tambin puede ser utilizado como herramienta para la creacin de pginas Web en aplicaciones WebBroker y WebSnap. Adems, IntraWeb provee componentes que facilitan la creacin de pginas Web dinmicas con una interface de usuario rica desde el punto de vista visual y funcional.

  • Objetivo El objetivo de este curso es capacitar al alumno para el desarrollo de sitios Web con pginas dinmicas sin tener que aprender a utilizar nuevas herramientas de diseo y ocultando la complejidad propia de la creacin de un sitio Web.

    Duracin La duracin de este curso es de 18 horas. Normalmente se imparte durante 3 das en jornadas de 6 horas cada una.

    Temario 1. Introduccin a IntraWeb

    1.1. Qu es IntraWeb? 1.2. El entorno de desarrollo IntraWeb

    2. Diseo de pginas simples 2.1. Componentes visuales ms comunes 2.2. Manejadores de eventos 2.3. Componentes visuales avanzados

    3. Diseo de pginas enlazadas a datos 3.1. Componentes enlazados a datos 3.2. Actualizaciones y gestin de errores

    4. Componentes avanzados 4.1. Componentes del lado cliente 4.2. Componentes de control

    5. Arquitectura de una aplicacin IntraWeb 5.1. El objeto WebApplication 5.2. Cmo gestiona IntraWeb un proyecto 5.3. IntraWeb como servidor Web

    6. Integracin con WebBroker y WebSnap 6.1. Creacin de pginas Web 6.2. Invocacin de pginas Web

    Para +informacin o conocer las prximas fechas en las que se impartir, visite http://www.danyform.com o remita un email a [email protected]