Если у вас много полей, я бы посчитал строителем - если важна неизменность.
С точки зрения того, является ли это излишним, оно действительно сильно зависит от варианта использования. Если это внутренний объект для использования в вашем собственном коде или среди нескольких близких соратников, я бы сказал, да, это определенно излишне делать все это преждевременно. Это усложняет развитие дизайна (подумайте, сколько вам нужно изменить, если вы добавите одно поле), и, скорее всего, создаст много кода, который не будет использоваться.
Если, с другой стороны, вы смотрите на более крупный, распределенный проект или публичный API, я думаю, что это идет вразрез с основами. Как минимум, обо всем в этом списке следует подумать, даже если в конечном итоге решено, что класс может быть изменчивым, например, по крайней мере, решение было принято разумно.