3. ¿Qué es un Framework?
Es un conjunto estandarizado de conceptos, prácticas
y criterios para resolver un problema.
En otras palabras, es una forma de organizarnos.
4. Ventajas de utilizar
un Framework
Escalabilidad y Mantenimiento.
Independencia de la lógica de negocio e interfaz
gráfica (MVC: Modelo, Vista, Controlador).
Desarrollo más rápido y mejor.
Librerías y códigos ya realizados.
Extensa documentación.
5. Ventajas de utilizar
un Framework
Independencia de base de datos.
Suelen seguir la mayoría de las mejores prácticas y
patrones de diseño.
Menos código.
Menos complejidad.
Más productividad.
Menos costos.
6. Desventajas de utilizar
un Framework
En ocasiones nos limitan por que no sabemos
modificar algo del núcleo o no realiza lo que
pensamos que debería.
No me siento realizado (no todo es mío).
Curva de aprendizaje mayor en algunos frameworks.
11. ¿Por qué usar ZanPHP?
Fácil de instalar y configurar.
Fácil de aprender.
Puedes crear casi cualquier tipo de aplicaciones Web.
Compatible con distintas plataformas.
Orientado a objetos.
12. ¿Por qué usar ZanPHP?
Utiliza varios patrones de diseño y las mejores
prácticas para producir código de mayor calidad.
Aplicaciones escalables y fáciles de mantener.
Documentación en Inglés y Español.
Es Software Libre.
18. Ejemplo de Modelo
class Agenda_Model extends ZP_Model {
public function __construct() {
$this->Db = $this->db();
$this->table = "contacts";
}
public function getContact($contactID) {
$this->Db->table($this->table);
$data = $this->Db->find($contactID);
return $data;
}
}
19. Ejemplo de Controlador
Class Agenda_Controller extends ZP_Controller {
public function __construct() {
$this->Templates = $this->core(“Templates”);
$this->helpers();
$this->Agenda_Model = $this->model(”Agenda_Model");
$this->Templates->theme(_webTheme);
}
public function index() {
print “Hi I’m the agenda controller”;
}
}
20. Estructura de una
Aplicación
Estructura básica de una aplicación:
-applications/
-blog/
-controllers
controller.blog.php
controller.comments.php
-models
model.blog.php
model.comments.php
-views/
-css/
comments.css
posts.css
view.comments.php
view.posts.php
21. Convenciones de desarrollo
1. Utilizamos camelCase para nombrar
variables, funciones y métodos
($firstName, getIP(), $this->getContact()).
2. Acrónimos, nombres propios, o palabras que deban
tener mayúscula se escriben tal cual
($HTML, $URL, $IP, etc.).
3. Definimos constantes con un guión bajo al principio
y se también se utiliza camelCase (_webName).
22. Convenciones de desarrollo
4. La primera letra de cada palabra en una clase se
escribe en mayúscula y se separan por guion bajo.
class Blog_Model extends ZP_Controller…
class Templates extends ZP_Load…
$this->Blog_Model->getPost($postID);
$this->Templates->theme(_webTheme));
5. Evitar el “Spanglish” en la codificación.
23. Documentación
Puedes acceder a la documentación del framework en
las siguientes direcciones.
En Español:
http://zanphp.com/wiki/
En Inglés:
http://zanphp.com/wiki/Homepage
24. Mejoras en ZanPHP v.2.4
Integración con bases de datos NoSQL: MongoDB.
Integración de servicios RESTFul.
Mejora y corrección de errores en el ActiveRecord.
Nueva clase Data para procesar la información.
Nuevo helper files.
Mejora en el dispatcher de URLs.
Se integraron excepciones.
Más de 150 errores fueron corregidos.
Integración con API de Twitter.
25. ¿Que novedades tendrá
ZanPHP v.2.5?
Integración con CouchDB.
Integración con API de Facebook.
Integración con Doctrine 2.
Integración de Memcached.
Scaffolding.
Integración con Framework de CSS: 960gs.
35. Comunidad
Los invitamos a formar parte de la comunidad
de PHPeros en México siguiendo a
@programasphp y a la comunidad de ZanPHP
siguiendo a @ZanPHP.