Soluciones de Programación — Soluciones de Programación Web
© Politécnico Indoamericano 2015
Soluciones de Programación Web
Tabla de Contenido
1. Arquitectura de las aplicaciones Web 2. Programación basada en Joomla 3. Programación basada en Wordpress
Objetivo
Reconocer los componentes, elementos y herramientas necesarias para desarrollar entornos digitales por medio de software específicos que implementen diferentes lenguajes de programación
© Politécnico Indoamericano 2015 Nota Técnica preparada por el Politécnico Indoamericano. Este contenido es propiedad del Politécnico Indoamericano. Su difusión, reproducción o uso total o parcial para cualquier otro propósito queda prohibida. Todos los derechos reservados.
1
Soluciones de Programación Web
1. Arquitectura de las Aplicaciones Web Las aplicaciones web utilizan lo que se conoce como clientes livianos (light clients) los cuales no ejecutan demasiadas labores de procesamiento para la ejecución de la aplicación misma. Desde el punto de vista de la arquitectura se distinguen dos lados; uno es el cliente, donde se encuentra el usuario final utilizando la aplicación por medio de un navegador (como Internet Explorer o Mozilla Firefox). A través de este cliente web, el usuario interactúa con la aplicación localizada al otro lado, en el servidor, que es donde residen realmente los datos, reglas y lógica de la aplicación.
Una aplicación Web es proporcionada por un servidor Web y utilizada por usuarios que se Conectan desde cualquier punto vía clientes Web (browsers o navegadores).
La arquitectura de un Sitio Web tiene tres componentes principales:
a. Un servidor Web b. Una conexión de red c. Uno o más clientes
El servidor Web distribuye páginas de información formateada a los clientes que las solicitan. Los requerimientos son hechos a través de una conexión de red, y para ello se usa el protocolo HTTP. Una vez que se solicita esta petición mediante el protocolo HTTP y la recibe el servidor Web, éste localiza la página Web en su sistema de archivos y la envía de vuelta al navegador que la solicitó.
© Politécnico Indoamericano 2015 Nota Técnica preparada por el Politécnico Indoamericano. Este contenido es propiedad del Politécnico Indoamericano. Su difusión, reproducción o uso total o parcial para cualquier otro propósito queda prohibida. Todos los derechos reservados.
2
“Identificar las diferencias entre los modelos de arquitectura clienteservidor frente a otros modelos de arquitectura web”
Soluciones de Programación Web
Figura 1. Grafico representativo del modelo cliente- servidor Citado de: https://fundamentosredes.wikispaces.com/Tema+3.+Capa+de+aplicaci%C3%B3n Las aplicaciones Web están basadas en el modelo Cliente/Servidor que gestionan servidores web, y que utilizan como interfaz páginas web.
Las páginas Web son el componente principal de una aplicación o sitio Web. Los browsers piden páginas (almacenadas o creadas dinámicamente) con información a los servidores Web. En algunos ambientes de desarrollo de
aplicaciones Web, las páginas contienen
código
HTML y scripts dinámicos, que son ejecutados por el servidor antes de entregar la página.
Una vez que se entrega una página, la conexión entre el browser y el servidor Web se rompe, es decir que la lógica del negocio en el servidor solamente se activa por la ejecución de los scripts de las páginas solicitadas por el browser (en el servidor, no en el cliente). Cuando el browser ejecuta un script en el cliente, éste no tiene acceso directo a los recursos del servidor. Hay otros componentes que no son scripts, como los applets (una aplicación especial que se ejecuta dentro de un navegador) o los
© Politécnico Indoamericano 2015 Nota Técnica preparada por el Politécnico Indoamericano. Este contenido es propiedad del Politécnico Indoamericano. Su difusión, reproducción o uso total o parcial para cualquier otro propósito queda prohibida. Todos los derechos reservados.
3
Soluciones de Programación Web
componentes ActiveX. Los scripts del cliente son por lo general código JavaScript o VBSscript, mezclados con código HTML.
La colección de páginas son en una buena parte dinámicas (ASP, PHP, etc.), y están agrupadas lógicamente para dar un servicio al usuario. El acceso a las páginas está agrupado también en el tiempo (sesión).
Los componentes de una aplicación Web son: a. Lógica de negocio.
Parte más importante de la aplicación. Define los procesos que involucran a la aplicación. Conjunto de operaciones requeridas para proveer el servicio.
b. Administración de los datos.
Manipulación de BD y archivos.
c. Interfaz
Los usuarios acceden a través de navegadores, móviles, PDAs, etc. Funcionalidad accesible a través del navegador. Limitada y dirigida por la aplicación.
Las aplicaciones web se modelan mediante lo que se conoce como modelo de capas, Una capa representa un elemento que procesa o trata información. Los tipos son:
Modelo de dos capas: la información atraviesa dos capas entre la interfaz y la administración de los datos.
© Politécnico Indoamericano 2015 Nota Técnica preparada por el Politécnico Indoamericano. Este contenido es propiedad del Politécnico Indoamericano. Su difusión, reproducción o uso total o parcial para cualquier otro propósito queda prohibida. Todos los derechos reservados.
4
Soluciones de Programación Web
Figura 2. Grafico representativo del modelo de dos capas Citado de https://laurmolina7821.wordpress.com/1-1-3-aplicaciones-de-2-3y-n-capas/
Modelo de n-capas: La información atraviesa varias capas, el más habitual es el modelo de tres capas.
Figura 3. Grafico representativo del modelo n-capas Citado de: https://laurmolina7821.wordpress.com/1-1-3-aplicaciones-de-23-y-n-capas/
© Politécnico Indoamericano 2015 Nota Técnica preparada por el Politécnico Indoamericano. Este contenido es propiedad del Politécnico Indoamericano. Su difusión, reproducción o uso total o parcial para cualquier otro propósito queda prohibida. Todos los derechos reservados.
5
Soluciones de Programación Web
2. Programación Basada en Joomla
¿Qué es Joomla? Joomla es un Gestor de Contenidos para desarrollos web: es una especie de programa para gestionar páginas web. En inglés se denomina CMS (Content Management System). Existen diversos CMS´s de libre difusión (p.ej. Mambo, Drupal, Nucleus, etc.) y Joomla es uno de los más utilizados. Se basa en estándares propios de desarrollos web como XHTML, CSS, JavaScript y PHP.
Joomla es una aplicación web, es decir, no se ejecuta en nuestro equipo local sino en un servidor (aunque podemos hacer funcionar a nuestro equipo local como servidor). Una pregunta frecuente es si Joomla es un programa para diseñar páginas web como puedan ser el Dreamweaver o el Frontpage. La respuesta es NO. Es algo distinto.
Joomla es software libre: está desarrollado por una comunidad de usuarios que lo mejoran, actualizan y lo ponen a disposición para su uso gratuitamente. Permite publicar sitios web cuyos contenidos cambian continuamente, fáciles de administrar y ampliar sin necesidad de realizar una inversión económica en software.
Joomla se distribuye con unos contenidos básicos y a esta versión de base la denominamos “Joomla nativo”. Joomla nativo está bastante centrado sobre el formato de “artículo”, del que ya daremos detalles, pero admite muchos otros. Además se está continuamente ampliando a través de nuevos módulos y plantillas que se van publicando periódicamente.
© Politécnico Indoamericano 2015 Nota Técnica preparada por el Politécnico Indoamericano. Este contenido es propiedad del Politécnico Indoamericano. Su difusión, reproducción o uso total o parcial para cualquier otro propósito queda prohibida. Todos los derechos reservados.
6
Soluciones de Programación Web
Figura 4. Imagen del software joomla 3 Citado de: https://www.youtube.com/watch?v=QOQ0nHH4W64 Joomla permite tanto la publicación por parte del gestor de la página web como la interacción de los usuarios de la web a través de publicación de artículos, encuestas o colaboraciones en la gestión del sitio. Es quizás en webs de comunidades donde Joomla se ha hecho más popular. Es decir, aparte de permitirnos la publicación continua de contenidos nuevos, permite que una comunidad de usuarios interactúe y participe en el sitio. Esto no significa que un sitio Joomla cuente siempre con una comunidad de usuarios: algunos sitios Joomla son administrados por una única persona, aunque esto no es lo habitual.
Joomla es una solución indicada para personas que quieren publicar una web centrándose en los contenidos y dejando que el backup se base en un desarrollo de software libre. 3. Programación Basada en Wordpress
¿Qué es WordPress? WordPress es un sistema de gestión de contenidos (CMS) que permite crear y mantener un blog u otro tipo de web.
© Politécnico Indoamericano 2015 Nota Técnica preparada por el Politécnico Indoamericano. Este contenido es propiedad del Politécnico Indoamericano. Su difusión, reproducción o uso total o parcial para cualquier otro propósito queda prohibida. Todos los derechos reservados.
7
Soluciones de Programación Web
Con casi 10 años de existencia y más de un millar de temas (plantillas) disponibles en su web oficial, no es solo un sistema sencillo e intuitivo para crear un blog personal, sino que permite realizar toda clase de web más complejas.
WordPress es un sistema ideal para un sitio web que se actualice periódicamente. Si se escribe contenido con cierta frecuencia, cuando alguien accede al sitio web, puede encontrar todos esos contenidos ordenados cronológicamente (primero los más recientes y por último los más antiguos).
Es el sistema ideal para los principiantes, o para los que no tienen demasiados conocimientos técnicos. WordPress dispone de un sistema de plugins, que permiten extender las capacidades de WordPress, de esa forma se consigue un CMS más flexible.
Ya hemos respondido la pregunta sobre que es wordpress, vamos ahora a profundizar un poco más.
Figura 5. Recursos encontrados en el software WordPress Citado de: http://www.elegantthemes.com/blog/tips-tricks/creating-custompost-types-in-wordpress
© Politécnico Indoamericano 2015 Nota Técnica preparada por el Politécnico Indoamericano. Este contenido es propiedad del Politécnico Indoamericano. Su difusión, reproducción o uso total o parcial para cualquier otro propósito queda prohibida. Todos los derechos reservados.
8
Soluciones de Programación Web
¿Qué puedo hacer con WordPress? En muchas ocasiones se asocia WordPress con una herramienta que solo sirve para hacer blogs. Esto no es correcto: con WordPress podemos hacer un blog y mucho más: webs empresariales, tiendas online, periódico digital, central de reservas, etc. A continuación vamos a ver algunas de las cosas que podemos crear con este gestor de contenidos. Blog Es su función más conocida. WordPress incorpora, en su instalación por defecto todas las funcionalidades típicas de un blog: mostrar artículos en formato blog, opción de añadir comentarios a las entradas, posibilidad de organizar los artículos por categorías o etiquetas, etc. Además se podrán agregar en la web diversos módulos, llamados widgets en WordPress, habituales de los blogs: listado de categorías del blog, listado de etiquetas, buscador, lista de artículos más leídos, lista de últimos comentarios, etc.
Con todo ello se puede decir que posiblemente WordPress sea la mejor herramienta para crear un blog, con más razón si cabe si tenemos en cuenta su sencillez de manejo. Web corporativa WordPress puede servir perfectamente para crear una web empresarial, entendiendo como tal una página donde podamos informar sobre todo lo que concierne a nuestra empresa o negocio: quiénes somos, servicios, clientes, etc.
Gracias a la multitud de plantillas disponibles para WordPress podremos conseguir diseños muy variados para nuestra web, que podrían ir desde una web con diseño minimalista y que muestre poca a información, a webs completas que carguen muchos datos en cada página.
© Politécnico Indoamericano 2015 Nota Técnica preparada por el Politécnico Indoamericano. Este contenido es propiedad del Politécnico Indoamericano. Su difusión, reproducción o uso total o parcial para cualquier otro propósito queda prohibida. Todos los derechos reservados.
9
Soluciones de Programación Web
Podremos crear distintos apartados en nuestra web para organizar los contenidos. Estos no se limitan a páginas estáticas, o una página de blog, sino que gracias a los miles de plugins disponibles para WordPress podremos añadir más funcionalidades como formulario de contacto, foro, directorios, etc. Tienda online Aunque existan otros gestores de contenidos específicos para crear tiendas online (PrestaShop, Magento, etc.), WordPress puede ser una opción completamente válida, ya que dispone de varios plugins que nos permitirán incorporar una tienda online en nuestra web. De todos ellos, WooCommerce sería la opción más recomendable, aunque podemos elegir otro plugin. Gracias a WordPress y el plugin WooCommerce podremos disponer de una tienda online con todas las funcionalidades típicas que esperamos encontrar en una aplicación de este tipo: creación de productos ilimitada, organización de productos por categoría, posibilidad de agregar atributos a los productos, diversos sistemas de pago y envío, gestión avanzada de pedidos, etc.
Las funcionalidades de nuestra tienda no se acabarán con las que incorpore el propio WooCommerce, sino que podremos añadir cientos de nuevas opciones gracias a los plugins específicos para él: importación masiva de productos, portes de envío por código postal, pasarelas de pago con tarjeta de crédito, precios de producto por cantidad, generación de facturas, etc. ¿Cómo instalar WordPress? La facilidad de manejo de WordPress no solo se limita a la administración de contenidos, sino que el proceso de instalación es también muy sencillo, y solo se necesitarán unos minutos para completarlo.
En primer lugar debemos disponer de un lugar donde instalar nuestro WordPress. Podemos hacerlo en nuestro equipo local, si en él tenemos © Politécnico Indoamericano 2015 Nota Técnica preparada por el Politécnico Indoamericano. Este contenido es propiedad del Politécnico Indoamericano. Su difusión, reproducción o uso total o parcial para cualquier otro propósito queda prohibida. Todos los derechos reservados.
10
Soluciones de Programación Web
instalado un servidor web (por ejemplo, Apache) o hacerlo en un servicio de hosting. Solo con esta última opción podremos hacer que la web sea visible para otros usuarios. El servidor donde alojemos la web tiene que ser capaz de ejecutar PHP y soportar bases de datos MySQL. Además, existen otros requisitos mínimos que habrá que cumplir para que todo funcione correctamente.
Una vez que dispongamos de un lugar donde alojar nuestro WordPress, deberemos descargar el instalador de WordPress y descomprimirlo en la ruta donde se vaya a cargar la web. A continuación tendremos que crear una base de datos MySQL y un usuario con acceso a esa base de datos. Ahora deberemos abrir la página donde hemos subido los archivos de WordPress. Se mostrará un asistente de instalación en varios pasos, donde tendremos que introducir los datos de conexión a la base de datos, el nombre de nuestra web, y los datos del usuario administrador. Concluido este asistente tendremos la web lista para empezar a añadir contenidos y personalizarla.
Figura 6. Menú de herramientas de WordPress Citado de: http://www.svsitsolutions.com/wordpress-web-development/
© Politécnico Indoamericano 2015 Nota Técnica preparada por el Politécnico Indoamericano. Este contenido es propiedad del Politécnico Indoamericano. Su difusión, reproducción o uso total o parcial para cualquier otro propósito queda prohibida. Todos los derechos reservados.
11
Soluciones de Programación Web
Conclusiones
La arquitectura web es la disciplina encargada de estructurar, organizar y etiquetar el contenido, como también de establecer los puntos de acceso, sistemas de búsqueda y recuperación de información de cualquier aplicación soportada en la web
El software libre Joomla es un gestor de contenidos para desarrolladores web, el cual no requiere ser ejecutado en el ordenador ya que cuenta con un servidor propio.
El gestor de contenidos de WordPress es un software libre que se instala fácilmente en el ordenador de los usuarios y que cuenta con un gran contenido de herramientas que ayudan al diseñador en el desarrollo de entornos web
Referencias Bibliográficas
Didier Mazier. (2015). Joomla 3.3 Cree y administre sus sitios web. ENI Ediciones
Christophe Aubry. (2015). WordPress: Un CMS para crear y administrar sitios web. ENI Ediciones
Mario Pérez Montoro. (2009). Arquitectura de la Información en Entornos Web. Trea.
Mario G. Piattini. (2010). Fábricas de Software: Experiencias, tecnologías y Organización. RA-MA
© Politécnico Indoamericano 2015 Nota Técnica preparada por el Politécnico Indoamericano. Este contenido es propiedad del Politécnico Indoamericano. Su difusión, reproducción o uso total o parcial para cualquier otro propósito queda prohibida. Todos los derechos reservados.
12