19. • La palabra “Framework” empezó a ser “aceptada”
Friday, June 15, 12
20. • La palabra “Framework” empezó a ser “aceptada”
• Symfony, Zend, Cake, CodeIgniter
Friday, June 15, 12
21. • La palabra “Framework” empezó a ser “aceptada”
• Symfony, Zend, Cake, CodeIgniter
• Se satisfacen necesidades comunes de usuarios
Friday, June 15, 12
22. • La palabra “Framework” empezó a ser “aceptada”
• Symfony, Zend, Cake, CodeIgniter
• Se satisfacen necesidades comunes de usuarios
• Descargadas como un paquete entero
Friday, June 15, 12
25. • ¿Quieres usar solo una parte de un Framework?
Friday, June 15, 12
26. • ¿Quieres usar solo una parte de un Framework?
• Baja TODO el framework e intenta usar una parte...
Friday, June 15, 12
27. • ¿Quieres usar solo una parte de un Framework?
• Baja TODO el framework e intenta usar una parte...
• Excepto que tiene dependencias
Friday, June 15, 12
28. • ¿Quieres usar solo una parte de un Framework?
• Baja TODO el framework e intenta usar una parte...
• Excepto que tiene dependencias
• Se empieza a ver un cambio de mentalidad sobre frameworks
Friday, June 15, 12
40. ME GUSTA CONSTRUIR
COSAS PEQUEÑAS
• Me gusta construir cosas pequeñas con propósitos simples
Friday, June 15, 12
41. ME GUSTA CONSTRUIR
COSAS PEQUEÑAS
• Me gusta construir cosas pequeñas con propósitos simples
• Me gusta construir cosas que resuelvan problemas
Friday, June 15, 12
42. ME GUSTA CONSTRUIR
COSAS PEQUEÑAS
• Me gusta construir cosas pequeñas con propósitos simples
• Me gusta construir cosas que resuelvan problemas
• Me gusta construir cosas pequeñas que trabajen juntas para
solucionar problemas mas grandes
Friday, June 15, 12
43. Y MAS COSAS SOBRE MENOS
CODIGO
Friday, June 15, 12
44. Y MAS COSAS SOBRE MENOS
CODIGO
• Quiero escribir menos código, no mas
Friday, June 15, 12
45. Y MAS COSAS SOBRE MENOS
CODIGO
• Quiero escribir menos código, no mas
• Quiero código simple y sencillo de leer
Friday, June 15, 12
46. ¿Y TODO ESTO QUE TIENE
QUE VER CON SYMFONY2?
Friday, June 15, 12
63. <?php
use MonologLogger;
use MonologHandlerStreamHandler;
// crear un canal de log
$log = new Logger('name');
$log->pushHandler(
new StreamHandler(
'direccion/a/tu.log',
Logger::WARNING)
);
// añadir record al log
$log->addWarning('Foo');
$log->addError('Bar');
Friday, June 15, 12
70. IMAGINE
Libreria de manipulacion de imagenes para PHP 5.3+
Friday, June 15, 12
71. Redimensionar con GD
<?php
$width = //anchura final
$height = //altura final
$src = imagecreatefrompng('/direccion/a/imagen.png');
$dest = imagecreatetruecolor($width, $height);
imagealphablending($dest, false);
imagesavealpha($dest, true);
imagecopyresampled($dest, $src, 0, 0, 0, 0,
$width, $height, imagesx($src), imagesy($src));
imagepng($dest,'/direccion/a/redimensionada/image.png');
Friday, June 15, 12
72. Redimensionar con ImageMagick
<?php
$width = //anchura final
$height = //altura final
$image = new Imagick('/direccion/a/imagen.png');
$image->adaptiveResizeImage($width, $height);
$image->writeImage('/direccion/a/redimensionada/imagen.png');
Friday, June 15, 12
73. Redimensionar con Imagine
(GD)
<?php
$width = //anchura final
$height = //altura final
$imagine = new ImagineGdImagine();
$imagine->open('/direccion/a/imagen.png')
->resize(new ImagineBox($width, $height))
->save('/direccion/a/redimensionada/imagen.png');
Friday, June 15, 12
74. Redimensionar con Imagine
(ImageMagick)
<?php
$width = //anchura final
$height = //altura final
$imagine = new ImagineImagickImagine();
$imagine->open('/direccion/a/imagen.png')
->resize(new ImagineBox($width, $height))
->save('/direccion/a/redimensionada/imagen.png');
Friday, June 15, 12
75. Creación de thumbs
<?php
$imagine = new ImagineGdImagine();
$mode = ImagineImageInterface::THUMBNAIL_OUTBOUND;
//o modo
$mode = ImagineImageInterface::THUMBNAIL_INSET;
$imagine->open('/direccion/a/logo.png')
->thumbnail(new ImagineBox(100, 100), $mode)
->save('/direccion/a/logo/thumbs/logo.png');
Friday, June 15, 12