I've been wondering...

Why do we have to "apply size and rotation to object data"?
I do it all the time, but I'm not quite sure about what it does.
I noticed the following, though:
- let's say I create a default cube (size = 2x2x2)
- if I size it down in OBJECT MODE, VISUALLY I'll get a 1x1x1 cube BUT when I go to EDIT MODE it will still be 2x2x2.
- when I apply size & rotation, it changes its size to 1x1x1 in edit mode (i.e the same size as its visual representation)
So I just thought: "The VISUAL size of the object is not its ACTUAL size"
But... here's my question:
What's the point in this?
In what case would it be useful NOT to apply scale and rot?
Many thanks guys!
