Personalizando la estructura de carpetas
Luego de haber descargo y descomprimido la última versión del framework CodeIgniter, me gusta personalizar la estructura de carpetas como sigue.
--ci_1.7.2
--application
--assets
----css
----js
----img
La carpeta "application"
La carpeta application es donde estarán aquellos archivos que vayamos creando y codificando, sean estos vistas, controladores, modelos, etc. A mi entender, resulta mucho más práctico move esta carpeta a la raíz del proyecto, al mismo nivel que la carpeta system. De esta forma estamos aislando el proyecto de lo que es el corazón o core de CodeIgniter.
Luego de hacer este cambio, debemos informárselo a CodeIgniter de la siguiente manera. En el archivo index.php que se encuentra en el raíz de la aplicación deberemos actualizar el valor de la variable $application_folder.
$application_folder = "application"; //versión original
$application_folder = "../application"; //mi versión
La carpeta "system"
La carpeta system suelo renombrarla siguiendo el patrón "ci_{numero de versión}". La versión que estoy utilizando de CodeIgniter es la 1.7.2, por lo que la carpeta quedaría con el nombre ci_1.7.2.
Para informar este cambio, debemos editar editar la línea 26 de archivo index.php situado en el directorio raíz del proyecto.
$system_folder = "system"; // versión original
$system_folder = "ci_1.7.2"; // mi versión
Este cambio me permitirá actualizar fácilmente el framework, ni bien vayan apareciendo nuevas versiones del mismo.
La carpeta "assets"
En todas las aplicaciones web siempre precisamos hojas de estilos, librerías jscript, y archivos de imágenes. En lugar de tener varias carpetas distribuidas en el directorio raíz del proyecto, me gusta centralizar todas estas en una carpeta assets que sitúo en el directorio raíz. Dentro de esta podré tener otras carpetas para diferenciar los recursos por tipos, por ejemplo la carpeta css para las hojas de estilo, la carpeta js para los ficheros javascript, y la carpeta img para las imágenes, solo por citar algunos ejemplos.
Bueno espero poder haber contribuido de alguna manera. Espero sus comentarios y nos vemos en el próximo artículo sobre CodeIgniter.
Artículos relacionados: