Tag: desarrollo web

Libro: Laravel Starter

Posted by – 2013-03-11

0908OS_covMe ofrecieron participar de una crítica abierta al libro Laravel Starter de Shawn McCool (The definitive introduction to the Laravel PHP web development framework) y acepté gustoso, ya que desde hace un tiempo estoy mirando al PHP-framework Laravel con cariño.

Poseo además el libro Code Happy de Dayle Rees, el primer manual que salió de Laravel. Me parece que el libro de McCool es más conciso y compacto que el de Rees. No puedo decir que uno sea mejor o peor, más o menos avanzados, no pretendo hacer una diferencia entre ambos. Ambos son regios manuales. Establecido esto, seguiré hablando del libro de McCool.


Configuración inicial.
El libro explica como arrancar desde cero, desde que te bajás el paquete que contiene la última versión de laravel.com. Está explicado -aunque no en profundidad- como configurar tu localhost para trabajar tu proyecto desde el browser por ejemplo en un http://pepito.dev

Base de datos.
Indica en donde está ubicado el archivo de configuración para el acceso a la BD (Laravel soporta varios motores, SQLite, MySql, PostgreSQL y SQLServer) y nada más ya, que dicho achivo de cfg es auto explicativo.
Explica el uso de las migraciones a través de la herramienta Artisan (command-line), a las cuales define como muy útiles para trabajar en colaboración con otros. Las migraciones nos permiten portar estructuras y datos cómodamente.
Habla de Eloquent, la implementación de ActiveRecord interno de Laravel, y del ruteo (URL’s).
Da un ejemplo bien desarrollado de creación de usuarios con Eloquent, y luego del controlador de usuarios.
Ejemplifica ABM’s con Eloquent y distintos tipos de relaciones de datos como ser uno-a-uno, uno-a-varios, varios-a-varios.

Vistas.
Trata del contenido dinámico dentro de las mismas (uso de template estilo Smarty pero supongo que mejorado/simplificado, llamado Blade).

Autenticación, validación, filtros.
Explica autenticación de usuarios, validación de datos, filtros (código que se ejecuta antes del ruteo).

Bundles.
Laravel tiene “paquetes” de código que funcionan a la manera de plugins, ponible y usables muy fácilmente. Como el CMS Pongo, un completo content management system distribuído de esta forma, como un bundle.

Considero que el libro de para un nivel de programador intermedio, definitivamente no es para principantes, pero si nos lleva de la mano en forma amena al principio del manejo de este interesante framework.

Como hacer que WordPress tome parámetros personalizados en la URL

Posted by – 2009-12-15

Supongamos que tuviéramos que manejar alguno de estos casos típicos en que necesitamos recibir parámetros, como ser “rubro”, “localidad”, o “nombre”, por ejemplo, utilizando “pretty permalinks”.

Esto es lo que tuve que hacer para que WP tome http://localhost/test/nombre/daniel/ es decir, “daniel”, el valor para “nombre”. More…

Medición de calidad del código

Posted by – 2009-10-20

El maestro wordpressero Ozh arranca con este auto-explicativo gráfico a desparramar tips para la programación de plugins para WordPress.

wtf-code

Siendo uno programador -que intenta respetar estándares de codificación en lo posible- es interesante ver la variedad de estilos, espaciados, costumbres y rarezas en el código ajeno.
Más raro y complejo aún es hacer un plugin para WordPress, pues hay que atenerse a las convenciones de éste además de la base de PHP.
Mañana tengo que hacer un plugin. Que lindo. Iupiiiiii. Me gusta eso.

Eclipse PDT: el IDE (“editor”) para desarrolladores PHP

Posted by – 2009-08-05

EclipseEclipse PDT (PHP Development Tools) es un IDE (Integrated Development Environment -> entorno de desarrollo integrado) fabuloso para programadores PHP. Un editor pesado, como Dreamweaver; pero no para hacer tablitas dibujando sino para programar. ;-)
La gracia fundamental es el autocompletado; tanto de todas las funciones naturales de PHP como así también de todas las clases que incorporemos.
Al poner el mouse sobre una variable colorea todas las ocurrencias de la misma en el área visible del editor.
Como todo editor decente al pararnos sobre el inicio o fin de un símbolo de control condicional/secuencia “{” o “}” marca su correspondiene inicio o fin según sea el caso. Igualmente con los paréntesis, lo que resulta utilísimo.
Permite incorporar plugins. En una ocasión usé Subversive, su propio SVN empluguineado.
Comentarios tipo phpDocumentor. Ej.:

/**
* example of basic @param usage
* @param bool $baz
* @return mixed
*/

Recomiendo su download, 141 Mb. en su versión 2.1/Galileo.
Agradezco a Agustín Quiroga el haberme hecho conocer esta poderosa herramienta.

A su nivel está NetBeans IDE 6.7; lo probé poco así que no voy a hacer comentarios. Aparenta ser su equivalente, por lo que vengo leyendo en foros y grupos de LinkedIn. 26 Mb.

Finalmente, y para no dejar a los editores livianos a un costado, cabe destacar que UltraEdit v15.10 (comercial, con versión de prueba) es piola para ediciones veloces ya que no pesa tanto como un IDE y tiene autocompletado, coloreado, y muchas de las virtudes de sus hermanos mayores.
Y mi liviano favorito, el que tengo asignado a la tecla F4 (editar) en mi Total Commander: PSPad 4.5.4 , el más liviano de todos con colores y cositas y hasta edición de archivos por FTP como su hermano comercial UltraEdit.

Nota posterior
La gente de Zend se compara con PDT y le sacude de lo lindo: Zend Studio 7.0 vs. PDT

Zend Studio is built on top of the Eclipse PDT (PHP Development Tools) project. A professional-grade IDE, Zend Studio provides many benefits over PDT, including faster development, faster problem resolution, comprehensive technical support and ongoing updates.

Hay una tabla larga de “features” en la que por supuesto gana casi todos los partidos Zend.

HTML Validator (Plugin para Firefox)

Posted by – 2009-06-24

HTML validatorPara desarrolladores web: hiper recomendadísimo el Html Validator, plugin para Firefox de Marc Gueury. Una excelente papita que me pasó hace tiempo ya el maestro Daniel Faure.

Te canta directamente apenas terminada de cargar la página web si es HTML-válida o no en la barra de estado de abajo. Al posar el mouse sobre el símbolo del resultado (verde redondo con símbolo de chequeado = ok = no hay errores, amarillo triangular con exclamación = warnings = errores no-horrorosos, rojo redondo con equis = critical-errors = sos un caballo, cazá el manual de HTML por lo que más quieras). :twisted:

Bueno, lo cierto es que en ningún caso es necesario cazar el manual de HTML, el soft al hacer click sobre el símbolo nos informa detalladamente dentro del mismo código HTML en donde está el error, en que línea, (alguna cosa sin cerrar, otra cosa que no debía estar ahí, algún símbolo de cierre que no se abrió nunca, abriste con <h2> y cerraste con <h4>, etc.). :idea:

Más que práctico, fundamental. ;-)

WAMP y XAMPP, populares entornos de desarrollo LAMP

Posted by – 2009-06-22

Desarrollar con PHP en modo local (“localhost”) es fantástico. Rápido, cómodo, y listo para ser subido a donde corresponda con todo testeado, exceptuando tal vez dos pavadas del entrono servidor si es el caso.

Estos paquetes traen Apache como servidor, PHP como lenguaje de script y MySQL como base de datos; sumado a algunas aplicaciones útiles como phpMyAdmin para crear/editar/borrar bases y tablas, exportar y sarandear datos como convenga más que cómodamente para un editor web.

Durante años usé para programar como LAMP (bajo Güindous) al popular XAMPP, pensando que era el mejor, el único, el más pulenta; y en una oportunidad en que algo no me funcionó con el entorno XAMPP me decidí a WAMP Server logo darle una oportunidad a WAMP, bicho LAMP que estoy usando desde hace algunos meses con placer.
Casi es lo mismo, un pequeño cambio, para mejor. Para empezar, arranca (sin molestar) todos los servicios, cosa que con XAMPP era un poco más fastidioso al no tenerlo en modo “arrancar los servicios al iniciar Windoze”, que yo prefería evitar.

De Wikipedia

LAMP

El acrónimo LAMP se refiere a un conjunto de subsistemas software necesarios para alcanzar una solución global, en este caso configurar sitios web o Servidores dinámicos con un esfuerzo reducido.

En las tecnologías LAMP esto se consigue mediante la unión de las siguientes tecnologías:

  • Linux, el sistema operativo;
  • Apache, el servidor web;
  • MySQL, el gestor de bases de datos;
  • Perl, PHP, o Python, lenguajes de programación.