Programación PHP orientada a objetos, con separación por capas y Smarty

18
Programación PHP orientada a objetos, con separación por capas y Smarty Daniel Correa Botero

description

Programación PHP orientada a objetos, con separación por capas y Smarty. Daniel Correa Botero. ¿Por qué usar PHP?. Puede ser desplegado en la mayoría de los servidores web y en casi todos los sistemas operativos y plataformas sin costo alguno. - PowerPoint PPT Presentation

Transcript of Programación PHP orientada a objetos, con separación por capas y Smarty

Page 1: Programación PHP orientada a objetos, con separación por capas y  Smarty

Programación PHP orientada a objetos, con separación

por capas y SmartyDaniel Correa Botero

Page 2: Programación PHP orientada a objetos, con separación por capas y  Smarty

Puede ser desplegado en la mayoría de los servidores web y en casi todos los sistemas operativos y plataformas sin costo alguno.

A diferencia de java, c++, entre otros; no se necesita que cada usuario lo tenga instalado en su computador.

Permite la conexión a diferentes tipos de servidores de bases de datos tales como MySQL, PostgreSQL, Oracle, ODBC, DB2, Microsoft SQL Server, Firebird y SQLite.

Indexa muy rapido en los buscadores.

¿Por qué usar PHP?

Page 3: Programación PHP orientada a objetos, con separación por capas y  Smarty

Esta muy bien documentado, existen miles de tutoriales en la web para hacer casi cualquier cosa.

Es un lenguaje de fácil entendimiento además de que se integra muy bien con otros lenguajes como javascript, css, entre otros.

Permita la programación orientada a objetos.

¿Por qué usar PHP?

Page 4: Programación PHP orientada a objetos, con separación por capas y  Smarty

Son divisiones que se le dan al código, para hacerlo mucho mas entendible y sostenible atreves del tiempo, esto garantiza un código reutilizable.

Algunas capas:- Gestor: capa donde van todas las consultas sql y la conexión a la base de datos.- Vista: capa donde va todo el código html- Objetual: capa donde van los objetos php, los atributos y funciones.

¿Que es la separación por capas?

Page 5: Programación PHP orientada a objetos, con separación por capas y  Smarty

Smarty es la herramienta clave para poder hacer la separación por capas, simplemente permite al programador separar el código php del html y usar una serie de etiquetas smarty.

Entre algunas de las ventajas: - Crear paquetes de variables globales (por ejemplo para el manejo de idiomas)- Activar un cache (el cual acelera la velocidad de la pagina)- Tener organizados los templates en un solo sitio, tener templates pre-compilados y mucho más.

¿Que es Smarty?

Page 6: Programación PHP orientada a objetos, con separación por capas y  Smarty

Es simplemente una forma de programar donde se usan clases, métodos, atributos, herencia, abstracción, polimorfismo y encapsulamiento.

Permiten al programador tener un código mas acorde con la realidad; ejemplo: persona tiene cedula, nombre y apellido.

¿Que es programación orientada a objetos?

Page 7: Programación PHP orientada a objetos, con separación por capas y  Smarty

Cada quien programa “como se le da la gana”

No hay una serie de lineamientos ni bases que permitan rehusar fácilmente el código de otro programador en nuestros trabajos.

Muchas veces ni siquiera podemos rehusar nuestro propio código.

Problemas actuales con la programacion Web

Page 8: Programación PHP orientada a objetos, con separación por capas y  Smarty

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

Los programados tienden a hacer del código un “vomito”.

Problemas actuales con la programacion Web

Page 9: Programación PHP orientada a objetos, con separación por capas y  Smarty

SI!

Usar joomla, wordpress, vbulletin, phpbb, pkpnuke u alguna otra plataforma nos esclaviliza.

Muchas veces se gasta mas tiempo aprendiendo a modificar un joomla que haciendo una pagina web completa desde 0.

¿Hacer todo desde 0?

Page 10: Programación PHP orientada a objetos, con separación por capas y  Smarty

Estas plataformas son fáciles de hackear si no tienen actualizadas a la ultima versión.Hackear un desarrollo desde 0 es muchísimo mas complicado.

Hay gente que utiliza estas plataformas simplemente para mostrar una misión, visión y contacto. Cosas que no gastan mas de 500 kb y joomla usa mas de 20 mb.

Hay gente que usa estas plataformas, y si no encuentran algún plugin en internet quedan “jodidos” y se tienen que acomodar a lo que encuentren.

¿Hacer todo desde 0?

Page 11: Programación PHP orientada a objetos, con separación por capas y  Smarty

Por que es gratis y por que la mayoría de los lenguajes de programación permiten la conexión con MySql. Y no más.

ORACLE es la mejor opción pero es muy costosa.

¿Por qué usar MySql?

Page 12: Programación PHP orientada a objetos, con separación por capas y  Smarty

Grafico php

Page 13: Programación PHP orientada a objetos, con separación por capas y  Smarty

Grafico Html

Page 14: Programación PHP orientada a objetos, con separación por capas y  Smarty

Sacan un desarrollo estándar de CRM muy completo y complicado y lo venden a todas las compañías sin basarse en las necesidades de cada una.

No actualizan a los últimos avances en desarrollo de software.

Precios muy altos. Acompañamiento muy pobre a los clientes. En la actualidad existe mucha demanda y

poca oferta.

Compañías en Colombia

Page 15: Programación PHP orientada a objetos, con separación por capas y  Smarty

Los ingenieros tienen ventaja en la teoría que se les da.

Los ingenieros tienen mas experiencia con el desarrollo de problemas lo cual les da ventaja a la hora de desarrollo de software o webs.

A los ingenieros se les enseña muy bien las clases, los objetos, los métodos actuales, muchos lenguajes diferentes y se les invita a mantenerse actualizado en los nuevos desarrollos; muchos técnicos ni siquiera saben que es una clase.

Diferencias entre técnicos y tecnólogos VS ingenieros

Page 16: Programación PHP orientada a objetos, con separación por capas y  Smarty

Sql injections DOM Grid tables AJAX Triggers SEO!! Optimización de consultas Excepciones Cronjobs

Algunos temas interesantes

Page 17: Programación PHP orientada a objetos, con separación por capas y  Smarty

Wysiwyg Datepickers Sliders Scripts para fb, g+, twitter DOMPDF MDB2 Pagination Errores 404

Google apps Google Analytics

Algunas herramientas interesantes

Page 18: Programación PHP orientada a objetos, con separación por capas y  Smarty

Gracias