From c645973b52b800bbd8da783039a50c764fd25dd3 Mon Sep 17 00:00:00 2001 From: Paul Schneider Date: Fri, 21 Aug 2026 20:33:30 +0100 Subject: [PATCH] no object --- CONTRIBUTING.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 7a045bbd..e528b7a4 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -115,6 +115,13 @@ Quelques règles non capturées par `.editorconfig` : - Préférer les types BCL (`int`, `string`) aux types framework (`Int32`, `String`). - Préférer les expressions de pattern matching aux casts explicites. +- **Pas de `object` dans le code source applicatif.** Types de retour, + paramètres, champs, propriétés, variables locales : tout doit être + typé statiquement. `dynamic` est interdit pour les mêmes raisons. + Un cast en `object` est presque toujours le symptôme d'un contrat + qu'on a laissé s'effriter (DTO, payload, handler) — refactore + le contrat (record typé, DTO dédié, méthode dédiée) au lieu de + shimer avec un cast. ## Branches & commits