Es cierto que la tecnología cambia día a día, aparecen nuevas herramientas, metodologías, etc, etc.
Desde hace años que desarrollo en #PHP, vengo de un mundo donde las cosas se hacían a mano, luego vinieron los #Frameworks y allí aparecieron soluciones ‘mágicas’ que prometian la felicidad inmediata. Desde un principio me gustó la forma de hacer las cosas con #Codeigniter #CI para los amigos, lo adopté y me sirvió para muchos proyectos.
Desde hace algunos años el mundo del desarrollo web se puso de moda con #Laravel se actualizó y dió el aire fresco a PHP con lo cual todos o casi, empezaron a apuntar hacia el chico nuevo del barrio, Laravel, que no está nada mal, es superpotente y superior en muchísimos aspectos, pero …
Siempre me hizo ruido el hecho de si realmente lo necesito para este o tal proyecto, como cuando quise utilizar #Symphony para un modesto sitio institucional (algo perfectamente posible, pero que seria lo mismo que matar moscas a cañonazos, salvando las distancias.)
El tema es que leer un título así me motivó a escribir un poco mas de lo habitual : ‘La resurrección de Codeigniter‘
La verdad que no lo hubiera podido expresar mejor, comparto cada palabra. Genial, impecable.
http://www.kode-blog.com/the-resurrection-of-codeigniter
Extraigo algo del artículo:
La muerte de CodeIgniter.
- Nadie mantenía que: algunos de los miembros del equipo detrás de la izquierda y CodeIgniter EllisLab estaba buscando un nuevo propietario. ¿Quién en la tierra querría seguir desarrollando en un marco que nunca puede obtener actualizaciones
- La falta de apoyo de espacio de nombres: espacios de nombres supuestamente resuelven el problema de las colisiones de nombre en código fuente.
- Falta de soporte modular incorporado
- Carga automática
- La lista continua…
La resurrección de Codeigniter
- CodeIgniter es ahora un proyecto de British Columbia Institute of Technology. Problema resuelto
- Oh, por favor, dame un descanso en los espacios de nombres y colisiones de nombres. PHP sólo implementó namespaces en la versión 5.3. Entonces, ¿cómo la comunidad PHP resolver el problema de colisión de nombres antes de espacios de nombres? Prefijos, WordPress utiliza para identificar unívocamente wp_ sus clases, otros escribiendo cosas para que tenga que utilizar sus propios prefijos que aún no existen en WordPress. Los espacios de nombres son en el mejor de los casos una mejor aplicación de colisiones de nombres en comparación con los prefijos. Además, con hacks uno todavía puede utilizar namespaces si quisieran en CodeIgniter.
- La falta de apoyo en la construcción de la modularidad. Hay una razón por la CodeIgniter permite tercer materia de la fiesta que se desarrollará. Wiredesignz ha diseñado una gran manivela de que sólo le implica copiando y pegando dos carpetas y que son buenos para. Voy a hablar más sobre esto en futuros puestos.
- CodeIgniter tiene opciones donde usted enumera la bibliotecas / cosas que le gustaría a la carga automática. Entre tú y yo, Actualmente estoy trabajando en un nuevo proyecto usando CodeIgniter 3x. No carga manualmente las clases que descargué en la carpeta de bibliotecas. Además, es una buena práctica en términos de rendimiento para cargar sólo las cosas pertinentes cuando son realmente necesarios. No es tan importante. Sólo se necesita una sola línea para codificar para hacer eso.
- Para el registro, CodeIgniter es un producto de código abierto que como desarrollador (pirata informático en realidad) en caso de necesitar algo no en lo que ya, usted debe encontrar una solución para y en el espíritu de la cuota de código abierto con otros desarrolladores. De hecho, hay una gran cantidad de bibliotecas para CodeIgniter por ahí que resolver el 99% de sus problemas. Si yo fuera usted (lo que nunca seré), pondría mi fe en la búsqueda de Google y haga clic en ese vínculo divino que conduce a la biblioteca que soluciona mi problema. Lo bueno de código abierto es que se consigue añadir lo que falta en ella. En caso de que insistir en todo lo que ha hecho por ti? Tal vez usted necesita para la compra de herramientas de código cerrado y la demanda de características para ser añadido para usted.
Cinco razones por las que CodeIgniter
- No es necesario composer. Cuanto menos mejor. Tener apache, PHP y MySQL es suficiente para empezar con CodeIgniter. No es necesario instalar algún extra de herramientas es decir, composer y hacer frente a la pantalla de DOS negro en las ventanas. No me gusta todas las cosas en DOS
- Ocupa poco espacio. Sin el manual del usuario, compañero, usted está mirando menos de 2MB file size:). Hablar de esto es una ventaja cuando usted ha visto que las instalaciones via composer de MVC de más de 20MB sólo el framework.
- Los motores de plantilla / idiomas están sobrevalorados. Con CodeIgniter, no necesita un motor de plantilla para empezar. Pero los motores de la plantilla son geniales, de acuerdo amigo. Usted puede usar smarty, twiggy (twiggy) con CodeIgniter si usted cree que es necesario.
- Gran documentación: ¿cuál es el uso de una gran herramienta si no se sabe cómo usarlo bien? Hay una gran tonelada de tutoriales, libros y videos en CodeIgniter y me prometo más de estos materiales grandes que cielo cohete sus habilidades de CI y poner más dinero en sus bolsillos.
- Personalmente me gusta: Esto dice mucho gente. Bueno, a nadie le importa lo que me gusta. CodeIgniter es muy fácil de usar y lo más importante es que tiene herramientas que solucionan los problemas del negocio con un mínimo esfuerzo de su parte.
Pregunta respuesta
- ¿Era realmente necesario para mí Laravel? No.
- ¿Era realmente necesario hablar mal sobre composer? No, es una gran herramienta de hecho, lo uso mucho cuando se trabaja con un marco liviano.
- ¿Las plantillas apestan? Personalmente me encanta la plantilla Blade de Laravel parece tener potencial. En cuanto a Smarty ….
- ¿Y las líneas de codigo … ? Sí, me gusta escribir comandos en pantallas negras.
- ¿Apesta Laravel? No, no es un gran marco de MVC y creo que tenemos suficiente espacio para ambos CodeIgniter y laravel
- ¿Son irrelevantes los espacios de nombres en PHP? Por supuesto que no, siempre me siento religioso cuando se trabaja con espacios de nombres como con API REST con SlimFramework y eloquent como ORM
- ¿Cuál es su framework favorito y por qué? CodeIgniter es mi favorito, es el primer framework con el que empecé y con el que hice dinero con soluciones basadas en CodeIgniter. Uno nunca olvida su primer amor.
Ultimas palabras
Para los principiantes nuevos a los frameworks de MVC, mi opinión y recomendación personal es comenzar con CodeIgniter entonces más adelante intentar otros marcos, es decir Laravel. Para aquellos de nosotros con proyectos en CodeIgniter que estaban pensando en pasar a otro framework, a menos que si tenga una buena razón para hacerlo, recomiendo no hacerlo.
Una de las peores decisiones que una empresa de software / desarrollador puede hacer es acabar con una base de código existente simplemente porque no les gusta la sintaxis o la falta de apoyo del framework que se utilizan para construir la base de código o herramienta.
La clave está en cumplir los requisitos de los clientes y el uso de la tecnología que usted y los que vendrán después puedan mantener con el mínimo esfuerzo.
Fabuloso, llevo desde el 2013 trabajando con codeiginter, los namespaces los puedes implementar facilmente, tienes el control total de tu codigo, las plantillas hacen que pierdas la semantica y por supuesto, el primero de muchos y el mas aclamado por le creador de php, laravel es moda, nada mas eso, no hay nada que codeigniter no pueda hacer igual o mejor que laravel, total, es php.
En lo personal perfiero a Codeigniter sobre Laravel, laravel es la moda, es como la cocacola, mucho marketing pocos beneficios a largo plazo, el mismo creador Rasmus Lerdorf creador de php dijo en una conferencia mundial que le gustaba mas CI porque parecia menos un framework, eso ya dice mucho del apoyo y mas aun ahor que el Instituto de Ciencias y Tecnologias de Columbia Britanica de Canada este llevando el seguimiento de desarrollo de marco, ahora CI es un proyecto cientifico y esa es la joya de la corona.