Head First Design Patterns - отличная книга. Хотя его фокус, кажется, основан на Java, это принципы в этом вопросе. CFML плохо подходит для чистой OO-разработки, и в сообществе ColdFusion ведутся постоянные дебаты о том, что это не означает, что шаблоны и фреймворки бесполезны.
Все зависит от того, что лучше всего подходит для вашего приложения и для вас, как для программиста. Мне нравится изучать различные фреймворки, чтобы понять чей-то подход. Мне лично нравится работать в стиле MVC, который обеспечивает хорошую ремонтопригодность и структуру. Я использовал большинство доступных фреймворков, так или иначе, за последние несколько лет. У каждого есть свои сильные и слабые стороны.
Ссылка Патрика на SOLID тоже выглядит интригующе.