Сервер и клиент приложения для запоминания терминов и их определений. Сервер представляет из себя REST API с возможностью хранения карточек и коллекций, генерации и проверки тестов. Клиент посылает запросы в формате JSON и предоставляет CLI-интерфейс для взаимодействия с приложением.
Классы предметной области представлены в проекте Flashcards. Он содержит карточки, коллекции, генераторы для разных типов вопросов. Веб-сервер размещён в проекте FlashcardsApi, клиент - FlashcardsClient.
Можно добавить новый тип, реализовав интерфейсы IQuestion
, IAnswer
и IExerciseGenerator
.
Также понадобится добавить новый класс вопроса в клиенте, пополнив словарь QuestionHandler
.
Добавить новый способ фильтрации можно путём реализации интерфейса IFilterConfigurator
.
DI-контейнеры собираются в файле Startup.cs
сервера и Program.cs
клиента.