Skip to content

dlarionov/battle-domain-model

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 

Repository files navigation

battle-domain-model

Есть огры, гоблины и овцы. Огры могут есть только гоблинов и овец. Гоблины могут есть только друг друга и овец. Все могут драться. Огры и гоблины могут пользоваться оружием. Если кто-то пытается съесть кого-то, то он становится агрессором, а другая сторона - обороняющимся. При этом происходит драка. Попытка съесть считается успешной, если все участники противоположной стороны погибли в драке. На исход драки влияет раса участников, их количество и оружие. Конкретная реализация драки на усмотрение кандидата.

С помощью разработанной модели реализуйте ситуации:

  1. Гоблин съел овцу
  2. Два гоблина подрались из-за овцы. Победитель съел овцу.
  3. Огр попытался съесть группу гоблинов, но не смог.
  4. Группа огров успешно съели группу гоблинов.
  5. Два огра попытались съесть гоблина с волшебным мечом, но не смогли.
  6. Стадо овец и группа гоблинов дерётся с двумя ограми и побеждает.

Разрешается самостоятельно уточнять исходные условия, но все уточнения должны быть явно оговорены перед решением.

Критерии оценки:

  1. Читаемость и простота кода
  2. Лёгкость расширения (новые расы, новое оружие, новые взаимодействия).
  3. Лёгкость усложнения механики (новые эффекты оружия, рас, логики взаимодействий)
  4. Следование DDD и SOLID

About

The solution of the task given at the interview

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages