Мне пришлось признать, что мои объяснения о том, что компьютер «не смотрит на карты», принимая решения о своих дальнейших действиях, звучали неубедительно. Но это показывает, что в игре есть трое, кому известны состояния различных свойств: мой дедушка, знавший состояние своих карт; алгоритм внутреннего оппонента, который «знал» состояние своих карт; и, наконец, главный алгоритм игры, знавший все о картах обоих игроков, о каждой карте в колоде и обо всех остальных аспектах игры.
Значит, с точки зрения открытых/приватных свойств, есть смысл рассматривать виртуального оппонента как отдельную сущность, наравне с игроками. Сама же игра — это тоже отдельная сущность со специальным статусом, которая сама в себя играть не может, но может принимать решения, реализующие гейм-плей.