Laravel Türkiye Discord Kanalı Forumda kod paylaşılırken dikkat edilmesi gerekenler!Birlikte proje geliştirmek ister misiniz?

Bulmadım , doğru başlığı dahi bulamadım ama soruyu doğru soracağımı varsayıyorum ,
Sanırım laravel ile igili değil ama php .nette'de ilgili dökümanı bulamadım .
Sorum şöyle ;

kendi oluşturduğum belongsTo metodum şöyle


  public function user()
    {
        return $this->belongsTo(User::class);
    }

bir kaç yerde hatta bu forumda da @mgsmus hocanın verdiği bir kaç kodda bu yukardaki şöyle oluşturuluyor

use Illuminate\Database\Eloquent\Relations\BelongsTo;


 public function user(): BelongsTo
    {
        return $this->belongsTo(User::class);
    }

birinci sorum ikinci kullanımın bir avantajı varmı yada farkı nedir ?
ikinci sorum php dökümantasyonunda bu kullanımın anlatımını bulamadım veya ilgili anahtar kelime nedir

    yalcin https://www.php.net/manual/en/language.types.declarations.php

    Dönüş tipi belirleyerek yöntemin verilen tipte döndüğünden emin olursunuz, Yanlış tip belirlenmişse statik dillerde derleyici derlenmesine izin vermez, bu PHP'nin dezavantajlarından biri ama statik analiz araçları mevcut.

    Bunun iki faydası var:

    1. Yöntemi kullanırken dönüş tipini bildiğiniz için sürpriz yaşamazsınız.
    2. Hata yapmışsanız bile bu iş hatasına dönüşmeden fatal error vererek daha fazla hatanın önüne geçmenize yardımcı olur.

    Type declarations olarak aratabilirsiniz.

    Method un döneceği değer türünü veya aldığı parametrelerin türlerini belirtmek ilgili methodu stabil olmasını sağlıyor. Aşağıdaki örneğe bakacak olursak sum adında methodumuz var. Bu method int tipinde 2 değer alıyor ve sonuç olarak bunların toplamlarını int olarak dönüyor. Günün sonunda bu methodu kullanırken verilecek parametreler int dışında girilirse ide uyarı verecek, ide kullanmıyorsak bile içerideki işlemlere geçmeden önce type error verecek. Ve return type declare edildiği için bu methoddan alınan sonucun her halükarda int olacağını biliyoruz. String veya başka türde bir değer dönmeyeceğinden eminiz. Artık gönül rahatlığıyla bu methoddan dönen değeri int olarak kullanabiliriz. Bu örnekte int gibi bir tür belirttim ama bir class da döneceğini declare edebiliriz, böylece verilen parametrelerin türleri belli ve dönecek değerin türü belli olacaktır.

    class Math 
    {
        public function sum(int $var1, int $var2): int
        {
            return $var1 + $var2;
        }
    }

    çok teşeşkür ettim