Sobes.tech
Junior — Middle
107

Бағдарламалық жүйелерді әзірлеуде қолданылатын негізгі мінез-құлық үлгілерін тізе аласыз ба?

AI-дан жауап

sobes.tech AI

Негізгі мінез-құлықтық жобалау үлгілері, жиі қолданылатындар:

  • Стратегия (Strategy) — орындау кезінде алгоритмді таңдауға мүмкіндік береді.
  • Қадағалаушы (Observer) — тәуелді объектілерді өзгерістер туралы хабардар етеді.
  • Тапсырма (Command) — сұрауды объект ретінде инкапсуляциялайды, клиенттерді параметрлеуге мүмкіндік береді.
  • Итератор (Iterator) — коллекция элементтеріне ретті түрде қол жеткізу тәсілін ұсынады.
  • Күй (State) — ішкі күй өзгерген кезде объектінің мінез-құлқын өзгертуге мүмкіндік береді.
  • Ортақ (Mediator) — объектілер арасындағы өзара әрекетті орталықтандырады.
  • Шаблон әдісі (Template Method) — алгоритмнің қаңқасын анықтайды, ал ұрпақтар қадамдарды қайта анықтай алады.

"Стратегия" үлгісінің Python-дағы мысалы:

class Strategy:
    def execute(self, data):
        pass

class ConcreteStrategyA(Strategy):
    def execute(self, data):
        return sorted(data)

class ConcreteStrategyB(Strategy):
    def execute(self, data):
        return sorted(data, reverse=True)

class Context:
    def __init__(self, strategy):
        self.strategy = strategy

    def do_something(self, data):
        return self.strategy.execute(data)

context = Context(ConcreteStrategyA())
print(context.do_something([3,1,2]))  # [1, 2, 3]
context.strategy = ConcreteStrategyB()
print(context.do_something([3,1,2]))  # [3, 2, 1]