Je pense que certaines personnes se bloquent sur des questions tangibles à la question, comme l'opérateur ternaire. Oui, beaucoup de gens détestent ça, alors peut-être que c'est bon de parler de toute façon.
Concernant le centre de votre question, déplacer l'instruction renvoyée pour qu'elle soit référencée par une variable ...
Cette question fait 2 hypothèses avec lesquelles je ne suis pas d'accord:
Que la deuxième variante est plus claire ou plus facile à lire (je dis que le contraire est vrai), et
que tout le monde utilise Visual Studio. J'ai utilisé Visual Studio plusieurs fois et je peux l'utiliser très bien, mais j'utilise généralement autre chose. Un environnement de développement qui force un IDE spécifique est un environnement dont je serais sceptique.
Rendre quelque chose à une variable nommée rend rarement plus difficile la lecture, cela fait presque toujours le contraire. La manière spécifique dont quelqu'un le fait peut causer des problèmes, comme si un suzerain de l'auto-documentation le fait, var thisVariableIsTheFormattedResultAndWillBeTheReturnValue = ...
c'est évidemment mauvais, mais c'est un problème distinct. var formattedText = ...
c'est bien.
Dans ce cas spécifique , et peut-être dans de nombreux cas puisque nous parlons de 1-liners, la variable ne vous dirait pas grand-chose que le nom de la fonction ne vous dit pas déjà. Par conséquent, la variable n'ajoute pas autant. L'argument de débogage pourrait toujours tenir, mais encore une fois, dans ce cas spécifique, je ne vois rien qui soit susceptible d'être votre objectif lors du débogage, et il peut toujours être facilement modifié plus tard si quelqu'un a besoin de ce format pour le débogage ou autre chose.
En général, et vous avez demandé la règle générale (votre exemple était juste cela, un exemple de formulaire généralisé), tous les arguments avancés en faveur de la variante 1 (2 lignes) sont corrects. Ce sont de bonnes directives à avoir. Mais les directives doivent être flexibles. Par exemple, le projet sur lequel je travaille a maintenant un maximum de 80 caractères par ligne, donc je divise beaucoup de lignes, mais je trouve généralement des lignes de 81 à 85 caractères qui seraient difficiles à diviser ou à réduire la lisibilité et je les laisse la limite.
Puisqu'il est peu probable d'ajouter de la valeur, je ne ferais pas 2 lignes pour l'exemple spécifique donné. Je referais la variante 2 (le 1-liner) car les points ne sont pas assez solides pour faire autrement dans ce cas.