Separación de la presentación: Plantillas CI-2413 Desarrollo de aplicaciones para Internet.

Slides:



Advertisements
Presentaciones similares
Tipos de software y su desarrollo
Advertisements

Desarrollo de Sitios Web
CI-2413 Examen. Pregunta 1 Respuesta 1 - a n La meta principal de todo sitio es maximizar el número de visitas al sitio. Esto debe ser considerado en.
PROGRAMACIÓN Un lenguaje de programación es un idioma artificial, creado y diseñado por el ser humano, para expresar algoritmos que pueden ser llevados.
Introducción a JavaScript (js)
Normalizaciones de Bases de Datos
PHP: Acceso a Bases de Datos
ZOPE CI-2413 Desarrollo de aplicaciones para Internet.
CI-2413 Corrección del Examen. Pregunta 1 Escriba las siguientes páginas: hola.php, hola.asp y hola.jsp. Estarán escritas con los modelos de PHP, ASP.
Unidad 1 DISEÑO DE ALGORITMOS ING. Nelwi Baez. MSC
Tecnologías para desarrollo de aplicaciones web. Un caso de uso
Capacitación sobre terminología web.
Modelando aplicaciones
Arquitectura Enfoque modular. Separación de formato y contenido.
PHP-MYSQL OPERADORES EN PHP
Instructor :LIC. Jairo Flores de la o
SERVIDOR DE CONTENIDOS
Framework Hexápodo PHP fácil, rápido y sin dolor
HERRAMIENTAS DE DISEÑO WEB
POO (Programación Orientada a Objetos)
DISEÑO DE PAGINAS WEB Las páginas Web son documentos de hipertexto y multimedia. Son documentos multimedia que incorporan imágenes, videos, animaciones,
Diseño del título Subtítulo. Diseño del título y el contenido con lista Agregue la primera viñeta aquí Agregue la segunda viñeta aquí Agregue la tercera.
Introducción al desarrollo de proyectos RIA.
M E N U I N I C I A L PARTES PC PERIFERICOS C P U SOFTWARE 1 johnbonilla.es.tl.
Ingeniero Anyelo Quintero
Que son herramientas ofimáticas breve repaso de Word , PowerPoint.
Gestión de Contenido Electrónico CONCEPTOS DE INFOPATH De Andrés Concha Bucaram.
01. Tema Tema Tema Tema Tema Tema 6 Contenidos.
FUNDAMENTOS DE PROGRAMACIÓN
DESARROLLANDO TEMPLATES PARA JOOMLA! 1.5 Ing. Edwin Rolando Paredes Calderón. Comercio Electrónico.
SQL SERVER Reporting Services
 El primer navegador Web incluía un lenguaje de estilo interno que utilizaba dicho navegador para mostrar las páginas HTML.  Sin embargo estos primeros.
InfoPath Ventajas y Uso.
Una base de datos es un “almacén” que nos permite guardar grandes cantidades de información de forma organizada para que luego podamos encontrar y utilizar.
Motor RPG Cristóbal Troncoso. Objetivos Una persona que no sepa programar pueda crear su propio juego de rol a través de editores de niveles y editores.
Copiando y pegando archivos enteros Programación en Internet II.
Ingeniería en Sistemas de Información Diseño de Sistemas (3K1)
APLICACIÓN EN VISUAL BASIC
Profesora: Gabriela Pichardo Grupo: 305 Alumnas: Karla Janet Hernández Corona y Alison Alarcón Sánchez Trabajo: Investigación de conceptos.
Lenguajes de Programación
Planificación de grandes proyectos de creación de aplicaciones Web.
El modelo de análisis tiene como objetivo generar una arquitectura de objetos que sirva como base para el diseño posterior del sistema. Dependiendo del.
Paso a paso para llevar un blog que incluya artículos, imágenes y video.
Introducción al Lenguaje. ¿ Qué es PHP ? O Hypertext Pre-processoes (PHP) es un lenguaje de "código abierto" interpretado, de alto nivel, embebido en.
DIEGO MADARRIAGA BRIEVA DARIO DIAZ PEÑALOZA ANDERSON ACEVEDO RIOS.
MANTENIMIENTO DE EQUIPOS DE COMPUTO Incluye la instalación de los programas básicos que son: Paquete de office como word,exel,power point etc. Ccleaner.
Anthony Villalba 1° “A”. ¿Qué es WordPress? Es un sistema de gestión de contenidos o CMS (por sus siglas en inglés, Content Management System) enfocado.
ALUMNO: CHIMAL MOSSO MARCO ANTONIO Marín González Luis Alberto MATERIA: T.I.C. III.
UNIVERSIDAD LATINA (UNILA)
UNIVERSIDAD TECNOLÓGICA ECOTEC. ISO 9001: Ing. Ángela Yanza Montalván, M.Sc. Mg. DOCENTE UNIVERSIDAD ECOTEC FACULTAD DE CIENCIAS COMPUTACIONALES.
Naime Cecilia del Toro Alvarez
[Beca Colaboración 2014] Iñigo Ezcurdia Aguirre.  OrlaOnline pretende ser un servicio online que permita a sus usuarios la creación de orlas junto a.
HTML. INTRODUCCIÓN A LOS MARCOS HTML Los marcos HTML permiten presentar documentos con vistas múltiples, que pueden ser ventanas o subventanas independientes.
 Curso básico de Dreamweaver MX (1)  Qué es Dreamweaver MX  Dreamweaver MX es un software fácil de usar que permite crear páginas web profesionales.
Colegio de Bachilleres Plantel 13 Xochimilco - Tepepan
Support.ebsco.com EBSCO Discovery Service Recurso de Tutoría.
Tecnologías Emergentes y los Negocios Unidad 4 – Diseño de Sites.
ELEMENTOS DE LA WED. Una página web es una fuente de información adaptada para la World Wide Web (WWW) y accesible mediante un navegador de Internet.
GUIA DE CSS 3 BASICA AUTOR: CARLOS BERBECI QUE ES CSS3 ? CSS es un lenguaje para definir el estilo o la apariencia de las páginas web, escritas con HTML.
UNIDAD I 1.1 Conceptos y Aplicaciones de la hoja de cálculo
1. Sistema Integral de Comunicación, Control y Seguimiento de la Vigilancia Epidemiológica Fitosanitaria.
Diseño de una Base de datos. BASE DE DATOS. Es el conjunto de informaciones almacenadas en un soporte legible por ordenador y organizadas internamente.
 Las funciones son un conjunto de instrucciones que realizan una tarea específica. En general toman unos valores de entrada, llamados parámetros y proporcionan.
INTEGRANTE: FLORES GODOY JUAN E. Grupo:308. Una tabla es una colección de datos sobre un tema específico, como productos o proveedores. Al usar una tabla.
Partes de la ventana Access
Por: Jorge Aguirre.  Microsoft InfoPath es una aplicación usada para desarrollar formularios de entrada de datos basados en XML.  Su primera publicación,
1. Introducción ¿Qué es HTML? HTML, siglas de HyperText Markup Language («lenguaje de marcado hipertextual»), hace referencia al lenguaje para la elaboración.
Aplicación web de tipo Ambiente Educativo Virtual, un sistema de gestión de cursos, de distribución libre, que ayuda a los educadores a crear comunidades.
Definición: Es un estilo de programación, su objetivo primordial es la separación de la capa de presentación, capa de negocio y la capa de datos. ARQUITECTURA.
Curso teórico-práctico de El código es poesía. Sistema de gestión de contenidos enfocado a la creación de Blogs (sitios web periódicamente actualizados).
Transcripción de la presentación:

Separación de la presentación: Plantillas CI-2413 Desarrollo de aplicaciones para Internet

Motores de plantillas Los motores de plantilla sirven para separar la presentación de la lógica. Es útil en la creación de aplicaciones en las cuales el diseñador gráfico y el programador de la aplicación juegan roles diferentes y muchas veces no son la misma persona. Además ayudan a hacer parte de la aplicación más mantenible. Son una parte importante de los administradores de contenido.

Motores de plantillas en PHP Los motores de plantilla entonces logran dos objetivos: –Separar la presentación de la lógica del negocio. –Separar código PHP complejo del código HTML. Sin embargo las plantillas han agregado ciertas complejidades: –Se crea una página de múltiples archivos. –Se agrega un nivel más de procesamiento.

Motores de plantillas en PHP Para PHP existen muchísimos motores de plantillas diferentes, al menos sesenta, y todos difieren en filosofía y técnica. Para algunos lo importante es separar el HTML de PHP y para otros lo importante es separar la lógica de presentación de la lógica del negocio. Además también se diferencia en cuanto a si utilizan expresiones regulares, str_replace, compilación, parseo léxico, etc.

Motores de plantillas en PHP Se recomienda leer el artículo: –Beyond The Template EngineBeyond The Template Engine Ejemplos de motores de plantillas: –Smarty –PHPlib –FastTemplate –Templeet

PHPlib: plantillas La clase template permite guardar el código HTML en archivos externos que están completamente libres de código PHP, pero que contienen campos de reemplazo. La clase provee funciones que pueden rellenar los campos con hileras arbitrarias. Estas hileras pueden ser muy grandes, v.b. tablas enteras.

Ejemplo de PHPlib PHPlib incluye la clase Template. Las sustituciones se definen con {}. Pequeño ejemplo: –<?php $t = new Template; $t->set_var("a", "definida como hugo"); $t->set_var("b", "el valor de a es {a}"); print $t->subst("b") ?>

Ejemplo de PHPlib 2 Ejemplo (pagina.ihtml): {TITULO_PAGINA} {TITULO_PAGINA} {SALIDA} Content {VARIABLE_INDEFINIDA}

Ejemplo de PHPlib 2 Ejemplo (caja.ihtml): {TITULO} {NUM} {NUM_GRANDE}

Ejemplo de PHPlib 2 Ejemplo PHP: <?php /* incluye la clase Template */ include("template.inc"); /* crea una clase */ $t = new Template(); /* $t->debug = 7; */ /* activa la depuración */ /* define dos archivos */ $t->set_file(array( "pagina" => "pagina.ihtml", caja" => caja.ihtml")); /* define una variable contenida en otra */ $t->set_block(caja", fila", filas"); /* define two variables manually */ $t->set_var(array("TITULO" => Prueba", TITULO_PAGINA" => PAGINA DE PRUEBA"));

Ejemplo de PHPlib 2 Ejemplo (continuación): for ($i=1; $i<=3; $i++) { $n = $i; $nn = $i*10; /* define valores para NUM y NUM_GRANDE */ $t->set_var(array("NUM" => $n, "NUM_GRANDE" => $nn)); /* reemplaza NUM y NUM_GRANDE en fila y * agrega el resultado a filas */ $t->parse(filas", fila", true); } /* reemplaza todas las variables en caja y pone el resultado en SALIDA * luego reemplaza todas las variables en pagina y pone el resultado en SALIDA */ $t->parse(SALIDA", array(caja", pagina")); /* imprime SALIDA */ $t->p(SALIDA"); ?> Variables indefinidas en SALIDA: <?php ", $t->get_undefined(SALIDA")); ?>

Ejemplo de PHPlib 3 Ejemplo más complejo: –Libro de visitas utilizando la clase Template de PHPlib.

Enlaces útiles de PHPlib php php3 Lib/

Ejemplo de Smarty Ejemplo pequeño de Smarty: –index.tpl {* Smarty *} Hola, {$name}! –index.php <?php // lee la biblioteca Smarty require('Smarty.class.php'); $smarty = new Smarty; $smarty->template_dir = '/home/bsolano/public_html/smarty/plantillas/'; $smarty->compile_dir = '/home/bsolano/public_html/smarty/plantillas_c/'; $smarty->config_dir = '/home/bsolano/public_html/smarty/config/'; $smarty->cache_dir = '/home/bsolano/public_html/smarty/cache/'; $smarty->assign('nombre','Braulio'); $smarty->display('index.tpl'); ?>

Ejemplo de Smarty Ejemplo con base de datos: –

Proyectos de Plantilla Existen muchos proyectos que tratan de realizar plantillas. Se puede encontrar una lista aquí: –A Complete List of PHP Template Engines?A Complete List of PHP Template Engines? Además el foro en el enlace anterior tiene una discusión interesante sobre XSLT como motor de plantillas.

Más allá de las plantillas y la abstracción de bases de datos Existen proyectos como: – Este proyecto desarrolla una utilería de componentes para aplicaciones web. Esta utilería pretende ser un marco de patrones modulares para la creación de aplicaciones web de alto rendimiento.