Este artículo es totalmente subjetivo basado en apreciaciones ya que valorar la calidad de un proyecto es una tarea compleja y se tienen que valorar muchos elementos: tests, documentación, arquitectura, etc...
En una conversación de Medium, si a veces salen cosas interesantes en Medium y últimamente salen más cosas interesantes en los comentarios que en los contenidos (que de una temporada a esta parte apestan a IA que echa para atrás), comentamos lo que gustaba más sobre las últimas novedades de PHP y algunas de las novedades que denotaban no solo usar un PHP moderno sino que el equipo de desarrollo se preocupa por hacer buen código eran los siguientes.
declare(strict_types=1);
Esta declaración de constructor define que el código que sigue a continuación esté obligada a usar tipado estricto en la definición de métodos y funciones.
Usar esta declaración no es el santo grial pero si ayuda a entender mucho mejor el código, también ayuda a las herramientas de análisis de código estático a encontrar posibles errores, y hace el código más mantenible y organizado.
Se que se puede usar mixed como una forma de "escapar" del tipado estricto pero usando el histórico de git sabríamos que desarrollador lo está usando.
final class
final class
permite definir que clases pueden ser heredables y cuales no, esta funcionalidad me parece interesante porque de forma explícita indica la relación jerárquica de las clases, y evita que haya una herencia de unas clases a otras de forma infinita.
readonly class
Readonly class es otra forma de declarar las clases, en este caso una clase que es instanciada con sus valores no podrá ser modificada, esta forma de declarar una clase ayuda para entender el uso de las mismas y normalmente las suelo usar en las clases de tipo Value Object como los DTO se benefician de readonly.
Top comments (0)