TGViewer
IT Makes Me Hate IT Makes Me Hate @iosmakesmehate · 4.17K subscribers
Post #4136 1.56K
UniqueBox, Ref, and MutableRef in Swift 6.4

В Swift 6.4 подвезли три типа, которые звучат как кишки компилятора, но на деле закрывают вполне бытовую боль.
🟣UniqueBox - коробка с одним хозяином. Иногда значение нужно положить на кучу (оно большое, или нужен стабильный адрес), но при этом ты точно знаешь, что хозяин должен быть один. Раньше для этого брали класс и получали в нагрузку счетчик ссылок и возможность нечаянно расшарить. UniqueBox дает хранилище на куче без этого балласта.

🟣Ref - самый понятный когда копировать можно (читателей много), писать нельзя, источник
заморожен на время жизни ссылки.

🟣MutableRef - тут наоборот. Запись можно, копировать нельзя.

Раньше если бы мы делали class Box то это было бы тяжело по памяти. Так еще бы была бы нагрузка на ARC. Сейчас ни один из трех не делает retain/release.

В фичекодах это почти незаметно. Полезно когда вы делаете свои коллекции для BDUI или сложного лайаута.

В следующем посте попробую разобрать более практический пример с ссылкой на гит и цифрами
More from @iosmakesmehate
  1. Oct 11, 2026На фоне последних событий решил изучить литературу по антикризисам и хаос инженерингу в IT…
  2. Oct 9, 2026https://yandex.ru/company/news/09-10-2026-01 В ночь с 7 на 8 октября дата-центр Яндекса в…
  3. Oct 9, 2026Эпоха огромной перестройки Последнее время все чаще задумываюсь, насколько непростой перио…
  4. Oct 8, 2026Ну тупые разрабы ща дизайнер сам все навайбкодит
  5. Oct 8, 2026но программисты будут точно в этих 5% жб рип
  6. Oct 8, 2026Глава Microsoft отменил ИИ-апокалипсис: «Через 10 лет под угрозой всего 5% рабочих мест» Н…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →