Хорошо.Давайте посмотрим ...
Цель состоит в том, чтобы создать плагин, который обеспечивает адаптивные функциональные возможности в платформе Moodle на основе профилей пользователей.[...] Как выбрать правильный тип плагина?Все ли в порядке с подключаемыми модулями машинного обучения, поскольку мой алгоритм относится к области машинного обучения?
Moodle является модульным модулем, что означает, что функциональность, связанная с машинным обучением / анализом данных, вполне может вписаться в машинное обучение.плагин для бэкэнда (поддерживается бэкэнд для Python), но все модификации платформы, вероятно, потребуют отдельных плагинов, в зависимости от точного характера этих «адаптивных функций».
Если вам нужен недокументированный дополнительный совет илиИнформацию о бэкэнде машинного обучения или, позже, о конкретных плагинах, которые вам, возможно, понадобится написать для «адаптивных функций», вы можете спросить на форуме разработчиков Moodle (https://moodle.org/mod/forum/view.php?id=55) и / или присоединиться к Moodle Dev Chatв Telegram и спросите (https://t.me/moodledev)
Я не могу найти способ начать создавать плагин. Там слишком много информации и нет хороших учебников для начинающих. [...] Есть ли какие-либохорошие учебники, которые я не могу найти?
Это очень важночто вы сначала решаете, в чем именно заключаются эти «адаптивные функции», потому что в зависимости от них вам может потребоваться сделать один или несколько плагинов, а разные плагины создаются немного по-разному (иногда совсем по-разному).Вот список типов плагинов: https://docs.moodle.org/dev/Plugin_types.
Лучший способ запустить любой вид разработки плагинов - это установить плагин https://moodle.org/plugins/tool_pluginskel в свой локальный экземпляр Moodle и сгенерироватьшаблонный код для вашего плагина, затем начните работать оттуда.
Об учебных пособиях ... наиболее актуальным источником информации о dev является документация, но есть несколько книг по общей разработке в Moodle (вы можете найти их).в Амазонке, Leanpub ...).Имейте в виду, что эти книги, как правило, не обновлены, поэтому сравните их содержание с последней опубликованной версией Moodle и помните, какой плагин вам нужен перед покупкой.
Обязательно ли использоватьgit?
Если вы планируете опубликовать свой код как плагин или набор плагинов, тогда да, вам нужно будет опубликовать его в общедоступном репозитории, а затем следовать обычному процессу просмотра / публикации плагинов.Вот документация о процессе: https://docs.moodle.org/dev/Plugin_validation, а вот документация о настройке автоматических проверочных тестов Travis для плагина (это проще, чем кажется) https://docs.moodle.org/dev/Travis_integration#Moodle_plugins