I don't think there is a hard Best Practice, It has to match your needs.
I am a friend of DHCP with reservations for my devices. This speeds up the onboarding if they are moved to different locations. But on some situations I set them statically. For example if I need to send traffic from the device to a RADIUS server for 802.1X.
If you found this post helpful, please give it Kudos. If my answer solves your problem, please click Accept as Solution so others can benefit from it.