Junior — Middle
100
Кодта декоратор паттернін қолданудың мысалын келтіре аласыз ба?
Сұралған компаниялар
AI-дан жауап
sobes.tech AI
Декоратор үлгісі объектілерге жаңа міндеттерді динамикалық түрде қосуға мүмкіндік береді, оларды басқа декоратор объектілеріне орау арқылы.
Python-да мысал — шақыруды логтау үшін декоратор қосамыз:
class Component:
def operation(self):
return "Негізгі операция"
class Decorator:
def __init__(self, component):
self._component = component
def operation(self):
result = self._component.operation()
return result
class LoggingDecorator(Decorator):
def operation(self):
print("Лог: операция шақыруы")
result = self._component.operation()
print("Лог: операция аяқталды")
return result
# Қолдану
component = Component()
decorated = LoggingDecorator(component)
print(decorated.operation())
Шығу:
Лог: операция шақыруы
Лог: операция аяқталды
Негізгі операция
Осылайша, біз Component объектісін LoggingDecorator-ға орадық, логтау функционалдығын бастапқы класс өзгеріссіз қосу үшін.