Fundamentals of Gestures
Gestures are utility classes that abstract the user's gestures into easy callbacks, such as drag-and-drop, scrolling and so on. In additions, they encapsulate the device difference. For example, the scrolling works smoothly on touch devices and desktops.
In general, it is suggested to use one of them or implement your own to abstract the details, rather than listening the events directly.