Как протокол `PreferenceKey` в SwiftUI облегчает восходящую коммуникацию от дочерних представлений к родительским, и каковы его основные случаи использования? — ДейлиПреп