Paulo,
Na minha opinião se os objetos NÃO são complexos... sim, seria ruim.
Ao chamar o construtor, você está verificando se foi passado o "item", se não foi passado apresentará erro de "design-time".
Por favor, veja também estes lindos links que separei só para você. Ternho certeza que você irá adorar.
===============================================================
Builder
Também conhecido como: Construtor
Propósito
O Builder é um padrão de projeto criacional que permite a você construir objetos complexos passo a passo. O padrão permite que você produza diferentes tipos e representações de um objeto usando o mesmo código de construção.
...
https://refactoring.guru/pt-br/design-patterns/builder
===============================================================
Design Patterns: aplicando os padrões builder, Singleton e prototype
Veja nesse artigo, através de vários exemplos, como utilizar os padrões criacionais Builder, Prototype e Singleton.
https://www.devmedia.com.br/design-patterns-aplicando-os-padroes-builder-singleton-e-prototype/31023
===============================================================
Engenharia de Software Moderna
Marco Tulio Valente
6 Padrões de Projeto
6.13 Quando Não Usar Padrões de Projeto?
https://engsoftmoderna.info/cap6.html
===============================================================
[]'s,
Fabio I.