Пару вопросов об архитектуре (хелперы)

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
Аватара пользователя
Sereja3578
Сообщения: 204
Зарегистрирован: 2016.09.21, 11:15
Контактная информация:

Пару вопросов об архитектуре (хелперы)

Сообщение Sereja3578 »

Всем привет) Есть вопрос к более опытным товарищам. Есть допустим класс модели ContractForm, для отправки данных через api на другой сервер. То есть на другом проекте есть таблица contract, я из своего приложения должен собрать массивы данных (контрактов) и отправить их туда курлом.

На своем проекте создаю схожу сущность, ContractForm extends Model implements FormInterface. Тут указываю набор свойств, такой же как у модели на другом сервере и рулсы аналогичные тем, чтобы все было без ошибок. Теперь мне надо от сущности существующей на моем сервере Strategy перейти к сущности Contract. То есть у меня есть набор стратегий, в которых есть свойства использующиеся в контрактах, например win_coef, bet_amount, win_amount и так далее и мне нужно на основе этих стратегий создавать кучу контрактов и используя заданные свойства вычислять другие еще свойства, например expense_amount = bet_amount.

У меня есть несколько мыслей
1 Использовать ContractHelper для генерации контрактов на основе стратегий. Реализуем метод preparedContractsFromStrategies($strategies), передавать туда стратегии, перебирать их циклом, и на основе каждой создавать ContractForm (сетить нужные свойства), а потом вызывать метод calculateContract, чтобы на основе установленных свойств произвести расчеты контракта. Сохранять полученные контракты в коллекцию и возвращать.

2. Все это реализовать в рамках модели ContractForm. Но как в рамках этой модели все красиво реализовать?

Что лучше?
zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

Re: Пару вопросов об архитектуре (хелперы)

Сообщение zelenin »

то, с какой ноги ты встаешь утром, это не архитектура. способ прибивать к стенке полку - не архитектура. любить сладкий чай - не архитектура.
Nex-Otaku
Сообщения: 831
Зарегистрирован: 2016.07.09, 21:07

Re: Пару вопросов об архитектуре (хелперы)

Сообщение Nex-Otaku »

1. Сделай любым удобным способом. Добейся, чтобы работало.
2. Посмотри критически, выяви слабые места.
3. Сделай рефакторинг слабых мест.
4. Повторяй 2 и 3, пока не будешь удовлетворён качеством.

Только ты сам сможешь увидеть, какие решение наиболее годятся в твоей ситуации. Поэтому, следуй этой простой инструкции и всё будет хорошо.

Слишком много размышлять над архитектурой бывает вредно. Бывает так, что проблема никак не осмысливается. Тогда лучше всего, сразу сделать, как получается. В 8 случаях из 10 тут же становится ясно, как это переписать.
Ответить