CodeIgniter – Introducción
Hola amigos ¿cómo están?, aprovechando unas cortas vacaciones, escribo algo sobre uno de los frameworks para PHP que más uso, CodeIgniter (CI), es propiedad de Ellislab, que nos permite el desarrollo de proyectos o aplicaciones web en forma rápida ordenada y eficiente, tiene multitud de funcionalidades, es open-source, podemos leer y entender el código y con esto hacer más óptimo el trabajo en equipo, su objetivo principal a mi entender es agilizar y organizar el desarrollo, evitando tareas repetidas.
Para usar CodeIgniter a partir de la versión 2 debes tener conocimientos previos de POO (Programación Orientada a Objetos), del patrón de desarrollo de software MVC (Modelo-Vista-Controlador) y obviamente PHP a partir de su versión 5.
¿Qué es MVC?, puedes visitar la wikipedia y tener más información sobre el tema o leer estos conceptos a mi entender.
- Modelo: Donde se procesan los datos, en sí son clases que ayudan a recuperar, insertar, actualizar y eliminar información de las tablas; CI soporta diferentes tipos de motores de base de datos (BBDD) relacionales y no relacionales, al hacer CodeIgniter abstracción de las BBDD las consultas se hacen independientemente al motor de BBDD que usemos, veremos ejemplos más adelante.
- Vista: Siempre se llama desde el controlador y muestra la información que ve el usuario final en html, puede ser también un fragmento de página como una cabecera o un pie de página.
- Controlador: Como su nombre indica, controla nuestra aplicación, es la parte «lógica» y dirige el flujo de información que necesita el usuario al hacer una petición HTTP en el navegador, interpreta y dirige a algún modelo o a la vista.
CARACTERISTICAS
Instalación: Es sólo descargar el archivo de su sitio oficinal, desempaquetarlo, copiarlo en tu servidor web, llamarlo desde el navegador y ya está funcionando.
Flexibilidad: Es práctico a comparación de otros frameworks, te deja tomar tus decisiones en como hacer tus procesos.
Ligereza: Es muy liviano, cargas los helpers y librerías que tiene de acuerdo a tu necesidad, siendo estas cargas para todo tu proyecto o para partes específicas del desarrollo.
Documentación: Existe mucha y en diferentes idiomas, además de contar con muchas comunidades de usuarios.
Curva de Aprendizaje: si trabajas tiempo con PHP no te será difícil seguir la lógica de uso del framework.
Si ya llegaste al tope al programar PHP desde cero y quieres mejorar y evolucionar te toca usar un framework y que mejor que empezar con CodeIgniter, luego podrás decidir entre otros de acuerdo a lo que deseas hacer.
Otra cosa que debes saber es que Codeigniter tiene bibliotecas de» helpers» (funciones) y «librerías» (clases), que te ayudarán en el desarrollo de actividades que siempre te encuentras al programar, por decir manejo de formularios, validaciones de datos, sesiones, fechas, correos, base de datos, etc.
Los principales motores que soporta para las base de datos relacionales son: MySQL, PostGre, Oracle, SQL Server, SQLite, etc. además de las no relacionases, más adelante haremos ejemplos de su uso.
Puedes acoplar tus propias funciones y clases, e integrarlas al desarrollo de tus aplicaciones sin ningún problema.
VENTAJAS: Conocimiento profundo del funcionamiento interno de las aplicaciones.
DESVENTAJAS: No tiene para uso de layouts, templates y skins; además no cuenta con HMVC.
Como resumen te diré que CI te permite centrarte en el proyecto, minimizando el código necesario para una tarea determinada, nos permite soluciones simples a problemas repetitivos en el desarrollo de software.
Visita su sitio oficial y podrás adentrarte en este mundo de los frameworks para el desarrollo de aplicaciones
Bien, espero sus comentarios conforme vayamos avanzando y sobretodo puedan aportar los que conocen más el framework, siempre hago resúmenes de temas que estudio y acudo a ellos para optimizar el tiempo en caso más adelante tenga que usarlo si un cliente necesita algo específico, comparto estos resúmenes, espero les sea también de utilidad.
Saludos, hasta pronto
Wow, that’s what I was looking for, what a information! existing here at this blog, thanks admin of this web page.