Можешь объяснить ключевые различия между `@StateObject` и `@ObservedObject` в Swift и когда ты бы использовал каждый из них? — ДейлиПреп