¿Cómo se compara Drupal 7 con los marcos de Code Igniter y Yii para aplicaciones web?

En primer lugar, Drupal no es un marco en el mismo sentido que PHP Frameworks CodeIgniter y Yii. Aquí está la diferencia.

Cuando dicen que Drupal es un marco, lo que quieren decir es que es más un “ecosistema” en el que construir su sitio web. PHP Frameworks le proporciona las herramientas para crear aplicaciones web, como Drupal.

Dejame poner esto de otro modo. Finge que estás construyendo una casa. Con Drupal siempre obtienes una casa del tamaño de Drupal que ya está en su mayoría construida. Con los frameworks PHP puedes construir una casa del tamaño de Drupal o puedes construir un rascacielos.

PHP Frameworks utiliza más principios de Programación Orientada a Objetos y usa algo cercano a los patrones de diseño del Controlador de Vista de Modelo, que Drupal no utiliza.

Tiene más sentido pensar en Drupal como un CMS o quizás un Marco de CMS, pero no lo piense como un Marco de PHP. Busque la definición de CMS en wkipedia o vaya a Google CMS y verá que Drupal es exactamente eso.

Hay una diferencia significativa entre un sistema CMS como Drupal y marcos como Yii y Codeigniter.

Drupal le proporciona aplicaciones web basadas en contenido que pueden ampliarse fácilmente a través de módulos, etc. Por otro lado, el marco le brinda opciones abiertas estándar para hacer las cosas a su manera. Entonces, a menos que vaya a tener un sitio web con gran contenido de contenido, el CMS no es el camino a seguir.

Por otro lado, puede desarrollar cualquier tipo de sistema utilizando marcos como Yii y CI. Ambos se desarrollan activamente y tienen una gran comunidad de usuarios. Si recién comienza a usar Codeigniter, es lo que los principiantes prefieren, por otro lado, si es un desarrollador experimentado, le encantará el poder de Yii.

Por lo tanto, depende principalmente de lo que va a desarrollar, en nuestra empresa hemos utilizado casi todo lo que incluye WordPress, Drupal, Joomla y marcos como Yii, CI, Cake, Zend, etc. Pero actualmente estamos más centrados en Yii en frameworks y WordPress en sistemas CMS.

Esta es una pregunta muy abierta y la mayoría de las personas tendrán un marco favorito. Este es mi entendimiento:

Yii es liviano y ofrece andamios para que pueda construir un sistema con bastante rapidez.

Drupal es técnicamente un marco y un CMS. Tiene una gran cantidad de módulos de la comunidad, por lo que si puede encontrar los módulos correctos y crear su máscara, podría tener un sistema de trabajo en unos días.

Code Igniter es más pesado que Yii. A diferencia de Drupal, no tiene módulos, pero tiene mucha funcionalidad. Creo que no está en desarrollo activo, lo que podría ser un problema.

También puede considerar Zend Franework, que se está convirtiendo rápidamente en un estándar.

Estoy de acuerdo con Doug, excepto que si está creando una aplicación web que no esté impulsada por CMS (como un CRM u otra herramienta de negocios), puede necesitar la flexibilidad total de un marco sobre Drupal. Estoy de acuerdo en que Drupal oscila y reinventar la rueda es una pérdida de tiempo, ¡excepto si lo que quieres no es una rueda!