emit(eventName, ...args) {
    this._getHandlersByEventName(eventName).forEach(
      /**
       * @param {EventHandler} eventHandler
       */
      (eventHandler) => {
        try {
          eventHandler.apply(this, args)
        } catch (error) {
          console.error(error)
        }
      }
    )
  }
@param {string} eventName
@param {Array} args