iOS Makes Me Hate
3.94K subscribers
1.16K photos
167 videos
15 files
1.34K links
Авторский канал про iOS разработку. Путь продуктовых самураев в MAANG.

Самое больше iOS сообщество практиков: https://boosty.to/lionbond/

Автор: @lvbond Senior iOS Yandex, ex-Avito, VK
Download Telegram
Или лучше в разработку игр? 🙂🙃🙂🙃🙃🙂
7
Последний опрос по теме: Собираешься ли уезжать?
Anonymous Poll
25%
Да, уже уехал
11%
Да, скоро уеду
25%
Нет, но думаю
22%
Нет, не собираюсь
18%
Я не из рф
🐳8
"Методы принятия решений"

Сейчас эта книга особенно важна.

Решил перечитать пару глав. Вся книга состоит из статей.

Когнитивные искажения — яд для ума. Каким бы мы разумом не обладали, но не тренируя защиту от уловок сделаем неверные решения.

#books
👍9🤔31🕊1
Когда мемы становится реальностью…
🔥8🤔21😁1
Deep Copy vs Shallow Copy

🟢 lvl: jun

1️⃣ Deep Copy — это копирование, которое делает дубликат всего. Глубокое копирование у нас работает для структур.

2️⃣ Shallow Copy — это поверхностное копирование, которое используется в ref типах. Поверхностные копии быстрее, чем глубокая копия, из-за совместного использования только ссылки. Созданная копия не создает полностью новый экземпляр в памяти, копируется только адрес

Можем ли мы сделать глубокую копию ссылочного типа?

Да. Можно использовать NSCopying или написать свой метод, копирующий все значения в новый экземпляр.

Отличия между Deep Copy and Shallow Copy
9
ARC Performance

🟡 lvl: mid

На собесах очень любят спрашивать про перфоманс всяких ссылок. Что быстрее? Weak, Strong, Unowned(safe), Unowned(unsafe).

Чаще это информация только на собесе и пригодится. Но я решил замерить че, кто, кого и куда

ℹ️ Оказалось, что weak (force unwrapping) не намного медленней обычного unowned(safe). Вопреки тому, что большую часть времени отбирает создание сайд таблицы. А вот weak safe unwrapping намного медленней

Самым быстрым оказались unowned(unsafe) и strong ссылки.

Как вы думаете почему так и расскажите, где это вам пригождалось?

- Weak намного медленнее Strong
- ARC Performace
🔥13
Пока летал к себе в Тюмень за зимними вещами, решил перечитать одну из любимых книг

Ментальное состояние шатается по 9 балльной шкале. Поэтому нужна какая-то крепкая опора. Когда-то я нашел ее для себя в учении стоиков, но время снова реабилитироваться

Наверное, не стоит никому говорить чему учат стоики, но под страхом смерти от ядерных бомб эти практики помогут сохранять ум трезвым.

Поделюсь еще книжками:

"Сказать жизни «Да!»: психолог в концлагере" Виктор Фракл. Одна из актуальных книг последних 10 лет. Не удивлено, ведь это современный стоик, о ком упоминается в книге выше.

"Цитадель" Экзюпери. Мало кто знал, но автор "Маленького принца" был военным летчиком и тонким психологом. Цитадель — моя любимая работа, которая в 2018 стала для меня книгой года и сильно на меня повлияла, сформировав внутренний кодекс

Делитесь тем, что помогает вам, кроме релокации 🤡
Please open Telegram to view this post
VIEW IN TELEGRAM
👍124😐1
Unsafe Swift: A road to Memory

🟠 lvl: mid

Swift — безопасный для памяти язык. Он ограничивает прямой доступ к памяти и гарантирует, что вы инициализировали все перед использованием. Небезопасные API-интерфейсы Swift позволяют вам обращаться к памяти напрямую через указатели. А это значит, что получаем доступ быстрее.

Но что такое эта безопасность? Чем мы рискуем? Крэшем или его отсутствие? 🤬

Safe Memory — это поведение, когда наше приложение крашнится.
Unsafe Memory — наше приложение будет работать, но получится непредсказуемый результат.

🚨 Таким образом непредсказуемое поведение страшнее краша

- unsafe pointer
- Road to Memory
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10
Почему опциональный closure является по-умолчанию escaping?

Опциональные функции не являются функциями, а являются enum'ом

Ни дня без важных фактов 🍑
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18
Благодаря менторству, на разных площадках и индивидуально, некоторые темы я сам открываю для себя с другой стороны.

Здорово, что я тоже нахожу что-то интересное для себя благодаря вашим вопросам. Например пост выше про опциональный клоужер и некоторые детали memory safety.

Сейчас нет особо времени и сил (сорри всем, кому отменил занятия или отказал). Голова взрывается от перебора вариантов, высасывая все силы. Хотя бьешь по рукам себя и ругаешь не делать так. Уверен, многие сейчас в такой же ситуации.

Нужно понемногу снова реабилитироваться после очередной информационной контузии, продолжая идти вперед, пересмотрев и приняв.

Вы в любой момент можете написать в лс, чат или комменты, то что хотите разобрать.

Какие вопросы вам задал ваш тимлид, на очередном собесе задушили, или понтовался ваш коллега. Так мы можем сформулировать и разобраться любой вопрос
16
Side table появляется в трех случаях:

1️⃣когда появляется первая weak ссылка на обьект
2️⃣strong или unowned ссылки переполняются (вылезают за 32/64-bit)
3️⃣объекту надо сохранить associated object

- Discover side tables
- Deep dive into swift reference counting
- RefCount
14👍6