Evitar navegación.
Principal

framework

Optimiza Codeigniter

CodeIgniter es un genial framework, pensado para ofrecer un alto rendimiento, claro está con una óptima configuración.

Como ya hemos comentado en otras ocasiones CodeIgniter cumple perfectamente el fin de cualquier framework, una estructura definida que de soporte a un proyecto web y ayude a que este proyecto sea organizado y desarrollado, veamos los puntos clave a tener en cuenta a la hora de optimizar la configuración de CodeIgniter.

Ver Ejemplo (Benchmark para CodeIgniter)

Modelo Vista Controlador (MVC)

Seguramente hayas oido e incluso utilizado algún MVC (Modelo Vista Controlador), de lo que se trata en este tipo de modelos es de repetirse lo menos posible y hacer una separación entre la lógica de la aplicación y su presentación:

  • El modelo representa la estructura de datos, a menudo con clases que contienen funciones que te ayudan a insertar, eliminar y actualizar la información de la base de datos.
  • La vista es la información que se presenta al usuario, una vista es a menudo una página web en sí misma, pero en CodeIgniter una vista también puede llegar a ser un fragmento de la página web (pie, cabecera, contenido principal, etc...).
  • El controlador sirve de intermediario entre los Modelos y las Vistas, y es el encargado de coordinar la petición y generar la página web.

Teniendo estos tres puntos claros podemos pasar a ver el diagrama de flujo de CodeIgniter.

Diagrama de Flujo de CodeIgniter

Configuración básica de CodeIgniter

Modelo Vista Controlador
  1. El index.php sirve inicializa el nucleo de CodeIgniter.
  2. El enrutador examina la petición HTTP y determina que se debe de hacer.
  3. Si existe la cache devuelve el archivo HTML sin pasar por el sistema , ahorrandos la carga que ello conlleva.
  4. Seguridad, antes de que se cargue el controlador se filtra los datos enviados para que estos sean fiables.
  5. El controlador carga el modelo, librerias, plugins, helpers y todos los recursos necesarios para satisfacer la petición.
  6. Una vez la Vista está renderizada es enviada al navegador si la cache está habilitada se almacena el resultado en cache para la próxima vez que esta URL sea servida.

Configuración avanzada de CodeIgniter con librería Sparks

Sparks es una librería que nos permite solventar dos deficiencias con las que nos podemos encontrar a la hora de afrontar un proyecto basado en CodeIgniter.

1. Mejora la cache que únicamente permite cachear páginas completas.
2. Podremos incluir "vistas" dentro de "vistas".

Para entender este supuesto tenemos que imaginar que necesitamos que la página tenga un módulo de autentificación, al devolver sólo HTMl sería imposible hacer convivir la cache y el módulo de autentificación, con esta librería solucionamos el problema pero el diagrama de flujo cambia un poco.

Modelo Vista Controlador
  1. El index.php sirve inicializa el nucleo de CodeIgniter.
  2. El enrutador examina la petición HTTP y determina que se debe de hacer.
  3. Seguridad, antes de que se cargue el controlador se filtra los datos enviados para que estos sean fiables.
  4. El controlador comprueba si existe cache, en caso afirmativo la devuelve pero al hacer la comprobación en este punto podemos llegar a pasar datos dinámicos a la vista (podríamos conseguir que funcionará un módulo de autentificación aún con la cache habilitada), si no existe cache carga el modelo, librerias, plugins, helpers y todos los recursos necesarios para satisfacer la petición.
  5. Una vez la Vista está renderizada es enviada al navegador si la cache está habilitada se almacena el resultado en cache para la próxima vez que esta URL sea servida.

Ruby on Rails 2.0, "No te repitas"

Despues de más de un año de trabajo ya tenemos una nueva entrega del framework Open Source y multiplataforma para Ruby que seguramente conseguirá más adeptos para uno de los lenguajes de programación web de moda.

Seguramente hayas oido e incluso utilizado RoR (Ruby on Rails), pero por si no lo conoces decir que es un framework Open Source que sigue la arquitectura Modelo Vista Controlador (MVC), su lema es como bien dice el titulo de esta entrada "No te repitas" ya que trata de simplificar la tarea de desarrollar aplicaciones web intentando escribir el menor código posible.

El lenguaje de programación "Ruby"

El lenguaje de programación utilizado es Ruby que permite la metaprogramación, esto hace que el código sea muy legible.

Ruby es un lenguaje de scripts para una programación orientada a objetos rápida y sencilla, es un lenguaje de programación interpretado, de muy alto nivel y orientado a objetos.

En este lenguaje, hasta los números y los caracteres literales son objetos, y tienen los métodos de su clase, que pueden llamarse normalmente.

Ruby podrá ser probablemente uno de los lenguajes de programación más faciles de los que vas a ver.

En este tutorial puedes encontrar algunos ejemplos de uso de este lenguaje.

Historia de Ruby on Rails

Ruby on Rails fue ideado por David Heinemeier Hansson (Basecamp | 37 Signals). Fue liberado al público por primera vez en Julio de 2004.

  • Ruby on Rails 1.0 fue publicado el 13 de diciembre de 2005
  • Ruby on Rails 1.1 fue publicado el 28 de marzo de 2006
  • Ruby on Rails 1.2 fue publicado el 18 de enero de 2007
  • Ruby on Rails 2.0 fue publicado el 7 de diciembre de 2007

Cake Php para principiantes

A lo mejor te estas preguntando que es Cake Php, es un framework para Php de la misma manera que Rails es para Ruby, basicamente es una utilidad diseñada para facilitar el desarrollo de proyectos en Php.

Ahora la siguiente pregunta que puede que te estes haciendo sea ¿Debo utilizarlo?