IP's can change without warning.
But it's not an issue at all, and it provides a convenience that can be depended on by a lot of your dependencies.
Code may use domains instead of ip addresses (which provides resiliency), package managers like apt depend on domains. And so on.
It's the most baroque protocol that is still somehow surviving from the initial Internet. There are so many weird limitations, like not being able to use CNAME for apex zones. Or the entire DNSSEC fiasco.