Именованные параметры С# 4.0 - должны ли они всегда использоваться при вызове методов, отличных от Framework?

77
8

На самом деле, это очень субъективная тема, но вот мой текущий прием:


При вызове методов, которые не являются частью идентификационных параметров .NET BCL, всегда следует использовать, поскольку сигнатуры методов могут сильно измениться, особенно во время цикла разработки моих собственных приложений.


Хотя они могут казаться более подробными, они также намного яснее.


Является ли приведенный выше разумный подход к вызывающим методам или я упускал из виду что-то фундаментальное?

спросил(а) 2021-01-25T18:29:20+03:00 5 месяцев назад
1
Решение
89

Я думаю, что это сверху, лично. (Я также считаю более правильным и понятным назвать их именованными аргументами - параметры всегда имеют имена, как та часть декларации.)


Во многих случаях смысл кристально чист от имени метода - особенно, если есть только пара аргументов. Зачем добавлять имя? Почему этот факт может повлиять на этот факт?


Я бы предложил использовать именованные аргументы:

    При использовании дополнительных параметров
    Когда есть несколько параметров одного и того же типа, их можно путать (например, заголовок диалогового окна и текст текста).
    Когда вы используете null для аргумента, и это не ясно, что он делает

Иными словами, как часто не были названы аргументы, вы путаете до С# 4? В моем случае это, конечно, отличное от нуля количество случаев - ситуации выше, но это не то, что регулярно мешало мне. Необязательные параметры делают его более разумным для того, чтобы метод (или, в частности, конструктор) имел потенциально много параметров, и это приводит к тому, что именованные аргументы более полезны (и действительно необходимы, если вы хотите указать "поздние" необязательные параметры, пропустившие ранее).

ответил(а) 2021-01-25T18:29:20+03:00 5 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема