Probar tus proyectos en host gratuito

Mi experiencia con Codeigniter

Hugui Dugui

La primera vez que tuve un acercamiento con un framework de PHP fue una experiencia aterradora ya que no sabía por dónde comenzar, qué mover, qué configurar para empezar de una vez a codear.

Antes de comenzar a contar mi experiencia debo de mencionar que por aquel entonces recién comenzaba en esta carrera, es decir, realmente no usaba muchas de las funcionailidades y bondades de por ejemplo, la programación orientada a objetos. Yo "amaba" mi código espagueti y lo denfendía a muerte xD, tenía mil archivos dispersos por carpetas, usaba una conexión a base de datos en el propio archivo donde la necesitara (muy mala práctica por cierto), en fin, llegó un momento cuando realicé un sistema en la universidad (un CRUD) que me hizo ver la gran falta de organización en mis archivos y en el propio código.

En mi experiencia, no es necesario aprender todos los frameworks, basta con conocer bien uno y puedes entender cualquiera.

Así fue como me decidí a usar un framework pero... ¿Cuál es el mejor?, la clásica pregunta que todos nos hacemos. En mi opinión no hay mejor o peor, cada uno tiene pros y contras que como programadores nos adaptamos a esas características y con base a eso decidimos con cuál nos sentimos más cómodos programando.

Antes de llegar a usar Codeigniter, fueron varios frameworks que probé como Yii, CakePHP, Kumbia, Symphohy y Laravel, con los cuales tuve la mala experiencia de que las configuraciones iniciales para tener listo el framework me tomaban mucho tiempo además de que eran tediosas lo cual me quitaba las ganas de seguir adelante. Hoy en día puedo visualizar el alcance, diferencias e importancia que tiene usar cada uno ellos.

Por fin después de una ardua tarea de probar frameworks, aquí mi experiencia con Codeigniter:

Descargando

Desde que lo descargué, lo descomprimí y le cambié el nombre a la carpeta como codeigniter en mi carpeta htdocs y solo con ir al localhost/codeigniter, el framework ya corre y te muestra una pantalla de bienvenida de que ya está listo para usar. Eso fue realmente alentador para seguir usando el framework. :D

Configuración

Como comenté al incio, la configuración fue uno de mis dolores de cabeza usando frameworks pero con Codeigniter fue de lo más intuitivo. De verdad, solo me llevó algunos minutos viendo su documentación y con unas cuantas configuraciones como habilitar el base_url fue suficiente para comenzar a codear.

MVC

Recuerden, era novato y tenía código espagueti que "amaba" y defendía a muerte. Este patrón de diseño era algo nuevo que comprendía de modo muy general. Debo de reconocer a Codeigniter que esta fue la parte con la que más me sentí a gusto porque el ejemplo que tiene de inicio ya tiene un controlador y vista con el que puedes ir moviendo para ver los resultados. Es muy simple de entender el MVC con Codeigniter

Libertad

Esta característica es espada de dos filos y me refiero a la base de datos y a las consultas. Es muy criticada la forma cómo puedes manejar el modelo (y es cierto), ya que te permite usar consultas en texto plano, es decir, puedes usar una cadena tipo "SELECT * FROM user where ... ", como novato, esto es genial porque te sientes seguro de codear como venías haciendo tus consultas peeeero... Esto es una mala práctica que repercute en la seguridad, cosa que cuando vas iniciando no lo tomas en cuenta. Ahora bien, Codeinigter cuenta con una clase para construir consultas, la ventaja es que poco a poco te vas dando cuenta que es mejor usar esta clase para formar tus consultas que en texto. Hay para hacer todo, desde lo básico: insertar, borrar y actualizar registros hasta hacer: left/right joins, where, order by y más.

Por su facilidad de aprendizaje y por intuitivo, recomiendo ampliamente aprender Codeigniter como primer framework

En conclusión, mi experiencia con Codeigniter fue genial y muy rápido de aprender pero lo mejor, es que empiezas a codear de inmediato sin configuraciones tediosas. Sin embargo, aunque Codeigniter lo considero entre los mejores y estables, existen frameworks que son más rigurosos (como debe de ser) y pontentes como lo es Laravel y que debes considerar a futuro aprender.

Acá puedes ver la introducción y el temario de lo que se hará en este tutorial ¿Qué voy a aprender en el curso de Codeigniter?. Acá están las entradas del blog del curso de Codeigniter