IDE extension that lets you fix coding issues before they exist!
Setup is effortless and analysis is automatic for most languages
Fast, accurate analysis; enterprise scalability
A listener can be attached to an object only after it has been constructed. So dispatching an event in a constructor is useless and error
public class MyClass
public function MyClass()
dispatchEvent( new Event( "uselessEvent" ) );