Articulo de referencia

Neos Flow

Flow (anteriormente conocido como TYPO3 Flow o FLOW3 ) es un framework de aplicaciones web gratuito y de código abierto escrito en PHP . La primera versión final se lanzó el 20 ...

Flow (anteriormente conocido como TYPO3 Flow o FLOW3 ) es un framework de aplicaciones web gratuito y de código abierto escrito en PHP . La primera versión final se lanzó el 20 de octubre de 2011. Fue diseñado principalmente como base para el sistema de gestión de contenidos Neos , pero también puede utilizarse de forma independiente. Es adecuado para el desarrollo en PHP de aplicaciones web de tamaño mediano o grande.

Historia

En 2006, los desarrolladores del sistema de gestión de contenido TYPO3 decidieron reescribir el sistema desde cero. La arquitectura y la tecnología subyacente de la rama 4.x representaban lo último en tecnología a principios del nuevo milenio. Si bien el sistema se ha desarrollado aún más desde su lanzamiento en abril de 2006, los desarrolladores coincidieron en la necesidad de un rediseño completo del código para cumplir con los estándares modernos. [ 2 ] [ 3 ] [ 4 ] Flow surge de esta decisión como un marco de trabajo independiente que puede utilizarse independientemente de TYPO3.

El 29 de agosto de 2011, los desarrolladores anunciaron el primer lanzamiento beta después de "8 meses de arduo trabajo". [ 5 ]

En la conferencia magistral de la conferencia internacional TYPO3 2011 (T3CON11) en Hanau, Alemania, Robert Lemke, desarrollador jefe de la próxima versión de "próxima generación" de TYPO3, anunció que el lanzamiento de la versión final de Flow sería el 20 de octubre. [ 6 ]

En la conferencia internacional TYPO3 2012 (T3CON12) se anunció TYPO3 como una marca de la familia. [ 7 ] Posteriormente, todos los nombres de productos del proyecto TYPO3 ahora comienzan con TYPO3 , y como "TYPO3 Flow3" no es fácil de pronunciar ni coincidiría con el nombre de los otros productos, se cambió a "TYPO3 Flow".

Más adelante, cuando los proyectos NEOS y TYPO3 tomaron caminos diferentes, "TYPO3 Flow" pasó a llamarse "Flow" como parte del proyecto NEOS. [ 8 ]

Uso

Neos Flow constituye la base de la plataforma de aplicaciones de contenido Neos, pero también puede utilizarse de forma independiente para crear aplicaciones propias, como un sistema de blogs, comercio electrónico o tareas similares. En la documentación de Flow, se utiliza un sistema de blogs para visualizar los distintos paradigmas de Flow, como el modelo-vista-controlador (MVC), la programación orientada a aspectos o el diseño dirigido por el dominio (DDD). El sistema utiliza espacios de nombres y, por lo tanto, requiere PHP 5.3 o superior. Emplea Doctrine 2 como capa de abstracción de base de datos y puede interactuar con, por ejemplo, MySQL y PostgreSQL.

paradigmas

Los desarrolladores de TYPO3 Flow se centraron en una serie de paradigmas y patrones de diseño , algunos de los cuales se consideran innovadores dentro de la comunidad PHP. Estas convenciones ayudan a los desarrolladores a crear código limpio y estructurado de manera efectiva y a prevenir errores [ 3 ]. Algunos aspectos importantes son:

Al diseñar TYPO3 Flow, los desarrolladores se aseguraron de que su código personalizado tuviera dependencias mínimas de la API de TYPO3 Flow. Esto permite a los usuarios importar y utilizar módulos que originalmente fueron escritos para otros sistemas (como Symfony ) para usarlos en TYPO3 Flow con muy pocas modificaciones. [ 3 ]

TYPO3 Flow se basa en conceptos básicos y transparentes para facilitar al máximo su uso. Así, el usuario puede, por ejemplo, mostrar información del cliente escribiendo solo tres o cuatro líneas de código PHP en una plantilla Fluid con código HTML. Si se siguen las convenciones al pie de la letra, el framework aplica automáticamente sus funcionalidades al código (por ejemplo, las normas de seguridad).

Como nota al margen, la comunidad Java WCMS también ha estado prestando atención al desarrollo de TYPO3 Neos y TYPO3 Flow , por su arquitectura moderna y su base de código transparente [ 3 ] [ 10 ].

Desarrollo

El 2 de junio de 2009 se lanzó la primera compilación como FLOW3 1.0.0 Alpha 1 [ 11 ] En el período siguiente se lanzaron aproximadamente 14 versiones alfa, hasta que FLOW3 estuvo listo para la fase beta en agosto de 2011. [ 12 ] En esta etapa temprana de desarrollo, la API no ha cambiado, para garantizar la compatibilidad con versiones anteriores . El equipo central de TYPO3 Flow actualmente consta de once desarrolladores que trabajan activamente en el marco. [ 3 ]

Historial de versiones

Leyenda:
No compatible
Compatible
Última versión
Versión preliminar
Versión futura

Relación con TYPO3 CMS

Mantenimiento

TYPO3 Flow fue una iniciativa de la comunidad TYPO3 y su desarrollo corre a cargo principalmente del equipo central de TYPO3. Su objetivo principal es sentar las bases para el futuro CMS TYPO3 Neos . El desarrollo y la publicación, al igual que todos los subproyectos de TYPO3, están financiados por la Asociación TYPO3.

Aproximación

La mayoría de las nuevas funciones de TYPO3 Flow se han adaptado para su uso con versiones anteriores de TYPO3 (4.3 y superiores) para facilitar una transición fluida hacia o desde TYPO3 CMS . Estas funciones se han integrado en la extensión del sistema Extbase y en el motor de plantillas Fluid . Por lo tanto, los conceptos de Diseño Orientado a Dominios (DDD) y MVC se pueden utilizar en TYPO3 CMS y posteriormente se pueden adaptar a sistemas que ejecutan TYPO3 Neos .

Estas convenciones se acordaron durante las Jornadas de Transición de 2008 en Berlín. [ 17 ] Otro resultado de esto es el cambio de nombre de FLOW3 a TYPO3 Flow , que fue decidido por la asociación TYPO3 en 2012. La asociación quería aclarar que existe una fuerte relación entre el CMS y el marco de la aplicación. [ 18 ]

Motor de plantillas fluidas

TYPO3 Flow tiene su propio motor de plantillas llamado Fluid . [ 19 ] Aunque ya existían numerosos motores de plantillas , ninguno de ellos satisfacía los requisitos de los desarrolladores. Al diseñar Fluid, se centraron en las siguientes características:

  • Soporte para estructuras lógicas (como condiciones , bucles o iteración sobre matrices ).
  • No hay código PHP en el archivo de plantilla.
  • Fácil de ampliar
  • Sintaxis simple
  • Proporcione una estructura XML para la validación automatizada de plantillas.

Ejemplo:

<f:for each= "{blogPosts}" as= "post" > Título: {post.title} <br /></f:for>

blogPosts es un array de PHP que se pasa a fluid desde código PHP externo (ViewHelper). La plantilla itera sobre este array e imprime el título de cada publicación .

Las etiquetas utilizadas en la plantilla se denominan ViewHelper . La capacidad de desarrollar ViewHelpers personalizados convierte a Fluid en un sistema de plantillas flexible y extensible.

Referencias

  1. "Versión 9.1.1" . 20 de marzo de 2026. Consultado el 2 de abril de 2026 .
  2. "TYPO3 Wiki: TYPO3 4.0" . Consultado el 6 de octubre de 2011 .
  3. 1 2 3 4 5 6 Robert Lemke (19 de octubre de 2011). "Robert Lemke en entrevista sobre FLOW3" . heise developer . Recuperado el 22 de octubre de 2011 .
  4. Rau, Jochen & Kurfürst, Sebastian: Zukunftssichere TYPO3-Extensions mit Extbase & Fluid, O'Reilly Verlag 2010, p. IX (alemán)
  5. "Notas de la versión beta de FLOW3 1.0" . Archivado del original el 19 de enero de 2013. Consultado el 12 de mayo de 2013 .{{cite web}}: CS1 maint: bot: estado de la URL original desconocido ( enlace )
  6. ^ "FLOW3-Framework kommt am 20. Oktober (Traducción automática)" . Heise.de . Consultado el 12 de mayo de 2013 .
  7. "Una forma totalmente nueva" . Asociación TYPO3. Octubre de 2012. Consultado el 12 de mayo de 2013 .
  8. ^ "Neos 3.0 – ¿todos nuevos?" . Diciembre de 2017.
  9. "Una característica empresarial transferida al mundo PHP: Programación orientada a aspectos con FLOW3 (traducción automática)" . Revista t3n . Consultado el 5 de octubre de 2012 .
  10. "Arquitectura de vanguardia para sistemas de gestión de contenido web" (en alemán). Archivado del original el 17 de octubre de 2010. Consultado el 5 de octubre de 2012 .
  11. "FLOW3 - Marco de aplicaciones PHP de TYPO3" . Archivado del original el 17 de junio de 2009. Consultado el 5 de octubre de 2012 .
  12. "Notas de la versión FLOW3" . Archivado del original el 9 de enero de 2012. Consultado el 22 de octubre de 2011 .
  13. "Descargar información sobre TYPO3 Flow" . Archivado del original el 16/10/2012 . Consultado el 05/10/2012 .
  14. Notas de la versión de FLOW3 1.0 Archivadas el 6 de octubre de 2012 en Wayback Machine . Grabación del 11 de octubre de 2011.
  15. "Notas de la versión FLOW3 1.1" . Asociación TYPO3. Archivado del original el 14 de octubre de 2012. Consultado el 30 de agosto de 2012 .
  16. "FLOW 2.0 FINAL" . Equipo de Flow. Archivado del original el 21 de noviembre de 2013. Recuperado el 17 de noviembre de 2013 .
  17. "Una hoja de ruta común para TYPO3" . Consultado el 5 de octubre de 2012 .
  18. Jan Christe. "Aus TYPO3 5.0 Phoenix wird TYPO3 Neos (traducido automáticamente)" (en alemán). Revista t3n . Consultado el 5 de octubre de 2012 .
  19. "Documentación de TYPO3 Flow 2.0.0: Plantillas" . Asociación TYPO3. Archivado del original el 18 de mayo de 2013. Consultado el 9 de mayo de 2013 .
  • https://flow.neos.io/