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
Уехать — это как написать юнит тест. Вроде и не нужно, но безопасней
👍22😁6🤔3😢3
Качество как функция системы его обеспечения

Качество продукта зависит не столько от скиллов разработчиков, сколько от системного подхода к его обеспечению. Группа супер-крутых разработчиков, работающих без оглядки на качество, скорее всего произведет продукт хуже, чем группа средненьких мидлов, работающих в системе, построенной с целью производить качественный результат.

К характеристикам такой системы обеспечения качества относится:

🐞Культура и инфраструктура, поощряющие написание тестов и дающие на это время
💻Надежные и простые в использовании dev/test окружения
☮️Отсутствие давления на команду, заставляющего релизить недостаточно протестированный код
📝Наличие документации и выделяемое на нее время
💬Регулярный разбор факапов с исправлением их корневых причин, без попыток блеймить кого-то
👍5
Похвастаюсь своей первой ачивкой в авито

Приятно получать такие награды в такое напряженное время. Поблагодарите своих коллег. Сильно повышает моральный дух.

А я благодарю всех вас. Хэйтеров и фанов и тех, кто подписался и даже не читает
👍33❤‍🔥5🔥4🎉4
Memory Unsafety in Apple's Operating Systems

🟡 lvl: mid+

Большая часть ошибок и уязвимостей ОС эйпл связана с небезопастным использованием памяти

Языки, как C и C++ небезопасны для памяти. Использование неинициализированной памяти, двойное освобождение, переполнение буфера, использование после освобождения и т. д. Программист должен идеально выделять, записывать, читать и освобождать память или иначе легко могут возникнуть серьезные уязвимости.

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

👾 Для сравнения в iOS 12 было исправлено 261 из которых 173 были связаны с небезопасностью памяти. А в macOS Mojave исправлено 298 из которых 213.

Также автор ругает Swift за его попытку в безопасность, но при этом сильное снижение скорости, в отличие от других практик

- Основная статья
- Работа современных языков с Memory Safety
👍3
С учетом последних ситуаций считаю необходимым сделать этот канал также и средством помощи. В том виде, в котором можно.

1️⃣ Если вас или ваших друзей итшников взяли призвали — пишите. Только факты и прочеканные вещи
2️⃣ Будем делиться советами. Долг долгом, но от ошибок необученных или непорядочных людей в призывных пунктах никто не застрахован 
3️⃣ Будет много шокирующих новостей. Нужно быть готовым. Учиться не отключать мозг и не травмировать себя думскроллингом. Здесь будут методички, курсы или литература как справляться с текущим давлением и не делать необдуманные поступки 

Я твердо убежден, что позиция "моя хата скраю Еревана" сейчас проигрышная. Нужно объединиться и снизить градус паники, который пожирает всех изнутри ежедневно

Наше молчание будет спонсировать беспредел
👍27❤‍🔥6💯32
Плюс еще пост любви к авито.

Помимо совместимости ценностей с самой компанией я еще попал в крутую команду.

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

Выбрали название Lions. И его предложил не я.

Сегодня пришел прикольный мерч
👍7😐2
Или лучше в разработку игр? 🙂🙃🙂🙃🙃🙂
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