Compracion de Framework Mvc

5
 SEIP Comparación de Framework MVC en PHP 5 Proceso Tipo de documento  V ersión del documento  Ve rsión de la aplicación Responsab le Fecha de elaboració n Gestión de Proyectos de Software Evaluación de herramientas 0,1 0,1 Joel Gómez 08/06/2007

Transcript of Compracion de Framework Mvc

5/13/2018 Compracion de Framework Mvc - slidepdf.com

http://slidepdf.com/reader/full/compracion-de-framework-mvc 1/5

 

SEIP

Comparación de Framework MVC en PHP 5

Proceso Tipo de documento  Versión deldocumento

 Versión dela

aplicación

Responsable

Fecha deelaboració

n

Gestión de

Proyectos deSoftware

Evaluación de

herramientas 0,1 0,1 Joel Gómez 08/06/2007

5/13/2018 Compracion de Framework Mvc - slidepdf.com

http://slidepdf.com/reader/full/compracion-de-framework-mvc 2/5

 

Comparación de Framework MVC en PHP 5

La propia naturaleza de PHP como un lenguaje extremadamente liberal, no lo ata

con ninguna tecnología extra. Sin embargo, la mejora del modelo de OOP en PHP5 

trajo aparejado un número importante de Frameworks (Cake, PRADO, Symfony,

etc.) que se van agregando al lote del Zend Framework, aunque a decir verdad,

ninguno logra imponerse fuertemente sobre el resto.

Gráfica Comparación Frameworks[1].

Framework PHP4 PHP5MVC

1

Multiple

DB's2

OR 

M 3

DB

Object

s4

Templa

tes5

Cachi

ng6

 Validatio

n7

 Ajax

8

 Auth

Module

9

Modules

10

Zend

Framework - - - - - -

CakePHP - - - -

Symfony

Project- -

Seagull

Framework - -

WACT - - - - -

Prado - - - - -

PHP on

TRAX- - - - -

ZooP

Framework - -

eZComponent

s

- - - - - -

CodeIgnite

r- - -

#1: Indica si la plataforma llega con soporte integrado con Control de

configuración en Modo Vista.

#2: Indica si la plataforma admite bases de datos múltiples sin tener que cambiar

nada.

#3: Indica si la plataforma admite un "object-record mapper", usualmente unaimplementación de ActiveRecord.

5/13/2018 Compracion de Framework Mvc - slidepdf.com

http://slidepdf.com/reader/full/compracion-de-framework-mvc 3/5

 

#4: Indica si la plataforma incluye incluye otros objetos base de datos, como un

"TableGateWay".

#5: Indica si la plataforma tiene un dispositivo plantilla integrado.

#6: Indica si la plataforma incluye un objeto "caching" o algún otro modo de

"caching".

#7: Indica si la plataforma tiene una validación integrada o componente de filtrado.

#8: Indica si la plataforma llega con soporte integrado para Ajax.

#9: Indica si la plataforma tiene un módulo integrado para manejar autentificación

de usuario.

#10: Indica si la plataforma tiene otros módulos, como un analizador RSS feed ,

módulo PDF y otras cosas útiles.

Zend Framework  sigue siendo nuevo y bonito, y muy beta, tanto que todavía

existen algunas cosas a venir (como un módulo de autentificación de usuario), pero

él ya tiene bastante. Aunque no tiene todos los módulos que lo ajusten altamente a

necesidades empresariales, el framework de Zend incluyen otros módulos, para

manejar los archivos del pdf, alimentaciones de RSS, servicios del Web (Amazon,

Flickr, Yahoo), y más. También incluye diversos objetos de la base de datos, es

extremadamente simple preguntar sobre tu base de datos, sin tener que escribir

cualquier SQL tú mismo. En estos momentos Zend no viene con un verdadero

ORM.

CakePHP. La versión estable tendrá probablemente llena mucho más la carta de

comparación CakePHP. este framework es sobre todo un framework avanzado

MVC, con algunos módulos adicionales agregados. Puede manejar la mayor parte

del material de la base de datos, e incluye la ayuda para Ajax y la validación de

datos. También tiene un usuario único de acceso llamado módulo de la

autentificación el “enumera”, que se puede utilizar para diverso acceso de usuarios

a diversas partes de tu Web site de CakePHP. Este framework es absolutamente

cuidadoso y rapido para usar, aunque el Web site de CakePHP es extremadamente

confuso. No se parece haber una versión estable todavía, que es un pedacito que

sorprende, puesto que ha estado en desarrollo por varios meses.

El proyecto de Symfony  es un framework muy extenso, e incluso incluye un

 verdadero ORM, llamado “full-blown”, que es otro proyecto de código abierto y

probablemente de las mejores soluciones de ORM para PHP. Symfony también

incluye una capa de abstracción de la base de datos y Mojavi para la capa del

modelo del Modelo-Vista-Controlador. Además, reutiliza simplemente estos otrosproyectos, en vez de reescribirlos, este framework tiene probablemente la

5/13/2018 Compracion de Framework Mvc - slidepdf.com

http://slidepdf.com/reader/full/compracion-de-framework-mvc 4/5

 

funcionalidad más extensa, y esto se demuestra claramente. Las únicas dos

desventajas a este marco son ese hecho de que no puede ver funcionado en PHP4,

pero esto es bastante lógico considerándolo que necesita mucha nuevas

características de PHP5, y que sea tan complicado. La mayor parte de las tareas,como la paginación, se complican mucho más en Symfony que en otros framework,

 y la simplicidad no describe definitivamente este framework.

Seagull Framework  se parece a un framework bastante bueno, y viene con el

bastantes de características. Otra cosa positiva es que funciona en PHP4 también,

la mayoría de los anfitriones no apoyan PHP5 todavía. Desafortunadamente la

gaviota no viene con ninguna ayuda de Ajax, que sea un poco una vergüenza,

solamente vueltas simples de una búsqueda de Google una clase particular en la

adición de la ayuda tú mismo de Ajax, y es probable él será agregado en el futuro.

 WACT parece absolutamente prometedora, y tiene las cosas básicas las

necesidades de un framework, como MVC, base de datos y un motor de la plantilla.

No tiene ningún módulos adicional, y carece definitivamente algunas cosas

incorporadas, como Ajax, cacheo, un módulo de la autentificación y más. WACT

tiene uno de los mejores motores de la plantilla, sin embargo, permite que crees

tus propias etiquetas de la plantilla para agregar cierta funcionalidad.

Prado es un framework muy único, y ofrece algunas características realmentefrescas. No viene con la ayuda incorporada para MVC, sino que tiene todas las

clases de componentes para manejar la mayor parte de las tareas generalmente de

PHP. Por ejemplo, es posible fijar acontecimiento de un onClick en un botón del

HTML ese los acoplamientos a una función de PHP. Esto se asemeja de cerca a

 ASP.NET, y Prado contiene más componentes de ASP.NET, como un GridView y un

control del repetidor. Mirando la carta de comparación puede ser que se parezca

que Prado es un débil en comparación a los otros, pero éste no es verdad.

PHP on Trax , este framework parece ser un puerto de PHP y de Ruby on Rails.

Desafortunadamente la documentación es absolutamente escasa, así que es duro

determinarse lo que ofrece este framework, pero su documentación menciona

 ActiveRecord, así que ofrece probablemente ActiveRecord, apenas como RoR. Otra

cosa que incluye es ayuda para Ajax, y las dos versiones parciales de programa que

se pueden encontrar en la demostración del Web site. PHP on Trax, está en la

manera correcta, pero todavía está faltando algunas cosas, como un módulo de

autentificación y un módulo que cacheo. No tiene ningunos módulos adicional, así 

que es todo el un framework básico hasta los momentos.

5/13/2018 Compracion de Framework Mvc - slidepdf.com

http://slidepdf.com/reader/full/compracion-de-framework-mvc 5/5

 

ZooP Framework , realmente tiene buena características, apoya casi cualquier

cosa, a excepción de una capa de ORM. Es realmente excepcional considerando

toda la funcionalidad que ofrece. Otras ofertas de ZooP son los controles

incorporados del GUI, haciéndolo muy fácil crear formularios rápidamente. Apoyala mayor parte de los elementos básicos de los formularios, y esa ventaja de usar

controles GUI sobre el HTML regular es que puedes integrar firmemente lógica de

la validación con los controles del GUI.

eZ Components, no es tanto un marco, sino más de una colección de

componentes, y esto es probablemente porqué no viene con la ayuda incorporada

para MVC. Viene con la mayor parte de los componentes generalmente, como un

componente de la base de datos y un componente que cacheo, pero también está

careciendo algunas otras cosas. Por ejemplo, no tiene un componente de

  ActiveRecord o un componente para la autentificación. Por otra parte, tiene

algunos otros componentes adicionales, como un componente del E-mail, pero no

hay muchos, y otros framework (como el marco de Zend) ofrecen más.

CodeIgniter es relativamente un nuevo framework, al lado de los fabricantes de

ExpressionEngine, y parece absolutamente prometedor. Desafortunadamente, no

maneja bases de datos múltiples todavía, aunque ése está en los trabajos.

Inspirado por Ruby on Rails, y ofrece mucha de la misma funcionalidad, como elscaffolding. Tiene documentación excelente, e incluso han conseguido operar el

manejos de clases particulares para videos.

Cada Framework ofrece diversa funcionalidad, justo como la mayoría de las cosas,

 viene a colación la preferencia y la opción personal. Personalmente, realmente

tengo gusto por Symfony Framework en estos momentos, ya que, posse una

documentación completa y traducida al español [2], por su respecto a la estructura

MVC se facilita su estudio y compreción, además, adopta los ORM y los

 ActiveRecords, pero como he estado investigando cada framework, de mí he visto

muchas otras características interesantes, como los acontecimientos de Prado o la

puesta en práctica de ORM de Symfony. Si no se puede decidir absolutamente

sobre que framework se utilizará, entonces se puede realizar lo que la mayoría de

la gente hace: escribir los propios. Puede tomar más tiempo, pero es un infierno

mucho de la diversión.

Referencias

1.- http://lnx.googlewrite.com/chart.php2.- http://www.symfony.es/