To answer your question, that method will work and is about the same as the following. You can find more in depth detail at WoWWiki or WoWPedia on "handling events".
Lua Code:
local core, events = CreateFrame('Frame', addonName .. 'CoreFrame'), {}
core:RegisterEvent('ADDON_LOADED')
function events:ADDON_LOADED(aName, ...)
print(aName .. " was loaded. Event handled by " .. self:GetName())
--aName .. " was loaded. Event handled by " .. core:GetName()
end
core:SetScript("OnEvent", function(self, event, ...)
events[event](self, ...);
end)