A pin is the software equivalent of a physical pin that connects an I/O device to the outside world. Resources can share pins because typically, there are fewer pins than resources.
Pins are optional. Use pins if you have conflicting devices.