Так не делается.
Согласно лучшим практикам (best practices), ты должен сначала покрыть
свой код тестами. Тоесть представить на наше обозрение проект, который
компилируется и тестируется. И после этого мы сможем предлагать различные
improovements для кода базируясь на улучшении производительности
и на уменьшении например метрик code complexity.
При этом все изменения не должны ломать тесты. Это - очень важно.
По коду. Непонятно, почему в методе swapCharacters ты применил StringBuilder
и в то-же время в textModifier ты решил использовать replace и конкатенацию
строк. По отдельности к каждому методу нет вопросов. Но есть вопрос по единообразию
кода. Уж коли ты решился на суровые оптимизации скорости - то нужно выдерживать
работу в таком ключе. Это - совет по конвенции кода по отношению к своим проектам.
Договорись сам с собой. Тебе важен перформанс или просто ты делаешь POC и тебе нужен краткий код?