1. проще дебагать
2. проще тестировать
3. проще вносить точечные изменения
когда у тебя одна большая функция, можно, во-первых, допустить какие-нибудь ошибки по-невнимательности, навроде переопределения локальной переменной. во-вторых, велик соблазн реализовать логику таким образом, что у тебя будет грубо говоря не последовательные операции с входными данными, в итоге функция становится запутанной. вносить точечные изменения становится сложнее, количество тест-кейсов на одну функцию/объект становится велико (а если их вообще нет?).