Сценарий: игра с доской и несколькими фишками на ней.Классы: Доска , Плитка , Игрок и, конечно, Игра .Всякий раз, когда игрок нажимает на плитку, его счет увеличивается на 1. Доска создается внутри Game , а массив Tile создается внутри Совет .Моим первым вариантом легкого увеличения этой оценки было сделать открытый статический класс с открытым статическим полем (Score).Конечно, это довольно дилетантский.И казалось, что нарушает общий поток приложения.
После некоторых размышлений я изменил все, чтобы использовать события; Tile вызывает событие при нажатии; Board обрабатывает это событие и вызывает другое событие для основного Game класса. Игрок создается внутри Game ;когда Game обрабатывает событие, полученное от Board , оно выполняет PlayerOne (экземпляр Player ). Счет + = 1;
Если япросто идти вперед и использовать этот поток?Есть ли у вас какие-либо другие идеи архитектуры / дизайна, которые бы работали лучше?Почему ваши идеи будут работать лучше?Раньше я не интенсивно использовал события, сделанные по заказу, и чувствую, что все событие, порождающее еще одну идею, может быть немного ошибочным.Хотя издалека это выглядит как хороший поток.И это, безусловно, делает работу правильно.