En esta clase se mencionó algo muy importante, y es el tipo de dato que se espera, cuando trabajamos con parámetros en las funciones es posible especificar qué tipo de dato estamos esperando, esto hace que sea un código mejor estructurado y te acerca más a las buenas prácticas, de igual manera, los métodos de las clases pueden especificar qué tipo de dato se va a retornar, así le confirmamos 100% a quien use nuestra clase que vamos a retornarle si o si tal tipo de dato, por ejemplo, en esta clase:
<?php
namespace App;
class Comment {
public $like_count = 0;
public function like(User $usuario) : int {
return $this->like_count;
}
}
?>
Vemos que hay un método que espera como parámetro “User $usuario”, esto quiere decir que, el parámetro $usuario tiene que ser si o si una instancia de la clase Usuario, si yo reemplazara “User” por “string” le estarían diciendo que espero que el parámetro $usuario sea una cadena de texto.
De igual manera, es función tiene al final " : int" esto está diciendo que el método va a devolver si o si un entero, de esta manera podemos hacer un código más robusto y a prueba de errores.
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?