Я играю с еще не законченной игрой, и я вижу этот кусок кода.
//Events
public delegate void planePhase();
public static event planePhase shiftPhazeEvent;
public static event planePhase shiftPhazeEndEvent;
public delegate void walkingLeft();
public static event walkingLeft changeDiractionEvent;
public delegate void playerDied();
public static event playerDied playerDiedEvent;
public static event playerDied levelEndedEvent;
public static event playerDied levelLoadedEvent;
public static event playerDied levelResetartEvent;
Теперь мой вопрос: в чем разница между написанным и
//Events
public delegate void SomeEvent();
public static event SomeEvent shiftPhazeEvent;
public static event SomeEvent shiftPhazeEndEvent;
public static event SomeEvent changeDiractionEvent;
public static event SomeEvent playerDiedEvent;
public static event SomeEvent levelEndedEvent;
public static event SomeEvent levelLoadedEvent;
public static event SomeEvent levelResetartEvent;
Есть ли причина разделять события на несколько делегатов, если вы все равно подписываетесь только на имя события?
Единственный сценарий, в котором я вижу разницу, заключается в том, если вы хотите на каком-то этапе удалить группу изфункций и не хочу перебирать весь делегат, так что вы можете просто обнулить один из них.
есть ли смысл в этом?или это главная причина?