Я действительно не вижу смысла UUID. Я знаю, что вероятность столкновения фактически равна нулю, но фактически nil даже не приближается к невозможности.
Может ли кто-нибудь привести пример, когда у вас нет выбора, кроме как использовать UUID? Из всех видов использования, которые я видел, я вижу альтернативный дизайн без UUID. Конечно, дизайн может быть немного сложнее, но по крайней мере он не имеет ненулевой вероятности сбоя.
UUID пахнет глобальными переменными. Существует много способов сделать глобальные переменные для более простого дизайна, но его ленивый дизайн.