desarrollo web eficiente
TRANSCRIPT
![Page 1: Desarrollo web eficiente](https://reader038.vdocuments.net/reader038/viewer/2022102322/547e13b4b4af9f877c8b4772/html5/thumbnails/1.jpg)
Desarrollo web eficiente…con CodeIgniter y HTML5
Por David Lima Cohen @limacohen
![Page 2: Desarrollo web eficiente](https://reader038.vdocuments.net/reader038/viewer/2022102322/547e13b4b4af9f877c8b4772/html5/thumbnails/2.jpg)
El problema• Programar != Estimar• Tareas repetitivas:
– Registrar dominio y configurar DNS– Crear servidor virtual (HTTP, DB, versionado, etc…)– Preparar entorno local– Implementar frameworks (PHP, HTML, CSS, JS)– Estructura común:
• Estilo, fuente y colores• Meta tags• Robots/Humans.txt• Sitemap• Favicon/Apple Touch icon
– Soporte cross-browser/os/device
![Page 3: Desarrollo web eficiente](https://reader038.vdocuments.net/reader038/viewer/2022102322/547e13b4b4af9f877c8b4772/html5/thumbnails/3.jpg)
Estimar bien.
• Medir el tiempo invertido:
Toggl: http://www.toggl.com/FogBugz: http://www.fogbugz.com/
Paymo: http://www.paymo.biz/FreshBooks: http://www.freshbooks.com/Tick: http://www.tickspot.com/
![Page 4: Desarrollo web eficiente](https://reader038.vdocuments.net/reader038/viewer/2022102322/547e13b4b4af9f877c8b4772/html5/thumbnails/4.jpg)
• Analizar nuestros tiempos (y su ROI)
• Entender nuestra capacidad de estimación
![Page 5: Desarrollo web eficiente](https://reader038.vdocuments.net/reader038/viewer/2022102322/547e13b4b4af9f877c8b4772/html5/thumbnails/5.jpg)
Resultado: un framework de trabajo
FogBugzCase Importer FogBugz Toggl
FogBugz Case Importer: http://bit.ly/FBCaseImporter
![Page 6: Desarrollo web eficiente](https://reader038.vdocuments.net/reader038/viewer/2022102322/547e13b4b4af9f877c8b4772/html5/thumbnails/6.jpg)
Implementación del framework
PHP:CodeIgniter
HTML5:Boilerplate
CSS: 960.gs
JS: jQuery
![Page 7: Desarrollo web eficiente](https://reader038.vdocuments.net/reader038/viewer/2022102322/547e13b4b4af9f877c8b4772/html5/thumbnails/7.jpg)
Undos infinitos: SVN
…o simplemente Dropboxhttp://www.dropbox.com/
http://subversion.tigris.org/
![Page 8: Desarrollo web eficiente](https://reader038.vdocuments.net/reader038/viewer/2022102322/547e13b4b4af9f877c8b4772/html5/thumbnails/8.jpg)
Agregando robots.txt y sitemap.xml
A modo referencial, dependiendo del sitio se pueden/deben actualizar manualmente o mediante una lógica particular.
![Page 9: Desarrollo web eficiente](https://reader038.vdocuments.net/reader038/viewer/2022102322/547e13b4b4af9f877c8b4772/html5/thumbnails/9.jpg)
Implementando CodeIgniter (1.7.3)
/public/system contiene los archivos normales de CodeIgniter mientras que la lógica de nuestra aplicación se encuentra en /app, fuera del /public
http://codeigniter.com/
![Page 10: Desarrollo web eficiente](https://reader038.vdocuments.net/reader038/viewer/2022102322/547e13b4b4af9f877c8b4772/html5/thumbnails/10.jpg)
Creamos un .htaccess
Encargado de variables del servidor, ocultar el index.php y redireccionar URLs.
![Page 11: Desarrollo web eficiente](https://reader038.vdocuments.net/reader038/viewer/2022102322/547e13b4b4af9f877c8b4772/html5/thumbnails/11.jpg)
Lo aburrido de CI…
Cambiar el dir. de aplicación, la URL base, generar una clave de encriptación, activar el filtro XSS, modificar el controlador predeterminado, etc…
![Page 12: Desarrollo web eficiente](https://reader038.vdocuments.net/reader038/viewer/2022102322/547e13b4b4af9f877c8b4772/html5/thumbnails/12.jpg)
Agregamos 960.gs
Adicionalmente unificamos los 3 archivos .css y usamos el YUI Compressor para packearlo
http://960.gs/
![Page 13: Desarrollo web eficiente](https://reader038.vdocuments.net/reader038/viewer/2022102322/547e13b4b4af9f877c8b4772/html5/thumbnails/13.jpg)
Agregamos jQuery (1.5.0)
Como soporte local, ya que por performance lo llamamos directo desde Google APIs
http://jquery.com/
![Page 14: Desarrollo web eficiente](https://reader038.vdocuments.net/reader038/viewer/2022102322/547e13b4b4af9f877c8b4772/html5/thumbnails/14.jpg)
Preparamos nuestro CSS
![Page 19: Desarrollo web eficiente](https://reader038.vdocuments.net/reader038/viewer/2022102322/547e13b4b4af9f877c8b4772/html5/thumbnails/19.jpg)
Módulos y Templates: re-usando la rueda
http://bit.ly/CIHMVC
http://bit.ly/CISTLib
![Page 23: Desarrollo web eficiente](https://reader038.vdocuments.net/reader038/viewer/2022102322/547e13b4b4af9f877c8b4772/html5/thumbnails/23.jpg)
Integración rápida con Facebook, Twitter, etc.
http://www.haughin.com/code/
![Page 24: Desarrollo web eficiente](https://reader038.vdocuments.net/reader038/viewer/2022102322/547e13b4b4af9f877c8b4772/html5/thumbnails/24.jpg)
El resultado
Aplicaciones/sitios web desarrollados en forma eficiente, con las mejores prácticas, en HTML5 y con un sólido framework base en PHP.
![Page 25: Desarrollo web eficiente](https://reader038.vdocuments.net/reader038/viewer/2022102322/547e13b4b4af9f877c8b4772/html5/thumbnails/25.jpg)
¡Muchas gracias!
“Do or do not. There is no try.”
• limacohen.com• [email protected]• @limacohen
¿Querés aplicar esto?
.com.ar