Патерны программирование, примеры их использования