Вероятно, вы не найдете большого ресурса о пошаговом рефакторинге больших примеров. Потому что вы никогда не сможете охватить все типы примеров.
Причина, по которой Мартин Фаулер использует небольшой и простой пример в «Рефакторинге», заключается в том, что почти каждый большой кусок плохого кода представляет собой комбинацию различных неприятных запахов. Научившись распознавать особые неприятные запахи, вы можете постепенно исправлять код.
Я рекомендую вам проверить Эффективная работа с устаревшим кодом . Эта книга посвящена стратегиям улучшения большого унаследованного кода. Что касается дизайна классов, вы, вероятно, захотите прочитать несколько книг о шаблонах проектирования.
Самое главное, попробуйте применить в своем коде то, что вы узнали из книги.