Las buenas prácticas oficiales de Symfony

Hoy lunes 13 de octubre de 2014 se han presentado por primera vez las Buenas Prácticas Oficiales de Symfony. Se trata de un documento con decenas de recomendaciones para desarrollar aplicaciones Symfony tal y como los creadores del framework piensan que es la mejor manera.

Para los impacientes, estos son los enlaces que importan:

Como seguramente tienes muchas ganas de empezar a leer estas buenas prácticas, me gustaría simplemente aclarar tres cosas:

  • Estas son las buenas prácticas oficiales. Por tanto, no son las buenas prácticas perfectas ni las únicas que se pueden seguir para desarrollar buenas aplicaciones Symfony.
  • No es obligatorio seguir estas buenas prácticas. Si no te gustan o crees que no te sirven, no las uses y olvídate de ellas para siempre.
  • No tienes que actualizar tus aplicaciones Symfony existentes para que sigan estas buenas prácticas. Si te gustan estas buenas prácticas, utilízalas solamente para las nuevas aplicaciones.

Comentarios

  1. Buenas Javier!

    Seguimos con lo mismo, una vez más. Un libro muy interesante para unificar el "Full-Stack Symfony way". Es importante que no dejemos de lado esta parte... "Full-stack". De todas formas, se demuestra una vez más que la gente aprovecha cada oportunidad que se presta para aportar su subjetivo punto de vista, ignorando la parte objetiva que es la más importante en este caso.

    Mucha gente no estará de acuerdo con muchas cosas que ponen en el libro, yo mismo discrepo de muchos puntos y además de una forma muy fuerte, pero considero que es un muy buen trabajo para la gente que trabaja con el Framework y no sabe como hacer las cosas. Es bueno estandarizar conceptos y procedimientos, así que muchísimas gracias por tal esfuerzo.

    Marc Morera el 13 de octubre de 2014 11:58:13

  2. Hola Javier:

    Muchas gracias por la documentación que resulta muy útil para repensar hábitos.

    Ya que mis conocimientos de Symfony no me permiten aportar consejos ni sugerencias, contribuyo aquí con una lista de errores tipográficos que he detectado para que puedas corregirlos en la siguiente versión del documento:

    Pág 8. punto 2.2.1.- Aparece "instlado correctamente" [en lugar de instalado correctamente] / Aparece (so simplemente ...) [en lugar de (son simplemente ...) ]. Pág 9. punto 2.3 .- Aparece "Symfony propone eta jerarquía ..." [en lugar de esta jerarquía] / Aparece app/cache almacena todos lso archivos [en lugar de todos los archivos] / Pág 10. Aparece vendor/ este es el directorio donde Composer instala las depdendencias [en lugar de dependencias] Pág 11. punto 2.5 Aparece directorios cahce/ [en lugar de cache/] Pág 14. punto 3.1.1 Aparece ésta funcione correcamente [en lugar de correctamente] pág 15. punto 3.2.1. Aparece LA forma tradicional en la que se dfine [en lugar de define] pág 18. punto 4.2 Aparece copuestos por el nombre [en lugar de compuestos] pág 20. Aparece entonces probablmente [en lugar de probablemente] pág 20 punto 4.3 Aparece los respositorios [en lugar de repositorios] pág 25 Capítulo 5 Aparece La regla de oro de los controladore [en lugar de controladores] pág 26. punto 5.2 Aparece lanzado pr el framework [en lugar de por] pág 31. capítulo 6 Aparece con el paso del tiempo an [en lugar de han] pág 32. punto 6.2 Aparece la definición del servicio es tn simple [en lugar de tan] pág 46 punto 9.2 Aparece [bestpractice] En lugar de poner el formato de buenas prácticas (igual ocurre en la siguiente página con la marca de cierre [/bestpractice] pág 53 Capítulo 10 Aparece El directorio web/ es publico, por lo cualquier usuario [en lugar de por lo que cualquier usuario] pág 54. punto 10.1 Aparece inlucyendo por supuesto LESS [En lugar de incluyendo] pág 55. Capítulo 11 Aparece de determindos métodos o funciones [en lugar de determinados] pág 55. punto 11.1 Aparece la lógica de negocio de tu aplicaicón [en lugar de aplicación]

    Reitero mi agradecimiento por el curro que supone elaborar una documentación como esta y espero que el documento se vaya ampliando con más consejos para los que aún estamos aprendiendo.

    Saludos.

    Daniel Bolaños Asenjo el 13 de octubre de 2014 17:51:20

  3. Hola Hugo, genial!!, para poder contribuir un poco, o a lo mejor me perdi, pero los metodos del voter no tendrian que ser publicos?

    Luis Antonio Rios el 13 de octubre de 2014 20:54:46

  4. El documento genial, gracias por este trabajo. Sólo una duda: ¿dónde está el enlace de la app de prueba?. No lo encuentro por ningún lado, ni la web oficial.

    Francisco J. Flores Palomo el 13 de octubre de 2014 21:59:35

  5. Excelente trabajo.

    Auqnue tengo 2 observaciones, la version actual es la 2.5.x la versión 2.6 todavia no aparece en la descarga en symfony.com/download

    Esta instrucción no funciona: php app/console generate:bundle --namespace="AppBundle" --dir=src --format=annotation --no-interaction

    Para que funcione hay que agregar el vendor en el namespace que es lo que se recomienda practicas evitar:

    Ejemplo: php app/console generate:bundle --namespace="NombreEmpres/AppBundle" --dir=src --format=annotation --no-interaction

    Quizas puedan dar pronto una respuesta ha estas inquietudes.

    Saludos

    Juan Urquiza el 13 de octubre de 2014 22:19:53

  6. Gracias a todos por vuestros comentarios y también a los que me habéis hecho llegar mensajes en privado. Parece que este documento va por el buen camino :)

    Daniel, gracias por esta lista tan completa de errores a corregir. Lo solucionaré en cuanto pueda.

    Francisco, el enlace a la aplicación de prueba todavía no está disponible. No sabemos exactamente dónde y cómo publicar esta aplicación. Pero pronto habrá noticias.

    Juan, el comando no funciona en las versiones viejas de Symfony y ya hay un issue creado en el repositorio para añadir esta funcionalidad.

    Javier Eguiluz el 14 de octubre de 2014 07:36:16

  7. ¡Gran documento! Muchas gracias. Javier, creo que estaría bien tenerlo vinculado en librosweb :)

    Ignacio Giménez el 14 de octubre de 2014 10:05:02

  8. Javier; gracias por tu pronta respuesta. Espero con ansia ver ese código para aprender como lo hice con el código de tu libro, el de la aplicación cupón. Una gran iniciativa este documento y ponerlo también en Castellano todo un acierto!!!. Saludos.

    Francisco J. Flores Palomo el 14 de octubre de 2014 12:06:24

  9. Mil puntos una vez más para ti Javier. Y otros mil más por haber traducido el documento al español. Quiero que sepas que en Cuba Symfony es quizás el framework PHP más utilizado. Esto se debe en gran medida a tu trabajo de promoción y a la gran documentación en español que encontramos (mucha de la cual está traducida por ti). Es una lástima que no exista aquí en Cuba una comunidad de seguidores de Symfony creada. Es una idea que tengo que ojalá algún día (yo o alguien más) la logre materializar. Gracias una vez más Javier.

    Jesús Damián García Pérez el 14 de octubre de 2014 20:39:18

  10. Para ser una primera version esta muy bien a mi parecer, yo se que a mi como a muchos otros tenemos nuestras reservas con las anotaciones y otros con los YML y viceversa, pero como dice Javier no es obligatorio, pero si seria bueno que las iniciemos a aplicar en proyectos nuevos para tener un marco comun de como organizar/trabajar nuestras aplicaciones, gracias Javier y quedamos a la espera de una actualizacion a este libro

    Wladimir Avila el 15 de octubre de 2014 01:05:15

  11. Gracias Javier por este interesante documento, siempre va bien tener referencias de como mejorar nuestras aplicaciones y su mantenimiento. Por otra parte y en el mismo hilo de buenas practicas, creo que también sería muy útil a para la comunidad un documento de buenas practicas (o un caso práctico como cupon) con Symfony en un entorno DDD, ya que muchos queremos aplicarlo en nuestros proyectos pero no sabemos muy bien como hacerlo de la forma mas correcta.

    J. Ginés Hernández G. el 16 de octubre de 2014 15:51:53

  12. Muchas gracias por este importante aporte. El solo hecho de leer el libro, nos permite reflexionar sobre la forma en la cual estamos utilizando Symfony, no es camisa de fuerza adoptar estas prácticas propuestas pero si nos da una visión mas ámplia sobre symfony y la oportunidad de mejorar y explorar cosas nuevas en próximos proyectos.

    Juan Leon Bazante el 24 de octubre de 2014 19:32:04

  13. ¿Cuando estará disponible la aplicación de prueba?

    Lo ideal sería publicarla en github, ¿no?

    Gracias!

    Fernando Hidalgo el 12 de noviembre de 2014 09:45:35

  14. Hola Javier, ya hace tiempo que leí el documento, hoy quería darle un repaso y lo he buscado aquí en las noticias porque sabia que estaba. Creo que deberías ponerle un enlace en la sección de documentación, para que sea más visible a los nuevos visitantes. Gracias por la traducción, un saludo.

    Juan Carlos Romero Osuna el 7 de febrero de 2015 12:27:57

Este artículo ya no permite añadir más comentarios.
¿Por qué? Los artículos cierran sus comentarios automáticamente unos meses después de su publicación para asegurar que estos sigan siendo relevantes.

Compartir en

Publicada el

12 de octubre de 2014

Proyectos Symfony destacados

La forma más sencilla de generar el backend de tus aplicaciones Symfony. Ver más

Descargas totales de Symfony

1.069.955.393

Ver descargas en tiempo real

Síguenos en @symfony_es para acceder a las últimas noticias.