Совокупный шаблон
Эта статья в значительной степени или полностью опирается на один источник . ( март 2024 г. ) |
Шаблон агрегата может относиться к концепциям статистики или компьютерного программирования. Оба варианта использования связаны с рассмотрением большого дела как состоящего из более мелких и простых частей.
Статистика
[ редактировать ]Агрегированная модель является важной статистической концепцией во многих областях, которые полагаются на статистику для прогнозирования поведения больших групп на основе тенденций подгрупп последовательно вести себя определенным образом. Это особенно полезно в социологии , экономике , психологии и криминологии .
Компьютерное программирование
[ редактировать ]В шаблонах проектирования агрегат не является шаблоном проектирования , а скорее относится к такому объекту, как список, вектор или генератор, который предоставляет интерфейс для создания итераторов . Следующий пример кода написан на Python .
def fibonacci(n: int):
a, b = 0, 1
count = 0
while count < n:
count += 1
a, b = b, a + b
yield a
for x in fibonacci(10):
print(x)
def fibsum(n: int) -> int:
total = 0
for x in fibonacci(n):
total += x
return total
def fibsum_alt(n: int) -> int:
"""
Alternate implementation. demonstration that Python's built-in function sum()
works with arbitrary iterators.
"""
return sum(fibonacci(n))
myNumbers = [1, 7, 4, 3, 22]
def average(g) -> float:
return float(sum(g)) / len(g) # In Python 3 the cast to float is no longer be necessary
Python скрывает практически все детали, используя протокол итератора . Как ни странно, шаблоны проектирования используют слово «агрегат» для обозначения пробела в коде. for x in ___:
что не имеет отношения к термину «агрегация». [1] Ни один из этих терминов не относится к статистическому агрегированию данных, такому как сложение последовательности Фибоначчи или получение среднего значения списка чисел.
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ Шаблоны проектирования , с. 22: «Агрегация подразумевает, что один объект владеет другим объектом или отвечает за него. ... Агрегация подразумевает, что агрегатный объект и его владелец имеют одинаковое время жизни».