Википедия достаточно полная по теме анти-шаблонов , и вот книга по этой теме: AntiPatterns.
Первая пятерка по моему опыту:
Enterprise Seakeole:
1: прочтите, что ваш доступ к базе данных должен находиться в отдельном слое
2: эй, у нас есть слой базы данных.
2 (b) Эй, у нас даже есть делегатский слой для абстрагирования нашей базы данных.
3: Примените Законтенные абстракции , поскольку есть методы в делегатах, которые получают вещи, просто предполагают, что они там пользоваться без мысли последствий - как в Call "GetPourdorder () «10 раз подряд на странице, хотя GetPurchSeorder () - это метод, который включает 5 отдельных вызовов баз данных.
4: Сядьте назад и наслаждайтесь веб-страницами, которые загружаются с 100 отдельными вызовами базы данных (к сожалению, не преувеличением).
Не уверен, что я бы назвал это как антипаттерн? Может быть, «слои не свободны»?