Какую парадигму или шаблон использовать для создания оболочки над API с python? - PullRequest
2 голосов
/ 19 апреля 2020

Я хочу создать библиотеку с python, которая использует различные службы из aws для доступа к моим данным. Данные могут поступать из s3-bucket (AWS) с библиотекой boto3 или через сервисы из aws (например, AWS Athena, или, возможно, dynamicodb или даже rds) ...

Это все должно быть сделано с python. Я не могу решить, должен ли я go для объектно-ориентированного подхода для определения интерфейсов (как я должен сделать это ab c library =)?) Или go для функционального подхода (перезаписать функции через файл конфигурации) ?

Я подумал об использовании моей библиотеки в качестве абстрактного класса -> определения методов, а затем создал подклассы, наследующие и реализующие определенные методы.

Но что произойдет, если я захочу, например, * 1007? * метод использования s3 в качестве основного источника данных и read_organisation_data() из DynamodB. В этом случае я не мог изменить базовый класс. Так что делать, если я хочу быть гибким в использовании разных источников данных.

Мне кажется, что я не могу использовать один интерфейс для этого подхода, поскольку может случиться так, что мне понадобятся два разных подкласса в одно приложение

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...