Ну ось ось якась прищепка. Мене ніколи не звинувачували у виконанні популярної речі. Ясна річ, якщо речі вміщуються в одній лінії, то добре, підходять вони в одну лінію.
Але моя головна турбота - не те, чи код "потворний" чи "гарний". Моя головна турбота - як легко зрозуміти та внести зміни, не роблячи помилок.
Якщо аргументи довгі і їх дуже багато, чому б не викласти їх в окремі рядки? На мій погляд, це полегшує бачити, що вони є, і легше змінювати їх у разі потреби. Це також дає мені можливість прикласти коментар до кожного аргументу, якщо я хочу.
Я також хочу мінімізувати ймовірність помилки, якщо додати або видалити аргумент до функції, що швидше трапиться в кінці списку аргументів, ніж на початку. З цієї причини я вважаю за краще ставити кому (,) на початку рядка, ніж наприкінці. Потім, якщо, наприклад, я хочу видалити або додати аргумент в кінці списку, це однорядне редагування. Мені не доводиться поспішати з комою, яка повинна проходити в кінці всіх рядків, але останній, де останній повинен закінчуватися дужками.
Тож (хлопче, мене за це спалахнуть) я пишу так:
nameOfFunction(firstArgument
, secondArgument // optional comment
...
, lastArgument // optional comment
);
Коли є функція з п’ятьма до двадцяти аргументів, функція не стала таким чином все відразу. З часом вона зростала, тобто було багато змін. Будь-яке редагування не завершено - це синтаксична помилка або помилка. Тому я не стверджую, що це досить. Я стверджую, що це допомагає в правильному редагуванні.
(А для тих, хто каже, що я повинен передати структуру замість цього, все, що є, змістить проблему, тому що для заповнення структури вам потрібна купа рядків коду, не кажучи вже про додатковий код, щоб заявити і розподілити його.)