Рефлексия оправдана для: универсальной сериализации (encoding/json), плагинов, динамических типов, утилит общего назначения (глубокое копирование, маппинг полей по тегам).
Лучше без нее: когда типы известны при компиляции (интерфейсы, дженерики), когда критична производительность, когда важна простота и поддерживаемость.