-
Notifications
You must be signed in to change notification settings - Fork 20
Description
Мотивация
Дмитрий (@dmitriy-afanasyev) выдвинул классное предложение о создании викторин/тестов по знанию Laravel. Это должно создать ещё одну точку притяжения.
Викторины и тесты будут представлены в разнообразных форматах, включая варианты как для новичков, так и для опытных разработчиков. Успешное прохождение теста будет вознаграждаться достижением или прогрессом.
Обсуждаемо
Добавленная ценность этим опросам может быть в их эксклюзивности, поощряя чувство собственного достоинства у участников. Например, каждый участник может иметь возможность пройти тест лишь один раз в месяц.
Warning
Так как мы имеем полностью открытый код, то любой пользователь сможет открыть его и посмотреть верные ответы. Возможно стоит добавить рядом закрытый репозиторий с некоторым набором, но это усложнит поддержку и сопровождение, а что более важное усложнит онбординг новым участникам которые хотят сделать вклад. @SerafimArts если ли идеи?
Требования
Описание должно быть структурировано декларативным образом, скорее всего, потребуется приведение примеров кода как в вопросах, так и в ответах.
public function questions(): Collection
{
return collect([
Question::make([
'Какова основная цель фреймворка Laravel?',
'Какой фреймворк акцентирует внимание на элегантном синтаксисе и призван делать процесс разработки приятным?',
])
->options(['Symfony', 'Django', 'Rails', 'Express', 'Laravel'])
->answers('Laravel'),
Question::make([
'Какой компонент Laravel позволяет управлять операциями с базой данных упрощенным способом?',
'Какая функция в Laravel упрощает взаимодействие с базой данных?',
])
->options(['Eloquent ORM', 'Lumen', 'Blade', 'Artisan', 'Eloquent'])
->answers('Eloquent ORM'),
]);
}
- Метод
answers
должен принимать так же массив так как могут быть вопросы с несколькими правильными вариантами.
Визуализация:
Примерно визуализировал. Но я не против если @Hesko поработает с lotti для анимаций, что бы сердце разбивалось или на концовке был феерверк или т.п.