Nuevas tecnologías en torno al desarrollo de sistemas de información basados en Web, XML, JSP, ASP, PHP.

 

XML (Lenguaje extensible de etiquetas)

XML, (eXtensible Markup Lenguage), no es un lenguaje de marcado como el lenguaje HTML. XML es un meta-lenguaje que nos permite definir lenguajes de marcado adecuado a usos determinados.

Al ser XML un metalenguaje es un lenguaje para definir lenguajes. Los elementos que lo componen pueden dar información sobre lo que contienen, no necesariamente sobre su estructura física o presentación, como ocurre en HTML.

XML no ha nacido sólo para su aplicación en Internet, sino que se propone como lenguaje de bajo nivel (a nivel de aplicación, no de programación) para intercambio de información estructurada entre diferentes plataformas. Se puede usar en bases de datos, editores de texto, hojas de cálculo, y casi cualquier cosa que podamos pensar.

Características

*** Un documento XML tiene dos estructuras, una lógica y otra física. Físicamente, el documento está compuesto por unidades llamadas entidades. Una entidad puede hacer referencia a otra entidad, causando que esta se incluya en el documento. Cada documento comienza con una entidad documento, también llamada raíz. Lógicamente, el documento está compuesto de declaraciones, elementos, comentarios, referencias a caracteres e instrucciones de procesamiento, todos los cuales están indicados por una marca explícita. Las estructuras lógica y física deben encajar de manera adecuada:
Los documentos XML se dividen en dos grupos, documentos bien formados y documentos válidos.

       * Bien formados: Son todos los que cumplen las especificaciones del lenguaje respecto a las reglas sintácticas sin estar sujetos a unos elementos fijados en un DTD. De hecho los documentos XML deben tener una estructura jerárquica muy estricta y los documentos bien formados deben cumplirla.

        * Válidos: Además de estar bien formados, siguen una estructura y una semántica determinada por un DTD: sus elementos y sobre todo la estructura jerárquica que define el DTD, además de los atributos, deben ajustarse a lo que el DTD dicte.

*** Un documento XML se dice que está bien formado si encaja con las especificaciones XML de producción, lo que implica: Estructura jerárquica de elementos, Etiquetas vacías, Un solo elemento raíz, Valores de atributos, Tipos de letras, espacios en blanco, Nombrando cosas, Marcado y datos.

*** Los elementos XML pueden tener contenido (más elementos, caracteres, o ambos a la vez), o bien ser elementos vacíos.

*** Los elementos pueden tener atributos, que son una manera de incorporar características o propiedades a los elementos de un documento.

*** En XML 1.0, se definen cinco entidades para representar caracteres especiales y que no se interpreten como marcado en el procesador XML.

*** Existe otra construcción en XML que permite especificar datos, utilizando cualquier carácter, especial o no, sin que se interprete como marcado XML. La razón de esta construcción llamada CDATA (Character DATA) es que a veces es necesario para los autores de documentos XML, poder leerlo facilmente sin tener que descifrar los códigos de entidades. Especialmente cuando son muchos.

*** Los elementos son la base de las marcas XML, y deben ajustarse a un tipo de documento declarado en un DTD para que el documento XML sea considerado válido. Las declaraciones de tipo de elemento deben empezar con "<!ELEMENT" seguidas por el identificador genérico del elemento que se declara. A continuación tienen una especificación de contenido.

 

JSP Java Server Pages

Los servlets y Java Server Pages (JSPs) son dos métodos de creación de páginas web dinámicas en servidor usando el lenguaje Java. En ese sentido son similares a otros métodos o lenguajes tales como el PHP, los CGIs (common gateway interface), programas que generan páginas web en el servidor, o los ASP (Active Server Pages), un método específico de Microsoft. Sin embargo, se diferencian de ellos en otras cosas.

Para empezar, los JSPs y servlets se ejecutan en una máquina virtual Java, lo cual permite que, en principio, se puedan usar en cualquier tipo de ordenador, siempre que exista una máquina virtual Java para él. Cada servlet (o JSP, a partir de ahora lo usaremos de forma indistinta) se ejecuta en su propia hebra, es decir, en su propio contexto; pero no se comienza a ejecutar cada vez que recibe una petición, sino que persiste de una petición a la siguiente, de forma que no se pierde tiempo en invocarlo (cargar programa + intérprete). Su persistencia le permite también hacer una serie de cosas de forma más eficiente: conexión a bases de datos y manejo de sesiones, por ejemplo.

Los JSPs son en realidad servlets: un JSP se compila a un programa en Java la primera vez que se invoca, y del programa en Java se crea una clase que se empieza a ejecutar en el servidor como un servlet.

Características

*** Los JSPs es el enfoque de la programación: un JSP es una página Web con etiquetas especiales y código Java incrustado.

*** Las páginas JSP son básicamente páginas HTML con un poco de Java por medio, sirven, en principio, cualquier editor que comprenda la sintaxis HTML y/o XML; por ejemplo, el XEmacs. Algunos otros entornos, tales como el Sun ONE, una plataforma de desarrollo completa (que consume un montón de recursos), el Visual Age for Java; estos dos están escritos en Java y pueden ejecutarse en cualquier plataforma. El Dreanweaver Ultradev, sin embargo, existe sólo en versión Windows. Forté es gratuito, y los otros dos son de pago, aunque hay versiones de prueba de tiempo limitado que se pueden bajar.

*** La tecnología JSP usa Java como lenguaje de Script mientras que ASP usa VBScript o Jscript. Java es un lenguaje mas potente y escalable que los lenguajes de Script. Las páginas JSP son compilados en Servlets por lo que actúan como una puerta a todos los servicios Java de Servidor y librerías Java para aplicaciones http. Java hace el trabajo del desarrollador más fácil p. e. ayuda a proteger el sistema contra las "caídas" mientras que las aplicaciones ASP sobre sistemas NT son más susceptibles a sufrirlas, también ayuda en el manejo de la memoria protegiendo contra fallos de memoria y el duro trabajo de buscar los fallos de perdida de punteros de memoria que pueden hacer mas lento el funcionamiento de una aplicación.
 

 

ASP (Active Server Pages)

ASP es una tecnología desarrollada por MS para crear páginas web de contenido dinámico apoyándose en scripts ejecutados en el servidor. Básicamente una página ASP es una mezcla entre una página HTML y un programa que da como resultado una página HTML que es enviada al cliente (navegador).

Estos scripts o programas pueden en ASP ser escritos en uno de estos dos lenguajes de programación VBScript o JavaScript, pero el más extendido es VBScript, por eso centraremos todo este manual en VBScript y todas las posibilidades que él tiene.

ASP es una tecnología que pertenece a la parte servidor, por esto no es necesario que el cliente o navegador la soporte ya que se ejecuta en el servidor, sí que deberemos buscar un servidor que nos soporte este tipo de tecnología para que nuestras páginas corran correctamente.

Hay que destacar que ASP es una tecnología propietaria de Microsoft, y que el uso de esta tecnología implica el uso de los productos de Microsoft: MS Internet Information System y MS Windows en el servidor.

Características

*** Microsoft es el creador.

*** Se ejecuta en el servidor donde esta alojada la pagina Web.

*** El cliente (navegador del usuario) no nota diferencias con una pagina normal (HTML).

*** Por medio de ASP se puede tener acceso a bases de datos.

*** Para su implementación se utiliza lenguaje script como VBScript o JScript.

*** Se puede utilizar HTML y ASP en una misma pagina.

*** Es totalmente ampliable gracias a que es compatible con la tecnologia ActiveX.

*** Para procesar una página ASP no existe ninguna restricción especial en el lado del cliente, por lo que le es indiferente la utilización del navegador Internet Explorer o Netscape Comunicator; sin embargo, en el lado del servidor, es necesario un Servidor Web de Microsoft, utilizando el archivo ASP.DLL para interpretar el código, siendo el servidor más extendido el Internet Information Server (conocido como IIS).

    Estos son los posibles servidores de contenidos ASP, para plataformas Microsoft:

-Internet Information Server (IIS) 3.0  o superior (para sistema operativo NT)

 

-Personal Web Server (PWS)  Para utilizar el PWS nesesitamos tener Windows 95/98/Me, si tenemos como SO Windows NT o 2000 tambien podemos utilizar el PWS pero en este caso es preferible utilizar Internet Information Server (IIS) dado que es mas funcional y robusto. Pueden consegir el PWS desde el sitio de Microsoft o en los CDs de Instalacion de Windows 98, Visual Basic o Visual Studio.

 

El Personal Web Server y Internet Information Server son servidores que nos permite trabajar con paginas ASP en nuestra PC sin necesidad de subir las paginas ASP al servidor para realizar las pruebas, es decir, armamos todo el sitio en nuestra PC, lo probamos con el Personal Web Server (PWS) y si todo va bien lo subimos.

 

*** Los archivos .asp son archivos de textos normales, no es necesario ningún editor especial para crearlos, puede usarse cualquier editor que genere código Ascii. Un archivo .asp puede contener texto, código HTML, código ASP o cualquier combinación de estos. Si no  contiene código ASP se comporta como un archivo .html normal, por lo que no sería necesario en este caso usa codificación ASP.

***  Todos los archivos .ASP requieren una parte de proceso por el servidor, por lo cual no es conveniente convertir a .asp los archivos que no contengan código ASP, un ejemplo muy claro de estos, es que a través de código ASP se pueden realizar las validaciones de los formularios de un sitio Web, pero debemos recordar que este proceso se realiza en el servidor, así que no es una opción muy inteligente, la mejor opción sería realizar las validaciones de los formularios en JavaScript, debido a que el código en JavaScript se ejecuta en el cliente y de esta forma no le daremos un mal uso al servidor

*** La facilidad para conectar con una base de datos y extraer dinámicamente los datos de ella, visualizándolos en el navegador, es la utilidad más practicada de las páginas ASP, tales como el comercio electrónico, los portales, sedes personalizables y todas aquellas aplicaciones en las que el protagonista es la información dinámica.

 

PHP (Profesional Home Pages - Páginas Personales Profesionales)

Es un un lenguaje para la creación de páginas web. Es una solución para la construcción de Webs con independencia de la Base de Datos (aunque normalmente se usará MySQL) del servidor Web (aunque normalmente se usará Apache), válida para cualquier plataforma (Unix, Windows, Mac). El objetivo final es conseguir la integración de las páginas HTML con aplicaciones que corran en el servidor como procesos integrados en el mismo, y no como un proceso separado, como ocurre con los CGIs (aunque PHP también puede funcionar como un CGI) . Igualmente interesa que dichas aplicaciones sean totalmente independientes del navegador (lo que no ocurre con otros lenguajes basados en scripts como JavaScript o VisualBasic Script).

Para trabajar con PHP nos va a hacer falta:

  • Un editor para poder escribir los programas PHP, por ejemplo, FrontPage (o notepad) en windows y xemacs (o kwrite) en Linux

  • Un servidor de páginas web , que ejecute y muestre los programas realizados con PHP, nosotros usaremos Apache.

  • Una Base de Datos, donde podamos guardar y recuperar información. Esta parte es optativa, aunque en un proyecto real suele ser necesaria. Nosotros utilizaremos MySQL.

  • Un navegador, para ver las páginas generadas con PHP, por ejemplo, el Internet Explorer o el Netscape

  • Y, por supuesto, el PHP.

Características

*** PHP es un lenguaje rápido pese a ser interpretado, multiplataforma y dispone de una gran cantidad de bibliotecas para el desarrollo de aplicaciones Web.

*** Está basado en herramientas de software libre (Apache, MySQL, etc.), es decir, no hay que pagarlas; además proporciona los mecanismos para poder trabajar con casi cualquier base de datos (sea software libre o no) y servidor web.

*** Cuando pedimos a nuestro servidor web una página PHP, que no es sino un programa PHP que genera una página HTML, el servidor le pasa la página al interprete PHP y es el resultado lo que se le envía al cliente.

*** El interprete de PHP permite ser compilado y utilizado como un CGI. De esta forma cualquier servidor web que soporte CGI podría ejecutar páginas PHP. Nosotros en este tutorial lo vamos a usar como un módulo de Apache, la ventaja es que obtenemos una velocidad de ejecución bastante superior, asi como un consumo menor de recursos. En el caso de tener PHP instalado como un módulo del servidor Apache, este hereda todas las características del servidor.

*** PHP se contruyó para ser utilizado conjuntamente con la base de datos MySQL, pero actualmente soporta la mayoría de bases de datos (Oracle, Informix, ODBC, SQl Server, etc.). Nosotros utilizaremos MySQL, porque la interacción entre PHP y MySQL funciona a la perfección y además es software libre.

 

Diferencias

Diferencias entre JSP con ASP

Una ventaja de la programación en ASP, pues resulta bastante más fácil de aprender que JSP, por lo menos si no se tiene una experiencia previa en programación. Esto es debido a que Java es un lenguaje muy potente, pero un poco más complicado de usar porque es orientado a objetos y la manera de escribir los programas es más rígida.

 

Diferencias entre JSP vs PHP

Son lenguajes distintos, JSP va más por el camino de ASP.NET (en realidad es a la inversa...), es decir, permite utilizar un lenguaje potente orientado a objetos para ejecutar código en el servidor con todas las ventajas que eso conlleva. Además, probablemente la máquina virtual JAVA ejecute de forma más eficiente los JSP compilados que el PHP....

Por otra parte, PHP permite un desarrollo en principio más sencillo y rápido, aunque esto no tiene por qué ser necesariamente bueno (un desarrollo detenido y bien diseñado, como casi obliga a hacer java, permite una mayor reutilización de código y más fácil mantenimiento).

Respecto a que los Servlets no son más que CGIs... pues si, pero en JAVA... En realidad lo mejor es un CGI en C, pero ¿la portabilidad y la comodidad de desarrollo?...

 

Diferencias entre ASP.NET vs PHP

La comparativa que indicas de ms sobre ASP.NET y PHP es sencillamente absurda. Primero, como ya te indiqué PHP y ASP.NET son bastante distintos en filosofía aunque se puedan utilizar para las mismas cosas. La comparativa debería ser entre ASP.NET y la plataforma de desarrollo web JAVA (JSP+Java Enterprise Beans+Servlets+... etc). Además la empresa que compara está interesada en una de las partes....
 

Diseño de un sistema de información basado en WEB usando el lenguaje ASP, para una empresa ficticia en este caso vamos a tomar  tomar un modulo de una sistemas (MODELO DE NOTICIAS)

 

Hosted by www.Geocities.ws

1