q210
зачем применяется, почему многие считают антипаттерном
Paks
ну обьяснить да, но часто бывает листок дают - напиши
q210
этого достаточно
q210
мне, по крайней мере
Paks
либо вопросы типа: напиши гетер сетер для non ARC
q210
имплементацию можно и в гугле посмотреть
Paks
я уже если честно и не помню точно как пишутся они правильно, что за чем релизится и переприсваивается
q210
прикол в том, что в нормальной команде если даже ты его неправильно напишешь в первый раз, руки тебе быстро на код ревью заточат
Paks
и таких разных заковыристых вопросо на собеседованиях набивается всегда по пару штук
q210
главное чтобы ты понимал зачем ты его используешь
Paks
в результате - где-то на 20 собеседование ты заходишь идеальным кандидатом, вспоминая на предыдущих собесах все эти вопросы когда решаешь
Paks
ну вот с non ARC не особо понимаю все фины которые в сетере делаются
Paks
зачем переприсваивать переменной значение, релизить, опять переприсваивать, ретейнить то что зарелизил и т.д.
I'm That Fel!x
ну вот с non ARC не особо понимаю все фины которые в сетере делаются
так сейчас же все по arc, не? вот недавно же спрашивал, говорили, что сейчас не пишут под non arc
Paks
почему нельзя 1. занилить 2. релизнуть сразу переменную, без переприсваивания
Paks
ну они то не пишут, но это вопросы номер один которые на собесах спрашивают
Paks
всегда)
Paks
почти
Paks
разве что тебя собеседуют оч оч молодые ребята
Paks
которые уже не застали non arc
Paks
а если тебя кто-то собеседует, кто пишет хотя бы с 5 иоси, - это считай будут обяз вопросы
I'm That Fel!x
а если тебя кто-то собеседует, кто пишет хотя бы с 5 иоси, - это считай будут обяз вопросы
тут скорее я буду собеседовать, а я всего пару месяцев в теме)
Alfred
арц нужна когда есть перешейки на mm для cpp
Alfred
ой, мрц хотел сказать
Paks
а часто такое встречается?
I'm That Fel!x
😳 эт как?) команду джунов набирают?
нет, просто я пришел из другой платформы. сейчас не хватает времени и нужны люди. ну а сортировать-то как-то надо)
Paks
а)
Paks
ну тут тогда по шаблонным вопросам разве что двигаться)
Paks
и смотреть как человек ориентируется
Paks
в них) и может ли обьяснить вопрос человеку, который не очень в теме)))
Paks
для меня самые дикие вопросы на данный момент это блоки и strong/weak ссылки на них и переменные
Paks
которые внутри
Paks
когда в блоке юзается _strong, когда _weak и когда снаружи _weak, а внутри из этой _weak делают стронг?
Andrew
книжку почитайте
Andrew
Сила Objective-c
Andrew
Макконел
J
обойти покругу до своей кучи
Andrew
полностью можно почитать за дня 3 осознанно
Andrew
и то в метро после работы/на работу и после работы дома читал
I'm That Fel!x
можно наложить кучу в тамбуре и по ней ориентироваться
креативные решения всегда приветствуются)
q210
Сила Objective-c
http://www.ozon.ru/context/detail/id/24752184/ эта?
q210
не нашёл макконелла
Andrew
ой
Andrew
да)
Andrew
а откуда я эту фамилию интересно взял
J
креативные решения всегда приветствуются)
ну только аутист будет ходить по вагонам туда сюда свет включать
Andrew
а совершенный код книга его
q210
на англ это похоже оно https://www.amazon.com/Effective-Objective-C-2-0-Specific-Development/dp/0321917014/ref=la_B00CTZQVQQ_1_1?s=books&ie=UTF8&qid=1486566227&sr=1-1
q210
хм, 13й год
I'm That Fel!x
хм, 13й год
но и язык не 10 года
Paks
она крутая) реально много советов
Paks
интересных
q210
ок, спасибо, почитаю
Ilia
Всем привет
Stanislav
Чтобы retain cycle не было юзают weak
Paks
Обьясни)
Paks
Блоки есть локальные глобальные
Stanislav
Есть у тебя блок - свойство класса
Stanislav
Вот он у тебя стронг
Paks
Есть блоки от функций
Stanislav
Если ты селф кинешь в блок стронгом
Stanislav
То селф будет ссылаться на блок, а блок будет держать селф
Stanislav
В итоге все, arc обосрется
Stanislav
Спрашивай конкретнее, если что
Stanislav
Самый плохой расклад я описал
Paks
Ок) а если блок не свойство класса?
Paks
А либо создается в методе либо он вызывается из метода другого класса?
Nikita
вот тут красиво про блоки http://rypress.com/tutorials/objective-c/blocks
J
креативные решения всегда приветствуются)
вот хороший тест на собеседование http://nazva.net/logic_test1/
J
на базовую логику
Stanislav
А либо создается в методе либо он вызывается из метода другого класса?
Ну а разница. В любом случае, как сдохнет блок - retain'ется то, что он захватил. Если ты кидаешь в него weak, то они могут сдохнуть до того, как блок выполнится, и станут nil. Если стронг - то может быть ситуация, когда у тебя тот же контроллер уже не на экране, а блок прилетит
Stanislav
В любом случае тут нет retain cycle потому что друг на друга они не ссылаются
J
если чувак не набирает 28 баллов то дальше его собеседовать нет смысла
Paks
В любом случае тут нет retain cycle потому что друг на друга они не ссылаются
А блок зарелизится если в нем незарелиженные обтекты будут?
Stanislav
А блок зарелизится если в нем незарелиженные обтекты будут?
Так блоку важно чтобы его самого кто-то держал. Если у него referenceCount будет 0, то он сдохнет как бы
Stanislav
Там в том и фишка что твой блок держит твой же контроллер