Подскажите С Выбором Паттерна

Народ, подскажите с выбором паттерна.

Есть модель пользователя (User).

У пользователя есть "подельники".

Есть в User метод addMoney().

И вот стратегия добавления немного запутанная.

Есть допустим несколько операций для добавления денег

  1. пользователь делится деньгами со своими "подельниками" с некоторым коэффициентом (все получают поровну)

  2. пользователь делится деньгами со своими "подельниками" (все получают по-разному)

  3. некоторая комиссия идёт администрации

  4. деньги просто зачисляются на счёт пользователя

  5. деньги вообще не зачисляются

Причём упорядоченный набор выбирается в зависимости от некоторых условий.

Например

если у пользователя статус "Одиночка", то выполняется 3->4


если у пользователя статус "Свободный", то выполняется 4


если денег > 10000 то 3->1->4

И вообще, есть ли смысл применять какие-то паттерны?

если…если…если то похоже на "стратегию"

но стоит ли применять патерн сейчас или отложить до рефакторинга, уже решайте сами

Я тоже думал о стратегии.

Но ведь на самом деле это одна и та же стратегия, только выстраивается она (последовательность операций/условии) на этапе, когда пытаются добавить денег.

Насколько я понимаю осуществить транзакцию возможно в одной функции, упростить которую можно экстрактом методов. Так что можно обойтись без паттернов.

м, не очень понимаю что такое экстракт методов…

Это название одного из методов рефакторинга (Extract method) Если у тебя есть большой и трудно понимаемый метод на 30-200+ строк то его можно упростить, вынося часть функционала в методы поменьше.

Спасибо! Так и поступлю)