• [^] # Re: Ouaiche

    Posté par . En réponse au lien "Rust vs. Go: Why They’re Better Together". Évalué à 2. Dernière modification le 22 mars 2021 à 08:27.

    Y'a pas de checked exceptions, ni de throwable ni de errors (j'ai pas regardé ce que c'était en Java, mais en C# ça n'existe pas).

    Y'a juste de bonnes vieilles exceptions. Et c'est absolument tout:
    https://docs.microsoft.com/en-us/dotnet/standard/exceptions/best-practices-for-exceptions

    Les seuls patterns qui pourraient surprendre quand on vient d'autres langages c'est try/catch/finally et le vieux pattern Try-Get (comme int.TryParse), et le mot clé (optionnel) pour filtrer les exceptions : when

    Depuis C# 8 y'a l'option d'activer les Nullable Reference Types, mais c'est juste le compilateur qui vérifie pour toi si tu as bien vérifié et évité null partout et que tu as mis des annotations (ça reprend la même que pour les bons vieux nullable, comme int? à la place de int).
    Mais c'est autre chose. Disons que ça aide à combattre les NullReferenceException, et c'est pas trop tôt (en F# NULL ça n'existe pas et il s'en sort pas si mal :p ).

    "Quand certains râlent contre systemd, d'autres s'attaquent aux vrais problèmes." (merci Sinma !)