Symfony: PHP marco cambiante con una fuerte comunidad

En octubre de 2005, la compañía francesa de software, SensioLabs publicó el marco de código abierto, Symfony, que en realidad se desarrolló bajo el nombre Sensio marco. La ortografía inusual del nuevo nombre se debió a la preservación de la vieja prefijo de clase y el tema prefijo ‘sf’ . La razón para el marco era Ruby on Rails, que fue lanzado el año anterior, y el deseo del equipo de desarrollo de una plataforma de desarrollo comparables para PHP proyecta . Desde entonces, se ha desarrollado continuamente SensioLabs El framework Symfony. Por ejemplo, en 2011 Symfony 2 añadido un diseño modular.

¿Cuál es Symfony?

Symfony es una colección de alrededor de 30 bibliotecas PHP que puede ser descargado y utilizado tanto como un paquete o individualmente. Aparte de estos componentes estándar, hay módulos adicionales que pueden utilizarse para ampliar el marco o utilizarse por separado. De acuerdo con SensioLabs, más de 500 millones de descargas de paquetes individuales y los marcos completos se han registrado en los últimos años diez, que se refleja en la distribución general: numerosos proyectos tales como el sistema de gestión de contenidos Drupal, la herramienta de análisis web, Piwik y el software phpBB foro se basan en componentes de Symfony. Todos los paquetes de este marco son reutilizables y disponibles para su descarga gratuita en el sitio web oficial.

Symfony: Introducción a los componentes de los marcos web

El hecho de que Symfony se puede utilizar como base de desarrollo para proyectos web de todo tipo se debe a su estructura modular. Cada módulo tiene su propia función, pero no depende de otros componentes, que luego le da el marco de un alto grado de flexibilidad y capacidad de expansión . Puede utilizar Symfony como un completo framework si necesita una amplia gama de funciones para su proyecto web. Además, puede crear su propio conjunto de Symfony biblioteca o crear una versión delgada del marco. De esta manera, se puede adaptar a los componentes de los requisitos precisos de su aplicación web – si se trata de un proyecto de empresa compleja o una simple página web. Al mismo tiempo, usted siempre tiene la opción de agregar o módulos quitan como el cambio de las condiciones marco.

Puede elegir entre los siguientes componentes estándar:

  • Activos: Módulo para la generación de URL y de versiones de archivo de imagen, hojas de estilo CSS, JavaScript y aplicaciones.
  • cargador de clases: ClassLoader asegura que sus propias clases PHP se cargan automáticamente.
  • Depuración: proporciona herramientas para la depuración de código PHP con el fin de localizar y errores de clasificar.
  • DependencyInjection: le permite definir estándares para la creación de objetos para el proyecto web respectiva.
  • EventDispatcher: componente elemental que controla la comunicación de los módulos individuales en forma de eventos.
    Formulario

  • : contiene herramientas que se pueden utilizar fácilmente para crear formularios HTML reutilizables.
  • de plantillas: herramientas para la creación de un sistema de plantillas.
  • Traducción: módulo para la internalización del proyecto.
  • Validador: le permite validar clases creadas.
  • Yaml: cargas y guarda los archivos .yml. concepto

Modelo Vista Controlador para aplicaciones web estructuración

Symfony permite a la aplicación del enfoque de Modelo Vista Controlador (MVC). Esto divide patrón arquitectura aplicaciones en tres áreas

  • datos y la funcionalidad de núcleo (modelo),
  • Visual presentación de los datos generados (ver) usuario Procesamiento
  • entradas (controlador). concepto

El MVC proporciona un código de programa claro, bien estructurado y un alto grado de flexibilidad para los diferentes componentes, que pueden ser intercambiados y reutilizados en función del concepto, ya que no están vinculados a hormigón de datos de entrada . En este punto, sin embargo, hay que decir que Symfony no pertenece a la línea proclamada por marcos MVC y no contiene un componente del modelo integrado. Si crea un nuevo proyecto Symfony, la carpeta típica modelo también será insuficiente. El uso de ORM adicional bibliotecas (Object Relational Mapper), tales como la Doctrina, recomendado por SensioLabs o Propel, puede implementar almacenamiento de objetos en sistemas de bases de mismo.

Para crear la capa de presentación (ver) de la aplicación web, utilice el módulo de plantilla y crear plantillas correspondientes , que se puede ampliar usando la llamada de ayuda (objetos PHP) y funciones específicas. El nivel del controlador se denomina index.php (se puede encontrar en la carpeta de ‘red’). Las entradas del usuario se denominan ‘acciones’ en Symfony, al igual que lo son en muchos otros marcos también.

Symfony: PHP como un imán de usuario

Symfony es una colección de diversas bibliotecas de PHP, por lo que debe tener el lenguaje de script instalado con el fin de utilizar el marco. Para la versión actual con el apoyo de la serie 2.x Symfony 2.8, necesita PHP 5.3.9 o superior. Symfony 3.1 y 3.2 requieren PHP 5.5.9 o superior. Desde el principio, los equipos de desarrolladores SensioLands tenían el objetivo de creación de una colección de componentes para proyectos PHP que pudiera competir con los marcos comparables en otros idiomas. En particular, Ruby on Rails impresionó a los desarrolladores franceses, por lo que se decidió hacer los componentes individuales similar a la estructura del marco populares Ruby.

El desarrollo y el éxito del framework Symfony está estrechamente ligada a la historia del lenguaje de script. Dado que este es libremente disponible como un lenguaje de código abierto y siempre ha sido popular, varios desarrolladores tienen optimizado que en los últimos años. El fuerte aumento de rendimiento vinculada a PHP7 también tiene un impacto positivo en el rendimiento de las aplicaciones web Symfony futuro.

Compatibilidad con versiones anteriores y las versiones LTS prometen continuidad

Una nueva versión de Symfony ha sido puesto en libertad cada seis meses desde 2013. Los usuarios que se hayan registrado en la comunidad SensioLabsConnect se mantienen al día con los correos electrónicos. La actualización del marco cada seis meses a una versión superior inicialmente suena como una tarea muy tediosa y poco práctico para las aplicaciones web complejas. SensioLabs, sin embargo, proporciona las soluciones adecuadas de modo que el marco y las aplicaciones desarrolladas tienen la necesaria continuidad:

  • Compatibilidad hacia atrás: todas las actualizaciones Symfony (desde la versión 2.3) se han caracterizado por compatibilidad hacia atrás. Esto significa que las aplicaciones desarrolladas se garantiza que la función aún cuando se cambia a versiones superiores. Sin embargo, hay algunas excepciones para los que no se aplica la promesa sin restricciones de compatibilidad. Además, las versiones principales como Symfony 3.0 (4.0, etc.) están excluidos de la garantía. El apoyo a largo plazo
  • : versiones Symfony suelen estar apoyados por ocho meses. Con la versión 2.3, SensioLabs lanzó la primera edición de Symfony con el apoyo a largo plazo (LTS). Estas versiones LTS están previstas para cada dos años y proporcionan 36 meses de actualizaciones para los errores del programa y 48 meses de parches de seguridad. Además de la segunda versión LTS programado 2.7, la siguiente versión 2.8 también estaba equipado con el período de soporte extendido.
  • ‘continuo proceso de migración’ para la versión 3.0: Para conmutar a la última versión principal, Symfony 3.0, el equipo de desarrollo que acompaña al utilizar el concepto de Ruta de la actualización continua. Como desarrollador de aplicaciones Symfony, puede recibir consejos detallados para la revisión de líneas de código en las versiones 2.x, poco a poco adaptándose a las nuevas especificaciones. A continuación, puede actualizar a la nueva versión del framework de aplicaciones web.

Las ventajas y desventajas de la Búsqueda framework Symfony

para el marco de PHP apropiado en el pasado era como buscar una aguja en un pajar: el deseo de un potente conjunto de biblioteca para el lenguaje de Internet más populares conducido al desarrollo de numerosos representantes, que eran bastante diferentes para los diferentes tipos de proyectos. Sin embargo, un par de marcos – incluyendo Symfony – han logrado impresionar a un gran número de desarrolladores de PHP , gracias a su progreso continuo. Las puntuaciones marco especialmente bien cuando se trata de la estructuración y la vinculación de los módulos individuales, que se pueden utilizar para implementar diversas aplicaciones web, que contribuye a que sea muy valorado por la comunidad. Con las versiones de apoyo a largo plazo y la promesa general de proporcionar el más alto nivel posible de compatibilidad con versiones anteriores, el equipo de desarrollo SensioLabs también proporciona la base correcta para asegurar que el proyecto Symfony puede continuar . Sin embargo

cambiando a una nueva versión del marco y los ajustes asociados con el código de la aplicación Symfony desarrollado a veces es una cuestión bastante tedioso. Y esto es a pesar del hecho de que la asistencia se ofrece. C omplexity también es generalmente un gran problema del marco de PHP. Aunque hay un montón de información y un montón de explicaciones para cada módulo, los principiantes pueden encontrar dificultades para familiarizarse con el marco. El framework Symfony también revela debilidades en el desempeño – incluso en comparación con otros marcos de PHP. El uso de la doctrina ORM por uso intensivo de recursos también juega un papel importante en este caso.

Quién es adecuado para la colección de componentes de PHP? módulos

Todo Symfony se caracterizan por el hecho de que trabajan de forma individual así como en una red. Este último no tiene que ser el paquete de marco estándar: también puede crear su propio micro-marco, que se compila sólo con los componentes que desee . De esta manera, se evita tener que trabajar con un árbol de sobrecarga que va mucho más allá de los requisitos del proyecto desarrollado. Pero Symfony también es escalable en la otra dirección y se puede convertir rápidamente en un diseño básico para exigentes proyectos web con módulos adicionales. Es no sólo las aplicaciones antes mencionadas (completa o parcial) que se basan en Symfony, pero también el sitio web de la transmisión de música servicio, Spotify . La página web francesa de la revista de moda, Vogue , también se beneficia de la utilización del marco de PHP.

El framework Symfony es la mejor opción para usted si usted quiere trabajar con PHP y tienen un alto grado de flexibilidad . Con el fin de utilizar las bibliotecas individuales correctamente, sin embargo, necesita saber más que lo básico del lenguaje de script. Por lo que planificar un tiempo para llegar a conocer las características del marco y luego tomar ventaja de todos los beneficios de desarrollar con Symfony. desarrollo

  • 07/05/17
  • Web
  • ¿Qué te pareció el artículo? 41
  • Digitalización
  • Big Data
  • sistemas de almacenamiento

Deja un comentario