introducción a la programación web con php5

27
Introducción a la Programación web con PHP5 Diseño y Construcción de Productos de Software Daniel Correa Botero Jeferson David Ossa Universidad Nacional de Colombia Sede Medellín 2013

Upload: cathal

Post on 23-Mar-2016

58 views

Category:

Documents


2 download

DESCRIPTION

Introducción a la Programación web con PHP5. Diseño y Construcción de Productos de Software Daniel Correa Botero Jeferson David Ossa Universidad Nacional de Colombia Sede Medellín 2013. Herramientas para programar en el curso. Sistema operativo: W indows o cualquier otro X. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Introducción a la Programación web con PHP5

Introducción a la Programación web con PHP5

Diseño y Construcción de Productos de SoftwareDaniel Correa Botero

Jeferson David OssaUniversidad Nacional de Colombia

Sede Medellín 2013

Page 2: Introducción a la Programación web con PHP5

Herramientas para programar en elcurso

• Sistema operativo: Windows o cualquier otro X.• Servidor web: Apache.• Gestor de Base de Datos: MySQL.• Un lenguaje para páginas web dinámicas: PHP.

Para esto utilizaremos: Xampp, Lamp o Wamp Server

Page 3: Introducción a la Programación web con PHP5

Requisitos y Conocimientos adicionales

• Programación Orientada a Objetos.• SQL.• HTML.• CSS.• Smarty -para manejar la capa visual-.

Page 4: Introducción a la Programación web con PHP5

¿Por qué usar PHP?• Gratuito.

• Cualquier servidor barato de 30 a 40 US$ año corre PHP sin problemas.

• Permite POO.

• Miles de librerías, módulos, tutoriales y foros en la comunidad y en internet.

Page 5: Introducción a la Programación web con PHP5

¿Por qué usar MySQL?• Porque es gratuito y porque la mayoría de los

servidores lo traen incorporado por defecto. Y no más.

• Otras opciones que se integran con PHP: DB2, PostgreSQL, SQLite.

Page 6: Introducción a la Programación web con PHP5

¿Qué es separación por capas?Son divisiones que se le dan al código, para

hacerlo mucho más entendible y sostenible a través del tiempo, esto garantiza un código reutilizable y mayor eficiencia en la programación.

¿Cuántas capas usar?, ¿cómo dividir el código?, ¿qué incluir en cada capa?, ¿cómo aprovechar el uso de estas capas?. Esto lo aprenderemos a medida de que vaya transcurriendo el curso.

Page 7: Introducción a la Programación web con PHP5

¿Qué es Smarty? Smarty es una herramienta clave para poder hacer la separación por

capas. Simplemente permite al programador separar el código PHP del HTML mediante el uso de una serie de etiquetas Smarty.

Ventajas: • Restringe las operaciones que se pueden realizar en una vista.• Separación del código de presentación.• Tener organizados las vistas -templates- en un solo sitio. • Permite que un diseñador y un programador puedan trabajar al mismo

tiempo en archivos diferentes y sin verse afectados entre sí.

Page 8: Introducción a la Programación web con PHP5

¿Qué es POO? No es un lenguaje, no es una tecnología, es

simplemente una forma de programar donde se usan clases, métodos, atributos, herencia, polimorfismo, encapsulamiento.

Se transforma el mundo real en forma de objetos.

Permiten al programador tener un código más acorde con la realidad y más sencillo de entender; ejemplo: una persona tiene cédula, nombre y apellido.

Page 9: Introducción a la Programación web con PHP5

Problemas actuales con la programación Web

Se programa de forma ‘libre’ con tendencias a tener todo el código en el mismo archivo fuente.

No se siguen ‘buenas prácticas’ que permitan rehusar fácilmente el código de otro programador. Muchas veces ni siquiera podemos rehusar nuestro propio código.

La seguridad web pasa a un segundo plano y en realidad debería ser una prioridad.

Sin bases ni lineamientos el trabajo en equipo se vuelve muy complicado y al final una sola persona termina desarrollando todo el producto.

Page 10: Introducción a la Programación web con PHP5

Problemática en el Campus• Muchos trabajos de grado o desarrollos son

desechados al poco tiempo de ser entregados.

• Falta credibilidad en la escuela de sistemas en cuanto al desarrollo de aplicaciones y sitios web.

• Faltan materias o cursos en la parte de seguridad de web.

Page 11: Introducción a la Programación web con PHP5

¿Qué es un Framework ? Es un esquema (un esqueleto, un patrón) para el desarrollo y/o la

implementación de una aplicación.

Ventajas:- Mayor seguridad, agrupa prácticas y criterios para solucionar

problemas comunes.

- Acceso a tutoriales y documentación sobre como crear aplicaciones.

- El programador no necesita plantearse una estructura global de la aplicación, sino que el framework le proporciona un esqueleto que hay que "rellenar".

Page 12: Introducción a la Programación web con PHP5

Framework GEs un framework basado en el patrón de arquitectura G

(que a su vez esta basado en el MVC).

Características:- Uso de POO.- Uso de ORM (object-to-relational-mapping).- Árbol de carpetas simplificado.- Documentación detallada.- Muy liviano.- Implementación de Smarty.

Page 13: Introducción a la Programación web con PHP5

Arquitectura G

Page 14: Introducción a la Programación web con PHP5

G light• Es una versión muy muy básica de G (casi

como programar desde 0) que contiene:

- Una plantilla por defecto- Una clase ORM- Una clase objeto estándar- Un gestor de base de datos básico.- 2 archivos de configuración básicos.

Page 15: Introducción a la Programación web con PHP5

Ejemplo Smarty: Index.php

Page 16: Introducción a la Programación web con PHP5

Index.tpl

Page 17: Introducción a la Programación web con PHP5

Salida HTML generada

Page 18: Introducción a la Programación web con PHP5

Instalación de programas Wamp: http://www.wampserver.com/en/#download-wrapper Eclipse: http://www.eclipse.org/downloads/packages/eclipse-php-developers/heliosr Netbeans: http://netbeans.org/features/php/ Glight: https://www.dropbox.com/s/mi1g4d2bp6slicy/glight.zip

Notas: Para wamp recordar bajar Visual C++ 2010 SP1 Redistributable Package x86 o x64 un paquete que aparece en el mismo link de descarga de wamp y recordar en caso de usar skype: siempre abrir primero wamp y luego skype.

Para minimizar los warnings de wampserver hacer lo siguiente, dar clic en el icono de wampserver en la barra de inicio; luego pararse en la carpeta PHP y dar clic en php.ini, esto abrirá un archivo en bloc de notas, deben buscar la línea:error_reporting = E_ALL y sustituirla por error_reporting = E_ALL & ~E_NOTICE

Page 19: Introducción a la Programación web con PHP5

Instalación de programasUna vez configurado wampserver o xampp, descomprimimos el archivoque descargamos desde la web: glight.rar

Pasos para wampserver:1) Copiamos la carpeta glight dentro del directorio C:/wamp/www/2) Si la ruta de carpetas global no es C:/wamp/www/glight/ debido a que se instalo en otro

disco duro o con otro nombre, entonces debemos entrar a glight/configs/include.php y modificar la constante C_FULL_PATH por la ruta correspondiente.

Pasos para Xampp:1) Copiamos la carpeta glight dentro de: Aplicaciones ->Xampp -> htdocs2) Selecciona la carpeta templates_c (que se encuentra en la ruta glight/templates_c) y le

damos 'cmd + i’ o click derecho, obtener información (cmd + I) y donde dice compartir y permisos se debe poner a todos los usuarios: leer y escribir

3) Debemos entrar a glight/configs/include.php y modificar la constante C_FULL_PATH por la ruta de carpetas global.

Page 20: Introducción a la Programación web con PHP5

Instalación de programas• Finalmente usando NetBeans o Eclipse creamos

un nuevo proyecto PHP y seleccionamos la carpeta glight como fuente del proyecto y desde ahí podremos modificar el código fuente de la aplicación.

• Ingresamos desde el navegador a http://localhost/glight/index.php y deberíamos ver la aplicación corriendo.

Page 21: Introducción a la Programación web con PHP5

PHP5

INTRODUCCIÓN

Page 22: Introducción a la Programación web con PHP5

Hello World!

Page 23: Introducción a la Programación web con PHP5

Variables y Tipos

Page 24: Introducción a la Programación web con PHP5

Arrays

Page 25: Introducción a la Programación web con PHP5

Estructuras de Control

Page 26: Introducción a la Programación web con PHP5

Referencias• http://www.php.net/manual/es/• http://smarty.net • http://www.frameworkg.com• https://www.facebook.com/FrameworkG• http://www.w3schools.com/php/default.asp• http://www.codecademy.com/es/learn

Page 27: Introducción a la Programación web con PHP5

GRACIAS