140 likes | 293 Views
Javier Vera Gómez. Comparativa JSP, PHP, CGI, Servlets, Applets. ¿Qué es?. Se trata de distintas formas de proporcionar características avanzadas a las páginas web (potencia de programación en alto nivel) Se basan en el esquema cliente-servidor .
E N D
Javier Vera Gómez Comparativa JSP, PHP, CGI, Servlets, Applets
¿Qué es? • Se trata de distintas formas de proporcionar características avanzadas a las páginas web (potencia de programación en alto nivel) • Se basan en el esquema cliente-servidor. • Hay otras tecnologías basadas sólo en el cliente y que también proporcionan dinamismo e interactividad al HTML. Ej. JavaScript, Applets
¿Qué aporta? • La navegación por internet ha evolucionado mucho. • Necesidades infinitas de los usuarios • Los diseñadores precisan herramientas para satisfacerlas, el HTML es estático e insuficiente. • Las herramientas han ido creándose y creciendo paralelamente. • El resultado de toda esta evolución es que nos encontramos con muchas formas distintas de crear páginas muy potentes (CGI, Applets, JSP, PHP, ASP, etc).
Nacen los CGI • Mediante el uso de los Common Gateway Interface (CGI), los desarrolladores pudieron acceder a un mundo nuevo, en el cual podían crear aplicaciones del lado del servidor, las cuales eran accedidas a través del navegador. • Supuso un gran avance, no obstante hay un gran problema, cada acceso implicaba la creación de un nuevo proceso en el servidor. Rendimiento bajo. • El rendimiento es un problema, distintos accesos a un mismo recurso simultáneos crean varios procesos.
Aparecen nuevas propuestas: PHP • 1994: PHP es un lenguaje creado por una gran comunidad de personas. El sistema fue desarrollado originalmente en el año 1994 por Rasmus Lerdorf como un CGI escrito en C que permitía la interpretación de un número limitado de comandos. El sistema fue denominado Personal Home Page Tools. • El PHP es, probablemente, el lenguaje que más evoluciona actualmente. Es de libre distribución y desde su versión 4, pese a ser un lenguaje interpretado, es bastante rápido.
Más sobre PHP • Es sencillo, de sintaxis cómoda, similar a C. • Rápido (pese a ser interpretado), multiplataforma, multitud de librerías reutilizables. • OOP. • Se puede instalar un servidor gratuito (Apache) en Linux. • Asociado a MySQL (BD de libre distribución) proporciona gran potencia en creación de páginas web, de forma rápida, fácil y barata (gratis). • Inconveniente: Algunos “bugs” de seguridad, solucionados rápidamente por la comunidad internacional de PHP.
Microsoft entra en juego • En 1996 lanza una propuesta para solucionar el tema de los CGI (el PHP todavía no era demasiado popular ni demasiado seguro). Nace el ASP (Active Server Pages). • La sintaxis y funcionamiento es parecido al de PHP • Ofrece la ventaja de utilizar el concepto de objetos COM • Gran problema: Sigue la política cerrada de MS, sólo se puede usar en plataformas Microsoft, con el consiguiente problema de portabilidad.
Java -> Servlets • Java nos aporta más soluciones mediante los Servlets, a estas alturas son muy populares los scripts del lado del cliente (el ya mencionado JavaScript, el VBScript de MS, etc). • Pero a veces es necesaria la intervención del servidor -> se inventan los Servlets. • Servlet: Aplicación del tipo CGI pero realizadas en Java, aprovechando mejor los recursos (uso de threads en vez de procesos para distintas solicitudes a un mismo servicio y uso de sesiones)
Lo último: JSP • Usar código HTML junto a código Java • Parecido al resto de lenguajes en sintaxis (PHP y ASP) • Separación entre presentación y contenido • Reuso de componentes basado en JavaBeans • Uso de XML en los scripts.
Todos contra todos • Los CGI fueron los primeros y por tanto son los más desfasados. • Enfrentados estan JSP, PHP y ASP. • PHP es gratuito 100%, fácil y rápido. Continuas revisiones y actualizaciones. Portable 100%.OpenSource • ASP. No es portable, no es OpenSource, no es gratis. Soporte Microsoft. • JSP. Propiedad de SUN, no es OpenSource, portable, muy seguro.
Conclusiones personales • Yo usaría PHP siempre y cuando la seguridad no sea muy primordial. No es que el PHP no sea seguro, sólo que siempre aparecen “bugs” de seguridad. De todas formas el PHP es rápido, fácil, gratis y opensource, que más se puede pedir? • ASP. No es tan potente como JSP o PHP, pero ahora con el empuje del “.NET” y los esfuerzos de Microsoft esta situación puede cambiar.
Conclusiones personales (2) • JSP: Esta muy estructurado y bien diferenciado todo, la posiblidad de interaccionar 100% con Java es muy potente. El problema es que requiere un servidor más potente que el de PHP, eso si, es bastante más seguro (o esa impresión me da a mi).
Panorama actual • Dependiendo de los intereses de las páginas web se pueden dar diversas situaciones: • Portales pequeños y sin animo de lucro: Migración masiva a PHP, por ser gratuito y por tener herramientas como PHPNuke mediante las cuales un torpe puede hacer maravillas. • Empresas y sitios “serios”: Mucho uso de ASP o tecnologías como ColdFusion de Macromedia, no obstante cada vez hay más “valientes” que optan por el PHP. El JSP está empujando muy fuerte en este sector también. • Páginas personales: Muchas de ellas no usan ninguna de estas tecnologías, suelen utilizar HTML estándar y como mucho alguna interactividad mediante JavaScript. • Pese a estar desfasado, el sistema CGI sigue usándose en muchísimos lugares. Es de los más seguros
Bibliografía • Básicamente el “google”. • Libros de ANAYA (guía práctica de JSP, guía de desarrollo de JavaBeans) • Serie práctica de PHP4, de la Prentice Hall. • Adjunto doc PDF que explica esto un poco más detallado