Ответ 1
Очевидным ответом являются модели Ган-Чет-Четыре из знаменитой книги. Это те же шаблоны, которые перечислены повсеместно.
http://en.wikipedia.org/wiki/Design_Patterns
Помимо этого, взгляните на веб-сайт Мартина Фаулера...
Там честная битва - "знаменитая", вероятно, "инъекция зависимостей". Тем не менее, большинство других являются довольно специфичными для домена.
"Уровни Mixin" могут быть интересны для С++. Класс шаблона берет свою базу в качестве параметра шаблона, так что шаблон может использоваться для добавления той же функциональности ко многим различным классам или в виде композиционного метода, позволяющего легко включать/исключать различные функции для библиотеки. Иногда также используется любопытно повторяющийся шаблонный трюк (исходная база является окончательным полностью составленным классом), так что различные уровни mixin могут выполнять некоторую степень "отражения", так что промежуточные методы могут быть определены в терминах полностью скомпонованных типы членов и т.д. Конечно, это может быть немного склонно к неразрешимым циклическим зависимостям, если вы не будете осторожны.