Хотя, возможно, это не совсем тот ответ, который вы ищете, я бы сказал, что компонентно-ориентированный дизайн имеет тенденцию подстраиваться под элегантный код посредством элегантной архитектуры. Размышление о том, как отделить код, будет применять структуру и порядок к хаотичному процессу (иногда). Элегантность кода может быть либо нарушена заранее, до реализации (вам лучше быть тщательным), либо искать первоначальную интеграцию посредством рефакторинга и упрощения. Если вы используете модель на основе компонентов, то рефакторинг составных частей вашего приложения становится гораздо более управляемой задачей - до тех пор, пока ввод и вывод остаются неизменными в процессе украшения / упрощения. Сосредоточение внимания на общей структуре приложения для меня стало краеугольным камнем элегантного кода. Без первого трудно достичь последнего, если ваше приложение не имеет небольшой области действия.
Суть в том, что код - это податливый и постоянно меняющийся процесс. Элегантность такова только в разные моменты времени, потому что что-то может начаться элегантно и через несколько итераций превратиться в тупик. После того, как это происходит, он снова превращается в элегантность, и поэтому, поддерживая эту идею с помощью звуковой архитектуры, вам будет проще сохранять ваш код настолько элегантным, насколько это возможно, не ломая несвязанные элементы.