Acho que em "Ao passar mais de um parâmetro em uma função receba os parâmetros dentro de um objeto." faltou colocar heading (#, ##).
É algo que faz total sentido. Se tu consegue colocar todos os parâmetros em um objeto, então você você consegue abstrair tudo para um único parâmetro. O 0 parâmetro seria um método, então você teria que ter isso mapeado numa classe.
Uncle Bob fala que o número ideal de parâmetros é 0; 1 é ótimo; 2 tá OK; 3 ou mais é indicativo que algo tá errado hehehe.