типа, антипаттерн...
но это все равно вызов метода в конструкторе, что не приветствуется.
Бред. Вот кем не приветствуется - вот он пускай и не приветствует и тихо миро плавает в своем болотце. Спокойно вызывайте приватный инициализатор в конструкторе - это как раз нормально. Конструктор - это и есть инициализатор объекта. Он даже называется "конструктор" - сборщик объекта. Его для этого и придумали. Выносить часть инициализации из инициализатора - на самом неделе не самая умная идея. А вот разбить инициализацию на разные логические части и разнести в разные методы - как раз таки очень даже хорошая практика. Декомпозиция, небольшие и простые функции/процедуры и все такое прочее.