Video Tutoriales de Zend Framework
Después de tener algunos debates en Foros del web y listas de Zend Framework comprendí que los programadores seguían viendo a este framework como algo complejo y difícil de enteder. Hace varios años que trabajo con ZF y la verdad me molestaba un poco porque sé que es fácil, ordenado, cómodo y muy poderoso.
Durante todo este tiempo fue evolucionando hasta convertirse en el Framework referencia de PHP, es cierto, hay otros framework como Cake, Symfony y CodeIgniter pero ni siquiera Symfony alcanza el nivel de profesionalismo de ZF.
Cada vez que analizo una tecnología a implementar, siempre chequeo el respaldo de esta, ya sea partners, líder de desarrollo, filosofía, licencias, estándares aplicados, documentación, etc. Todas estas cosas son muy importantes para evaluar la calidad del proyecto y justamente Zend Framework tiene todo en los mejores niveles.
Equipo de desarrollo Zend
Una empresa atrás, como es Zend, la cual día a día esta creciendo no solo con las certificaciones, sino además con productos como Zend Server, Zend Studio, Zend Guard, etc. También cuenta con un grupo de desarrollo de mucha calidad y sobre todo muy activos y colaboradores.
Más de una vez le envié mails a Matthew O’Phinney y para mi sorpresa siempre respondió, también se le puede ver muy activo a él y a todos los desarrolladores en la lista de Zend Framework, esto parece trivial, pero realmente es muy importante. No solo prestan atención a la comunidad sino que siempre buscan la mejor forma de implementar una solución.
Recuerdo hasta hace poco que estaban con el proyecto Zend_Entity y el encargado se dio cuenta que no tenia sentido perder tiempo desarrollando algo desde cero, decidió recomendar la implementación de Doctrine como ORM para Zend Framework y no solo quedó ahi, además empezó a colaborar activamente en el core de Doctrine.
Documentación de Zend Framework
La documentación para mi es algo genial, algunos pueden pretender que también esté la versión en castellano, pero lamentablemente la documentación en nuestro idioma no esta completa, aunque hay un grupo de gente encargada de esta traducción la cual esta bastante avanzada. Hay una gran comunidad de gente bancando y disfrutando de este framework que hace que su popularidad aumente dia a dia.
Zend Framework no se queda solo con darte un marco de trabajo, además recomienda una forma de trabajar y una forma de escribir el código. Es común que en PHP cada uno implemente sus propios estandars, ZF trata de cambiar esto y que todos respetemos una forma de trabajo uniforme.
Pero todo lo que dije hasta ahora son palabras, pero la verdad es que basta con ir a su página, visitar la sección de partners y darse cuenta que a este proyecto lo bancan un montón de empresas importantes, como Adobe, Microsoft, Red Hat, Oracle, IBM, entre otras.
El objetivo de Zend Framework es brindar una herramienta que tenga las características de PHP, simple, con licencias amistosas, pero con la capacidad de brindar alta escalabilidad y potencia para crear aplicaciones Web 2.0. Por esto y algunas cosas más que van a ir descubriendo por su cuenta, Zend Framework es hoy en dia la mejor opción para el desarrollo de aplicaciones web con PHP.
Simplificando Zend Framework en 5 video tutoriales
Pasa el tiempo y sigo enamorado de este framework, por eso decidí intentar simplificarles en una serie de video tutoriales la curva de aprendizaje para que descubran y aprovechen este maravilloso framework. Se van a dar cuenta a lo largo de estos vídeos lo fácil y simple que se hace todo cuando tenes un Framework como Zend Framework.
Voy a hacer una primera entrega de 5 capítulos para abarcar la configuración y puesta en marcha de un proyecto base. En entregas futuras vamos a jugar un poco más tratando de aprovechar lo mejor posible este framework, usando Phpunits, Doctrine, Oauth, Webservices, Social Media, Sphinx, etc.
Setup, estructura y configuración Apache
Uno de los puntos que vi que cuesta mucho es el setup, crear la estructura del proyecto y configurar Apache, esto vamos a verlo en el primer vídeo:
Estructura de directorios y configuración del Layout
Superada la configuración inicial del proyecto, vamos a entender la estructura de directorios y configurar nuestro layout.
ZF Clase 2 – Estructura de directorios, vistas y layout from Pablo Morales on Vimeo.
Trabajando con archivos estáticos
Ahora es el turno de pasarle datos a la vista para que se dibuje de forma correcta y además vamos a ver como trabajar con archivos estáticos como imágenes, hojas de estilo, javascripts, etc.
Agregando datos desde Zend_Form
Ahora vamos a conectarnos a una base Mysql y agregar datos desde el modelo usando Zend_Form para crear formularios fácilmente.
Implementando paginador con Zend_Paginator
El el último vídeo de esta serie veremos como editar y borrar datos en su tabla de Mysql y además vamos a implementar un paginador fácilmente con Zend_Paginator.
Hola, muy bueno el post y los videos, a mi me agrada zend, pero he tenido algunos inconvenientes al tratar de generar controladores dinamicos y el manejo de subdominios, alguna idea para ello???? , gracias por el aporte 😀
Me parece genial la idea de los videotutoriales, estoy deseando verlos desde el inicio pero creo q no están bien colocados, el primero de configuración de apache habla sobre crear archivos estáticos y hace referencia a otro anterior. Me gustaría empezar desde el principio podéis subir todos o decirme donde encontrarlos?.
Gracias.
Hola, muchas gracias por el aporte.
Yo desarrollo mis sitios con CodeIgniter. La realidad es que nunca probé con Zend. Me dijeron que está muy bueno pero que tiene algunas complicaciones a la hora de implementar el sitio (subirlo al servidor, configurarlo), es cierto?
Yo personalmente desarrollo aplicaciones web muy pequeñas, me conviene migrar a Zend? Por qué?
Nuevamente gracias por el aporte.
¿Alguna opinión sobre el framework: PHP for Aplications (P4A)?
Hola Pablo, primeramente darte las gracias por tomarte la molestia de hacer estos video tutoriales tan buenos pero quisiera me pudieras ayudar con algo.
He seguido los pasos del primer video al pie de la letra pero cuando copio lo del servidor virtual de README.txt para pegarlo en news123 en sites-enables me dice que dicho directorio no existe lo he creado yo y creo el archivo news123 dentro de sites-enable pero cuando ejecuto el a2ensite en news123 me dice que el comando no ha sido encontrado, que debo hacer?
AYUDA.
creo que es importante comentar que uso una Mac con Snow Leopard.
Hola Segundo, fijate ahora, por ahi hubo un problema pero ahora se ven todos bien 😉
Sino pasate por mi blog, que ahi tienen un post para cada capitulo.
Por ahora los proximos los voy a subir en mi blog, capaz que maestros publica los proximos tambien 😉
Hola Ariel.
Fijate que al principio del post hago una introduccion de porque siempre uso ZF, para mi eso es suficiente para migrar a ZF.
En el primer video te muestro como configurar un proyecto en linux, subirlo a un servidor y configurarlo seria lo mismo.
Gisael tendrias que buscar el equivalente a configurar virtual host en Mac, la verdad es que no uso Mac, supongo que sera igual pero tenes que tener instalado APache2
Puede ser que aunque tengas apache instalado no tengas los comandos a2enssite o a2enmod, pero lo que pdoes hacer es buscar en tu archivo http.conf o apache.conf dentro de la carpeta apache, donde se hace el include de vhost
tendria que decir algo asi
Include vhost/
Si esto esta, seguramente este comentado con el “#” descomentalo y agrega la configuracion de tu vhost, dentro de ese archivo que acabas de incluir, reinicia apache y listo.
Esta excelente el tutorial, y todo me parece que esta hecho en vivo sin nada de preparaciones o algo ya hecho, eso es muy bueno. Felicitaciones nuevamente Pablo. Esperamos con ansias los siguientes videos.
Saludos
Gildus
Muy buenos videos, pero aún no me convence esto de hecho ninguno de php que he visto, conoces alguno como en ruby on rails o alguno que de verdad separe html de php sin nada de echos y que sea en .html algo como http://www.cristalab.com/tutoriales/creacion-y-uso-de-plantillas-o-templates-en-php-c132l/
Pero en algún framework, he probado akelos, yii, cake, codeigniter, smarty, symfony, Prado
Y hasta ahora ninguno me ha agradado y ahora he probado este y como que le falta para lo que busco me gusta el manejo de url amigables de wordpress; el manejo de aplicaciones de on rails con bases de datos, scafflod, los templates de la liga mencionada; y sobre todo el manejor de lo estatico de jade, stylus y coffeeScript.
Conoces algo que tenga algo de esto?
gracias
WordPress usa la base de datos para generar urls amigables. Cake es muy al estilo RoR, lo mismo que symfony. Los templates no varian mucho de lo que hace un echo, salvo usar algun cache. Scaffolding no tenes, pero es una decision mas que nada porque todavia no habia un ORM ahora con doctrine puede ser que eso cambie, pero la verdad es que tampoco es el gran avance. Con respecto al contenido estatico, lo podes manejar con esas herramientas :P.
Me parece que tienes que o extender el framework para que hago lo que vos queres, caso Scaffolding, js/css/html o usar otro lenguaje como Ruby, llegado el caso.
por defecto las url de Zend frameowork son bastante amigables, y es muy facil crear rutas dinamicas al estilo wordpress, sin necesidad de usar la base
Ahh y wordpress no es un framework.
Buen aporte los videos….espero los sigas manteniendo para sacarle provecho ya que recien entro al mundo del PHP…..hasta pronto…
Hola Pablo, primero: Genial tus ganas de ayudar a gente que comienza en el mundo de la programacion. Tengo algunas preguntas:
1. He configurado el Zend de una forma que encontre en esta direccion: http://otroblogmas.com/instalar-zend-framework-zend_tool-para-construir-proyectos-ubuntu/
Aunque no me convencio mucho por que ahora no me abre “localhost/xampp”. No se que habra pasado pero no me quiere servir, Aparte me boto el proyecto creado dentro de la carpeta del framewrok, osea, me dejo las carpetas regadas hay dentro, Un asco!!
No segui tus videos por que no me parece que este muy detallado el primer video por ejemplo para la configuracion del framw.. Soy un total novato con esto de Frameworks asi que disculpa. Lo que digo lo digo en la mejor manera y la mejor intencion. Asi que gracias de nuevo y espero tu respuesta.
Francisco
Hola Pablo, excelente post, tengo una pregunta al craer el proyecto no me agrega la carpeta layout, la cree manualmente pero al ingresar al sitio no la puedo visualizar, com opuedo arreglar esto.
Gracias.
Hola Fernando Maldonado, creo que debes revisar minuciosamente el primer video en el que Pablo establece “zf enable layout” para que se cree esa carpeta a partir del zend tool, porque te agrega algunas otras lineas extra por ejm en application.in para que funcione todo bien, yo también pasé desapercibida esa explicación, pero la tienes que activarla por el zend tool recuerdalo, saludos.
quiero agregar una acotacion…con el problema que tenia Gisael Gomez a mi me pasaba lo mismo… no podìa entrar a http://news123.local/ me daba error, pero despues investigando por otro lado, faltaba dalr una sentencia a a2enmod, era esta : sudo a2enmod rewrite
y a partir de alli el sitio me empezo a funcionar correctamente…este video turorial esta exelente gracias.. pablo por este aporte…