Проблема, о которой поговорим сегодня – генерация хитрых архитектур для коннектора. Сразу же скажу, что коннектор в рамках OsEngine, насколько бы он для вас сложным не был, — очень простая штука, если пользоваться моими советами и вести тесты. Настолько простая, как складной нож. Он очень прост и не нуждается ни в каких дополнениях.
Складной нож не нужно прикручивать к палке, чтобы им управлять.
Складной нож не требует постоянного отмачивания в машинном масле.
И конечно же, складной нож не нуждается в перевязывании изолентой с другими предметами — топорами или вилками. В этом нет смысла.
Совместные классы-парсеры для разных коннекторов.
Самое худшее, что можно сделать, – придумать класс, который будет использоваться разными коннекторами для парсинга данных. Сколько бы я этого не видел, это почти неизбежно приводит к неработоспособности коннектора.
Всё это заканчивалось переделыванием с нуля.
Поэтому:
Совместные классы-парсеры, вёбСокет-обёртки и рест-оболочки для коннекторов запрещены.
Кол-во папок.
Все классы и файлы, которые создаются в рамках работы над коннектором, должны находиться в папке Market/Servers, что в проекте:

Один брокер/биржа криптовалют – одна папка, в которой могут быть подпапки, разделяющие биржу по площадкам. Например, в случае с Binance / BitGet это разделение на фьючерсы и спот:

Сама площадка должна состоять из:
- Класса реализации сервера.
- Класса с разрешениями для этого сервера.
- Подпапки Entity(JSON), в которых хранятся JSON объекты и возможные хелперы, если коннектор сложный.
Всё, что выходит за рамки этой схемы, вне закона.
Паттерны проектирования ЗАПРЕЩЕНЫ.
В данный момент ServerRealization – это набор функций, которые надо правильно реализовать. Он не требует применения никаких паттернов проектирования совсем.
Им здесь нет места.
Что почитать?
- https://habr.com/ru/articles/542484/ Паттерны. Будет что-то из этого, коннектор отправится в урну.
Пост из серии «Коннекторы к OsEngine»
Серия о том, как стать настоящим программистом и изменить свою профессию.
Оглавление и смыслы здесь: https://smart-lab.ru/company/os_engine/blog/959953.php
Комментарии открыты для друзей, добавляйтесь!
OsEngine: https://github.com/AlexWan/OsEngine
FAQ: https://o-s-a.net/os-engine-faq
Поддержка OsEngine: https://t.me/osengine_official_support
Курилка, общаемся здесь: https://t.me/o_s_a_chat
Регистрируйся в АЛОР и получай бонусы: https://www.alorbroker.ru/open
Сайт АЛОР БРОКЕР: https://www.alorbroker.ru
Раздел «Для клиентов»: https://www.alorbroker.ru/openinfo/for-clients
Подробнее https://smart-lab.ru/compan...

