Я изо всех сил пытаюсь найти что-то в Интернете, чтобы дать какие-нибудь рекомендации о том, какие могут быть лучшие практики для кодирования решения для того, что я пытаюсь реализовать.
Что-то похожее на то, что мы хотели быдостижения - инструмент автоматизатора, который является частью OS X:
https://support.apple.com/en-gb/guide/automator/welcome/mac
В основном будет библиотека действий, которые поддерживаются в системе.Эти действия будут иметь разные аргументы, в зависимости от действий.
Пользователь может создать собственный рабочий процесс, используя набор действий, и назначить конкретные данные, которые будут использоваться вместо аргументов.Затем они могут запускать рабочий процесс несколько раз.
Подход, который я рассматривал:
Наличие таблицы действий в БД.Действие имеет имя и код (скрипт python, хранящийся в БД).
Actions
Name (string): Go To webpage
Code (string): python code to go to page <url>
Когда пользователь создает рабочий процесс, он выбирает из этих доступных действий для его построения.Затем они сохраняются, чтобы их можно было снова запустить с нужными параметрами.
Workflow
ExecutionOrder (int): 1
Name (string): Go To Webpage
Data (json): { url: "www.blah.com", }
При запуске рабочего процесса код будет вызываться динамически с использованием функции Exec в Python.с кодом, обновленным данными, определенными (в данном примере URL) перед запуском.
Другой вариант - переместить код в функции (вне БД).С именем действия и данными JSON, используемыми для определения, какую функцию вызывать и какие данные передавать в список аргументов.
Я не уверен, что это лучший подход, но немного застрял в отношении альтернатив,Какой-нибудь совет относительно поддерживающих технологий или подходов для достижения этого?