Они могут быть хорошим объявлением о намерениях и повышать читаемость, когда аргументы одного типа или могут быть неявно преобразованы.
Например
int Duration(d1,d2)
Это от d1 до d2 или d2 - d1? Intellisense может сказать вам, имеют ли аргументы хорошие имена, а также документация правильная и актуальная. Или вы можете посмотреть на код ...
С несколькими необязательными аргументами они еще более полезны, избегайте таких правил, как все необязательные аргументы, которые должны быть последними, и все до того, используйте значение по умолчанию. Общий кошмар, если по какой-то причине вам необходимо перераспределить список аргументов. Вы можете подумать о различиях между кратким и кратким. Чрезвычайно всегда хорошо, краткими редко бывает.