Marco PHP (pastel / inteligente): ¿Cómo usarlo y cuándo?

Duplicado de

¿Qué es un Framework PHP? y muchos más

Hasta ahora, he estado usando PHP para ajustes pequeños, principalmente con WordPress. ¿Qué son los frameworks PHP? ¿Por qué los necesito? ¿CUANDO los necesito?

Cualquier idea será útil. Gracias.

Los marcos son grupos organizados de código o bibliotecas, construidos sobre un idioma para cualquiera

  • Haga que las tareas comunes sean fáciles / simples
  • Crear una forma consistente para desarrollar aplicaciones

Algunos marcos son muy restrictivos (ya que no es fácil hacer las cosas, a menos que los haga de la manera ‘marco’), otros son más flexibles. He encontrado que Zend’s Framework es una buena combinación de ambos, lo que hace que los componentes individuales sean fáciles de usar (por ejemplo, puede colocar la biblioteca ‘Feed’ en su aplicación existente sin necesidad de reescribir la aplicación de la manera Zend), o puede utilice las bibliotecas Zend MVC y Application para una aplicación completa.

Me mantendría alejado de los marcos que son ‘todo o nada’.

Desde Zend’s Framework (reafirmando lo anterior, quizás más completamente):

Zend Framework es un marco de código abierto para desarrollar aplicaciones web y servicios con PHP 5. Zend Framework se implementa utilizando código 100% orientado a objetos. La estructura de componentes de Zend Framework es algo único; cada componente está diseñado con pocas dependencias de otros componentes. Esta architecture débilmente acoplada permite a los desarrolladores usar componentes de forma individual. A menudo llamamos a esto un diseño de “uso a voluntad”.

Si bien se pueden usar por separado, los componentes de Zend Framework en la biblioteca estándar forman un marco de aplicación web poderoso y extensible cuando se combinan. Zend Framework ofrece una implementación de MVC robusta y de alto rendimiento, una abstracción de base de datos que es simple de usar y un componente de formularios que implementa la representación, validación y filtrado de formularios HTML para que los desarrolladores puedan consolidar todas estas operaciones utilizando una herramienta fácil de usar. , interfaz orientada a objetos. Otros componentes, como Zend_Auth y Zend_Acl, proporcionan autenticación y autorización de usuario contra todas las tiendas de credenciales comunes. Aún otros implementan bibliotecas de clientes para acceder simplemente a los servicios web más populares disponibles. Sean cuales sean las necesidades de su aplicación, es probable que encuentre un componente de Zend Framework que se puede utilizar para reducir drásticamente el tiempo de desarrollo con una base completamente probada.

Un marco trata de proporcionar todas las cosas que son comunes a todos (o la mayoría) de los proyectos (procesamiento de html, acceso a la base de datos, etc.) de una manera simple y fácil de usar.

Utilizaría uno para acelerar el desarrollo, porque puede omitir todo eso y centrarse en lo que es único para su proyecto. Dependiendo del que use, también puede agregar algunas características de seguridad escapando automáticamente los datos en el camino a la base de datos, o a la pantalla.

Los uso en cualquier situación donde no necesite algo tan personalizado que sea más trabajo doblar el marco a mis necesidades que crear todo desde cero. Eso es bastante raro.