Продолжаем попускать обж-с дидов вместе с эплом, Swift уже допилили до такого состояния, что по заверениям эплорабов его юзают где-то в Foundation, а SwiftUI — единственный способ создавать виджеты.
Q & A >С чего вкатываться? Swift book - книжка валяется в интернете доки. Через 1-2 месяца смело переходи на ObjC - Интересная книга от Paul Хадсона Objective-C for Swift Developers Paul Hudson, найти которую можно ниже в телеге.
Так же после 1 недели знакомства со Свифтом желательно начинать строить приложения. Порядок: TODO List (DB) -> Weather -> ImageGallery —> Movie. Аналоги ищи на гитхабе - их тысяча, смотри, пизди код, учись.
>А можна начинать сразу со SwiftUI и ложить хуй на всё остальное легаси? Разве что если планируешь начинать искать работу через 2 года. Хотя даже тогда тебе _везде_ придётся ебаться с UIKit-ом, так что нет, хотя посматривать и стоит. Сейчас SwiftUI как и Swift в своё время — ещё только версия 2.0, а юзать свифт без болей в жепе стало возможно только к 4-й версии).
>Не люблю читать книжки я долбаеб https://www.youtube.com/playlist?list=PL9lXw_XXeiWQGrY5dl0IjFI7tOw_nfI91 - лучшее что есть в интеренете, на слайды которого ссылаются большинство ответов для даунов. Уже есть версия поновее, но это энивэй нетленочка, и даже если ты конченный долбоёб — то даже тогда сможешь выучится чему-то по этому.
Остальное видео: ttps://coursehunters.net - продажная сука, которая с конца июля начала требовать 200-300 рублей подписки. Курсы неплохие, если не жалко - можно оформить и выкачать для себя интересные (обрати внимание на Devslopes)
>Где в дальнейшем искать инфу? https://developer.apple.com/videos/wwdc2020/ — открываешь и смотришь всё, чего не знаешь. Желательно хотя бы за последние 3-4 грода. То есть почти всё.
>>1868577 (OP) ало вакансий нет джуны со стажем от полугода просятся в чатах работать за еду стоимость яблочных свистоперделок с нынешним курсом рубля просто ебейшая зачем здесь этот тред?
Пиздец, что за тупая шапка, нихуя не видно треда. Пиздец что за тупая индустрия выстроилась вокруг IT. Развелось куча агенств аля турогенств, которые понабрали тупорылых девиц и спамят вакансиями в директе. Давеча написал чувак в мой круг, типа ищем спеца в сбер делаем то-то то-то, я думаю заебись. Ответил. Стучится хрюшка в тг, лицо на аве смазливое, я думаю неуж то в сбер то же по мордашке набирают, начинаем общаться, отписываюсь на полной откровенности, по стеку, по опыту как-будто общаюсь с самим сбером, на третем тупом вопросе начинаю подозревать что что-то не то, потом выясняется что это непонятное агенство которое собирается послать моё резюме в сбер. Спрашивается, я чё с сам сайта не могу послать им резюме. Пиздец короче.
>>1873219 схуяли, я в 7 классе уже сайты на wml 1.2 с сименса ц65 делал, а в 18 лет продал порно-сайт за 2к баксов, у меня есть бекграунд, но вот хочу именно свифт и все тут блядь, ни пых, них жс, ни си, ни питун - именно свифт, хз почему, даже до плейграунда в икскоде дошел, потом хуй подзабил чего то я((
я сам скачивал все эти лекции бесплатно и лежат они на meganz у меня
>>1873206 Нет камней, как фундамент - подходит. Запомни что на дваче слушать токсичных экспертов не надо. Если хочешь реально освоить ios и мобайл дев, то прочитай в начале эту книжу. Далее сразу думай о простом проекте где тебе надо будет тянуть json из интернета и отображать (80% иоса задач именно это) И тут ты начинаешь тупо смотреть туториалы на ютубе и прочее
Я сам как в иос вкатился? Купил бу мак, когда был qa и думал ну тут точно стану разрабом, ибо столько денег потратил, плюс хотел быть не такие как все смуззи разрабы. В итоге начал гуглить стажировки, увидел вакансию bookmate в 2015, написал мол так и так, опыта нет но очень хочу к вам попасть. Мне в начале сказали что мол опыта нет знаний нет - пролетаю, но упросил и мне дали тестовое задание, в итоге с полного нуля в иосе и почти без знаний программирований я запилил тестовое при помощи двача и гугла. Ясен хуй что задание прокритиковали, но это был охуенный экспириенс, когда знаний нет н надо сделать задачу
>>1873699 зачем ты это пишешь? в 2015 была адовая волна набора на свифт я тупанул и пошёл в долбаный нефтегаз пилить их самодельное говно щас эта ниша перекрыта
чел и так возрастной (что минус для иос однозначно), пусть лучше потратит время на стек, где больше вакансий
>>1873723 какой набор на свифт, алло, на свифте в продакшене тока во второй половине 16ого года начали сейчас я анализировал рынок и вкатывал друга, намного легче чем тогда и уже не нужен обж с
>>1873744 Обж-с до сих пор минимум нужен в 30% вакансий (а в половине из них весь проект на нём, но тебе на собеседовании и вакансии этого не скажут, потому что ты можешь съебнуть а все челы с опытом на нём стоят крайне дохуя) и необходим примерно во всех больших компаниях.
Но вы обязательно начинайте со свифтюая, а то диды не смогут ещё через пару лет получать уже 500 к вместо 300.
>>1873723 Адовой волны на свифт не было потому что он был сыр как промежность твоей мамаши, лол.
Было меньше как вкатунов так и вакансий, так что рынок вкатышей не сильно-то и поменялся. Разве что на обж-с уже берут без знания этого языка и доучивают потому что даже нормального мидла с опытом в нём меньше чем на 170 в дс найти обычно не могут, лол. Ежели говорить про сторону резработчиков с опытом — то количество предложений сейчас как раз таки в разы больше.
>>1873917 >alamofire Если не целится в таргет так на iOS 10 — уже не нужно, URLSession умеет вообще всё и без бойлерплейта (разве что для SSL pinning придётся несколько десятков строк написать). >realm В проде очень мало кто использует, но жизнь облегчает серьёзно. Если ньюфаг — разберись сначала с скордатой, требовать везде будут её, с реалмом разобраться — 2 часа. >swiftyjson Не нужно, если не пилишь какой нибудь легаси проект, где даже о четвёртом свифте не слышали. Сейчас стандарт — это Codable, причём не только для джосна, а для любого сереализуемого формата.
>>1873917 >Что ещё сильно облегчает жизнь? RxSwift/Combine, Texture, Realm, знание разных архитектурных подходов для возможности выбора конкретной под стек и само приложение (или фичу если оно гигантское).
Но вообще судя по постановке вопроса — ты только вкатываешься, поэтому лучше не распыляйся и учи саму систему и язык.
>>1873912 >Ежели говорить про сторону резработчиков с опытом бля, мы про вкат > на обж-с уже берут без знания этого языка и доучивают это чо за сказки? один говорит, что обжц нужен, другой - что нет. вы там определитесь, что ли
>>1874048 >бля, мы про вкат Вкат или нет, рынок один, и он активно растёт. Раньше не было лучше, не ной.
>это чо за сказки? Это не сказки, но для такого хотя бы годик опыта на свифте иметь.
>один говорит, что обжц нужен, другой - что нет. Ну я тащемта тоже сказал что скорее не нужен, если хоть какой-то опыт получишь — возьмут и сами научат, лол.
Выше средненького мидла ты без него всё равно не поднимешься, но для вката он не особо нужен. Просто прочитай шапку, сука, там же всё расписано.
>>1874117 Нет, Texture — это дополнение (а в некоторых местах и замена) UIKit-а. Можно конечно все места, где SwiftUI будет лагатьчитай: любая нетривиальная коллекция/список или нужно будет сделать что-то нереализуемое на нём, писать через UIViewControllerRepresentable на UIKit-е, а внутри него юзать Texture (кекус) — но это какой-то борщ из технологий будет, в котором надо будет знать все на хорошем уровне, лол.
Если хочешь сделать что-то production-ready — бери UIKit/Texture (у второго выше порог входа и по нему сложно найти инфу, но сделать качественно намного проще), если похуй — бери конечно SwiftUI.
Первая попытка закончилась тем, что в первой версии не было аналога UICollectionView, всё рисовалось сразу и жесты на вложенных ScrollView а) рандомно триггерили тап при скролле б) не лочили направление, навигация то срабатывала, то нет, то срабатывала один раз и больше не срабатывала, при попытке анимировать что нибудь 1 из 5 раз всё крашилось нахуй, икскод низуя не понимал код и компилятор регулярно падал то с сегфолтами то ошибками стиля "нимагу вывести типы, перепеши пажалуста(9".
Второй заход уже на вторую версию в iOS 14 закончился вообще за полтора часа тем, что комбинация NavigationView { ScrollView { LazyHStack { NavigatioLink } } (или как-то так) крашила нахуй приложение при скролле. Попробовал убрать навигацию, думал написать свою (продукшен реди, чо), а потом посмотрел на память при скролле и понял что эти Lazy* хуйни ещё и текут, лол.
Просто загугли "SwiftUI problems", там будет куча перлов покруче моих. Мой любимый — где-то видел в твитторе тред, где чел пытался написать хэловорд с 2 вьюхами под мак, и при запуске этого чуда выделялось 30гб оперативки.
>>1875521 Вкатываться можешь чисто по фану, денег мимокроку там не заработать. 100 баксов подписька + потенциально ебля с реджектами первые несколько месяцев т.е. на релиз первой прилаги закладывай месяц-два именно на публикацию готовой версии
> да и то, раз написал свое и копируй в проекты. Ну покеж-ка свой аналог кф, чтобы там и кеширование (хотя бы на том же уровне что в нём, пусть тормозной но с полностью настраиваемой политикой хранения), и прогрессив жпег, и анимации играл, и имел миллион готовых фильтров для данусэмплинга/обрезки краёв/блюра/итд.
Я конечно понимаю, что у тебя очень дохуя опыта и ты не джуннет, но любая кастомная технология = куча ресурсов только для поддержания этого говна, не говоря уже об расширении функционала. И любой нормальный тимлид бы тебе за >раз написал свое и копируй в проекты. дал бы пизды.
Бандиты, вопрос по SwiftUI Сам я нубило нубское, нихуя не знаю, нихуя не умею. Есть сайт, он же приложуха. В ней есть авторизация через csrf token в куках и далее все норм. Мне нужно его упаковать в ios app. В апстор его вешать не нужно, будет висеть вечно в TestFlight, а то и вообще на аккаунтах клиентов, которые я добавлю себе в Apple Development Team. Потому пункт касаемо того, что все завернутые в WKWebView сайты косящие под приложухи не пиздец актуален.
И так, код: ViewController.swift:
import UIKit import WebKit
class ViewController: UIViewController { @IBOutlet var webview: WKWebView! override func viewDidLoad() { super.viewDidLoad() webview.load(URLRequest(url: URL(string: "https://example.com/")!)) } }
Запускается, почти работает, все дела. Но на моменте ввода логина-пароля получаю ответ от django мол ошибка 403 csrf token missing or incorrect Если выключить приложение и запустить заново - уже открывается вошедшим на сайт.
Короче мне надо или 1) указывать WKWebView принимать соответствующие заголовки/куки для аутентификации 2) если WKWebView.загруженный контент.респонс == 403 - перегрузи страницу и в рот его ебать
>>1876492 >Ну покеж-ка свой аналог кф Сейчас бы палить годноту перед быдлом с двача. Тем более с копирайтом фирмы. >дал бы пизды. Ну да, конечно. Тащи всякое дерьмо с гита от vasya228.
Бандит, главная проблема в данном случае что я не очень понимаю куда эти ответы копипастнуть хоть. До class ViewController: UIViewController {} или после него, или в него, но в него до функции или после, как потом инициализировать это в переменной А так эти ответы я находил уже
Где почитать о том как сделать фреймворк свой, в плане как его запаковать, с uiview компонентами, где под капотом будет логика? Чтобы потом в любой проект внедрить и народ мог эти компоненты вьюшки к себе класть (типа дизайн системы, плюс утилиты некоторые)
Что делать? Хочу вкатываться уметь писать проекты С НУЛЯ по заказу, а из опыта только 4 года продакшена в разных фирмах, где всегда работал из разряда нашел на стеке - спиздил, отредачил, засунул или на основе уже готовых блоков проекта все пилить.
Именно это ограничивает меня с захода на петухворк и удаленку, как нагнать эти проблемы, я уже думал брать какое-то и по нему пилить в свободное время на основе проекта с прошлой работы (НУ С НУЛЯ ЖЕ НЕ НАПИШЕШЬ БЕЗ ЗНАНИЙ И ГУГЛА?)
>>1877378 > и удаленку Я бы тебя спросил, а как ты вообще в 2020 работал не перейдя на удалёнку? Она после локдауна вообще везде.
> Хочу вкатываться уметь писать проекты С НУЛЯ Ну иди и напиши пару приложений которых тебе не хватает/не нравятся текущие реализации (у какого нибудь твиттера пиздец ублюдский клиент — если сделаешь хотя бы чуть лучше у тебя даже куча юзеров будет, лол).
Ну ещё можешь поискать свежий стартап как следующее место работы — там у тебя нихуя готового не будет.
>>1877425 я не умею преподавать и это все преподносить
>>1877458 так только сейчас удаленка, я про нормальную иностранную удаленку имел ввиду. Но вообще спасибо за идею, главное надеюсь не буду заебываться после работы
>>1877976 Получится что я скомпилю эту хуйню, забуду как страшный сон, и пойду дальше по списку дел. Могу в ответ в благодарность чего-нибудь на выходных на питоне под твои задачи вместо набросать.
Ну чё, парни, никто не поможет мне с этим >>1877934 ?
Ну реально я не верю что оно прям такое объемное и сложное, что мне фрилансера нанимать под это дело надо. Максимум хуевина уровня джанго темплейттега для вывода даты по-человечески "2 недели назад" вместо 28.11.2020 в 19:12:34
Вечный студент 34лвл в треде. Учился в инсте на математика-системного программиста, ушел в академ на 3м курсе, не вернулся. Пошёл на курсы JS в Израиле, не потянул обучение на иврите, бросил. С третьего раза пытаюсь вкатиться, выбрал Свифт, пока всё понятно (если бы в моём универе преподавали Swift а не ТурбоПаскаль, учиться было бы гораздо интереснее, лул). Чё хотел спросить - когда начинать искать работу? Ну, то есть, какой триггер должен сработать, чтоб я понял, что вот, уже пора? И не засмеют ли меня на собеседованиях, если я 15 лет сисадмином работал, а тут вдруг в мобилки решил перекатиться? Понимаю, что глупо звучит, но всё же только не стебите сильно
>>1878487 Когда ты понимаешь что если подойдешь сейчас к дядя и он скажет а реализуйка мне "\(zalupaName)" за неделю и ты сможешь это сделать. Авторизацю вк и качалку пикч или что-то подобное. Интеграция с api + верстка вьюх = основная работа типичного айосника за 500
>>1877458 >Ну иди и напиши пару приложений которых тебе не хватает/не нравятся текущие реализации (у какого нибудь твиттера пиздец ублюдский клиент — если сделаешь хотя бы чуть лучше у тебя даже куча юзеров будет, лол).
>>1879319 В чате из шапки (миямото-что-то-там) есть чат с книгами, там вроде как была. Но по содержанию лично для меня шляпа, я уже не помню о чём там (читал год назад), но точно помню что она пиздец меня разочаровала.
>>1880011 Усреднённые зп различаются на хайповых технологиях различаются на 5-10к (посмотри ту же статистику от хабра). Сколько будут платить конкретно тебе — зависит от тебя, единственное что нужно от стека чтобы нормально получать — большой спрос на него, чтобы можно было без задней мысли требовать повышения и съёбывать в случае отказа. Тащемта, во вротенде это делать легче всего, но и рынок джунов там раздолбанный. Как и очко среднего фронта кста.
>>1880484 Во фронте намного больше вкатунов, но больше и вакансих для них (сейчас на хх по запросу "junior ios" 2 вакансии + 1 вакансия стажёра + 25 вакансий с нерелевантной хуйнёй, а по запросу "junior javascript" — 133 результата, и как минимум на первой 90% релевантных вакансий а не рандомной хуйни), да и требования к вкатунам почти нулевые.
Короче, вкатываться всюду геморойно. Но на питонах/джсах тебя хотя бы на собесы звать будут, а тут будешь дрочить 1 на одном собесе раз в 2 месяца, кекус. Я примерно так вкатывался почти пол года, кек.
>>1880861 Пол года — это только про поиск работы. И знания у меня тогда были явно выше стандартного вкатуна а как показала практика проведения собеседований — чуть ли не на уровне половины мидлов, которые даже одной книжки не осилили, лол.
Анон, поясни за задачки на литкоде, кодварс: скажем, чтобы энтропия от получаемой информации о каких-то конструкциях языка сводилась к нулю, нужно решать задачки - иначе выйдет как с обучением истории России (начали с крещения, кончили второй мировой: никаких пересечений, и как начали читать про пыню, забыли что там было у Владимира).
Насколько адекватна моя мысль касательно того, что нужно решать задачки по изученным темам, и со временем переходить на написание собственного софта? Пусть даже с пук-среньком на каждом исключении, но без знания как бить хук с левой невозможно его исполнить :)
>>1881448 Нинасколько, на твоём уровне судя по сообщению хотя бы основы надо выучить. Когда уже будешь хорошо знать пару языков, писать аппы и не испытывать проблем с самой базой — тогда и начинай дрочить алгоритмы.
На практике они вообще крайне редко применимы (если не собираешься писать базы/игры/нейронки, и даже там это хорошо если 15-20% от всей инжинегровой работы которую надо сделать), и относятся они именно к общему развитию (за которое ты не любишь совковую систему образования, лол).
Короче, сначала научись делать что-то практическое, а потом переходи к поискам путей и разворотам деревьев, иначе проебёшь время на знания, неприменимые вне олимпиадок.
>>1881448 >Анон, поясни за задачки на литкоде, кодварс Хуита, без контекста бесполезная. Если ты не сталкиваешься с задачами где это нужно, то забудешь ту хуйню что писал там через месяц.
Аноны, а кто уже вкатился? Расскажите какие проекты вы пилите, какие технологии используете, какие архитектуры. Пишете ли юнит-тесты. Если да, то что тестируете?
Пытаюсь вкатиться в тестирование и охуеваю от количества лишней работы. Только создал простейший класс, а для него уже нужно написать несколько тестов. Проверить его на нил, проверить как он инициализируется и т.д. Скорость разработки замедляется в разы. На каждый чих пишем по пять тестов.
Нет, ну я понимаю ещё тестировать критически важные участки когда, где проходят какие-то вычисления, какая-то логика. Но зачем тестировать tableView? И это ладно ещё если на MVC, а если на VIPER, это же пиздец. На продакшене всегда так делают?
Почему для pod фреймворка не нужно делать embed? Каким образом зависимые либы попадут в проект? Они при линковке как-то скопируются в общий бинарник или как это происходит. Я думал что любой .framework загружается динамически т.е. на момент старта приложения какой-то сервис системы читает его с диска и "подключает", но если мы в настройках указали link without embeding то каким образом все это работает, а не крашится(dyld: Library not loaded … Reason: Image not found)?
>>1882544 >На продакшене всегда так делают? Только всякие сбербанки и ко, которые могут закидывать деньгами и у которых есть лишняя сотня программистов, чтобы не проседать с таким режимом работы, лол. На практике, адекватно писать тесты в трёх случаях: 1) Когда есть какой-то сверхважный кусок, без которого бизнес развалится если он уйдёт в аппстор в нерабочем состоянии (обычно всё, что связано с платежами/инаппами/итд); 2) Когда у тебя какая-то алгоритмическая задача — по хорошему вообще писать тесты вперёд; 3) Когда ты рефакторишь что-то нетривиальное и не хочешь ломать существующий контракт — тоже лучше сначала покрыть существующий код тестами и только потом переделывать.
>какие технологии используете, какие архитектуры Любые, зависит от предпочтений тимлида (или любого чела, который начинал проект/имеет там решающий голос). Вот прям буквально — ты можешь встретить как проекты на обж-с, с какой нибудь депрекейтед хуйнёй вроде левелдб вместо базы и тд, так и сверххипстерский флакс/редакс на последнем свифте с реалмом и комбайном.
>И это ладно ещё если на MVC, а если на VIPER, это же пиздец. В випере/рёбрах и подобных слоёных пирогах как раз таки всё куда проще тестировать (хотя само количество кода и ебическое на выходе).
Лично мои предпочтения по архитектурам такие: Если хочешь максимальную тестируемость, возможность по щелчку пальцев сохранять состояние и восстанавливать его при перезапуске, а так же CQRS из коробки для offline-first приложений — бери любую однонаправленную архитектуру (флакс/редакс/елм/композабл архитектур/итд). Минус у таких архитектур — не подходят для проектов, в которых требуется риалтайм обновления, очень большой объём обрабатываемых данных итд (т.к. тупо теряют все свои плюсы когда пытаешься все эти чистые редюсеры и иммутабельный стейт оптимизировать).
Хочешь архитектуру, которая будет минимизировать количество конфликтов при одновременной работе над приложением большим количеством челиков, изичную модуляризацию (тоже релевантно только к очень большим проектам) и хорошую тестируемость — бери RIBs/випер. Минусы — у тебя размер приложения летит куда-то нахуй вверх. Вместо пары файликов на простенький экранчик у тебя их будет 5-7+ и количество бесполезного кода (в основном всевозможная тупая хуйня в ассембли/роутерах/презентерах, в 80% случаев просто передающая вызов дальше по цепочке, кек). Даже на том же обж-с проекты юзающие вайпере, которые могли бы весить по 50-70 мб весят по 130-200 мб, лол. Время входа в проект новых челиков растёт точно так же, а реюзаемость, которую выдают за плюс на практике превращает код в говно, которое невозможно дебажить да и писать тесты по факту легко только для тупых слоёв без логики, те же интеракторы (в которых вся логика) в модулях которые реюзаются по 5+ раз в разных местах ты просто ебанёшься тестировать.
Хочешь просто замену MVC, которая будет лучше тестироваться, и которая позволит написать заметно меньше кода (если ты не против реактивщины) — MVVM. Минусы — без реактивщины у тебя буквально лучше тестируемый MVVM, если есть какая-то сложная логика навигации и просто проект вырастет — рано или поздно придётся добавлять координаторы и выносить в них логику/всё измазать фабриками вьюмоделей — и на выходе у тебя будет RIBs, который вы будете называть MVVM-C, кек. Хотя, в отличие от рёбер, тут бройлерплейт будет написан по делу, так что хз насколько это минус.
Ебать я высрал текста с 3-х бакалов вина, можно так и книгу написать, кек.
>>1882544 >Но зачем тестировать tableView? Кроме переизбытка денег, это возможность для топ менеджмента насрать на уши инвесторам и манагерам ещё выше уровнем с помощью циферок и красивых графиков ой сматрити у нас в этом месяце +228 коммитов и покрытие кода 99.1%(можешь загуглить какие нибудь цитаты Грефа, где он сравнивает сбер с гуглом по кол-ву коммитов, лол).
>>1882764 >Почему для pod фреймворка не нужно делать embed? Дык, сейчас посмотрел — он же добавляет свой скрипт который эмбедит все фреймворки (по крайней мере с use_frameworks).
>Они при линковке как-то скопируются в общий бинарник или как это происходит Засунутся в архив с приложением и будут грузится по необходимости, как любая динамическая либа.
Там же есть static_framework или какая-то подобная хуйня для таких ситуаций.
>>1882995 >А что на счёт CleanSwift? Я вот посмотрел схемы и исходники по горизонтали — из отличий от випера — отсутствие output связей и всё в однонаправленном стиле, с одной стороны — чуть меньше бойлерплейта и вроде тестировать и дебажить легче, с другой — если у тебя всё вокруг состоит из мутабельного стейта и производит эффекты — большая часть преимущества однонаправленности теряется, хотя всякую каскадную хуйню вроде бейджиков уведомлений держать в консистентном состоянии и будет проще. Плюс зачем-то втащили сюда презентер — как и в вайпере, будет самым бесполезным слоем, хотя уже догадались напрямую общаться с интерактором (что в випере всегда выливалось в кучу тупого бойлерплейта в этом самом презентере), но остался вопрос — а нахуя вообще нужен презентер? В модулях, где нужно всякие данные мапить из кордатовских/реалмовских моделей в plain objects — воткните фабрику которая будет это заниматься между ними и не засирайте остальной код, в большинстве случаев оно нахуй не нужно.
А те же ассембли/билдеры/фабрики/вайрфреймы как ты их не назови которых тоже нет — тоже появятся с таким количеством слоёв, потому что реюзать модули, которым требуется столько объектов — ебанёшься.
Короче, по моему вкусу выкинуть бы оттуда нахуй презентер (и добавлять его только по необходимости) — и будет заебись. Но называться он будет MVVM-C, лол, круг замкнулся.
>и без реактившины Ну, я как челик который поработал в паре проектах написанных на випере (одна из целей которого — сделать всё без реактивщины) могу сказать что это выливается в: а) кучу бойлерплейта из протоколов по которым все модули общаются, их конфигурации итд; б) неподдерживаемый сетевой слой — в котором под эгидой нежелания "тащить зависимости" пришлось ручками реализовывать кучу функционала вроде своих обсерваблов (или футуров или называй как хочешь)/чейнинга/дебаунса/ретраев/мерджа нескольких результатов/отменяемости/итд, и челики которые это написали, поебавшись с отладкой таких кастомных решений через несколько месяцев решали съебать нахуй на другой проект (зато на собесах точно смогут красиво пиздеть, лол), а оставшиесь сходили с ума пытаясь отладить это и тоже съёбывали нахуй.
Короче, я могу только посоветовать всё таки изучить реактивщину (будь то RxSwift или Combine) хотя бы для того, чтобы знать как и что можно реализовать и где спиздить проверенный код на случай чего, лол.
>Но в вакансиях мало где указан как требование. Ну, если говорить про вакансии — достаточно знать проблемы MVC, разобраться в какой нибудь слоёной хуите вроде випера и хотя бы слышать что-то про UDF чтобы мочь в диалог — это вобщем-то покроет 90% архитектурных вопросов на собеседованиях. Так или иначе, все готовят даже одинаковые архитектуры по своему, поэтому плотно ебать тебя такими вопросами никто не станет.
>>1883062 При вкате тоже надо шарить в этих всех архитектурах? Если я допустим делаю сейчас пет проекты используя только MVC, то я нахуй иду автоматом на собеседовании?
>>1883092 Нет, просто потыкай что-то кроме MVC (не обязательно випер и ко, можешь какие нибудь MVP/MVVM) и для джуна уже хватит. А тот совет скорее к мидлу+ и выше релевантен.
>>1883113 Ну, в большой компании или просто каких нибудь ебенях в несложном проекте можно так и 10 лет просидеть. Потом вылезают синьйоры-помидоры 5+ лет опыта, которые отвечают на 2 из 10 мидловых вопросов, лол.
>>1883118 О это я, у меня как раз проблема, собесы прохожу без проблем а потом сижу понимаю что практических знаний то нихуя толком нет и потом из-за этого увольняют, хотя я не понимаю из-за чего, тасочки делаю нормально но потом видят и говорят НУ ТИПА МЫ ОЖИДАЛИ ДРУГОГО УРОВНЯ ПОСЛЕ СОБЕСЕДОВАНИЯ и тд
а мне грустно от всего этого, я правда хочу быть хорошим разработчиком и стараться
Я тут подумал как прокачать скиллы, оцените идею, только честно.
Учитывая что я раб часок, то я думаю открывать behance и брать оттуда сперва простые дизайны и прочее, а потом реализовывать и обкатывать разные технологии. Только вот это зашкваз или нет что буду брать примеры с предыдущих проектов? Ибо сам наверное не смогу, тока по ютубу и проектам
>>1883459 >Только вот это зашкваз или нет что буду брать примеры с предыдущих проектов? А нахуя тебе вообще этим заниматься, если цели научиться что-то делать?
>>1884172 >Нужно быть долбоебом, чтоб говорить что diversity это что-то плохое Двачаю, почему до сих пор во всех языках 2 х 2 это четыре? Явное наследие дремучего патриархального общества!
>>1884172 >>1884332 >>1884362 нас всех ждёт новый тип - diversity programmer ему даже код писать не нужно, достаточно постоянно и активно обозначать свою позицию по вопросам важности дайвёрсити, инклюзивности, борьбы с расизмом и защиты прав лгбткухз
Там довольно много букв и нужно понимать в железе хотя бы на уровне того, какой у тебя проц, мать итп, где искать спецификации и вот это всё. Но даже если с этим первый раз сталкиваешься, то за выходные там можно всё раскурить. Можно просто с реддита подрезать готовую конфигурацию, там прямо готовые конфиги выкладывают с драйверами итп, просто качаешь и покупаешь в магазине такое же и все дела.
>>1884412 Нужна норм материнка и инцелы последних поколений. Видюхи - радеоны, но можно сидеть на встройке, как делаю я, у меня nvidia. Гугли гайды open core там есть по железу. Так же если в материнке есть wifi/bluetooth то 95% что не заведется. Для инета покупаешь usb адаптер tplink 823N V3 или любой другой, совместимый с последними макосями(как минимум каталина), и в хуй не дуешь, либо через эфирокабель сидишь.
>>1887401 А как на макосе переключить регион appstore? В гугле пишут поменять в настройках apple id на руссиан, но я жду пока мне апрувнут дев программу и что-то очково переключать сам аккаунт.
Анон, помоги разобраться с ебучим VK_ios_sdk. У этих уебанов мануал от 14-го года на обж-си. А мне как бы на свифте надо прикрутить авторизацию в приложении. Суть такая: есть сайт, там есть ЛК с авторизацией через ВК. Надо этот же функционал реализовать в приложении. Разбираюсь с VK_ios_sdk. Добавил через CocoaPods, 74 варна появилось в пустом приложении, ну да и хуй с ним. Добавил в info.plist AppID вида vkXXXXXX, добавил APP Bandle, добавил ещё три ключа, которые описаны в документации. Дальше сам код: let permission = ["email", "photos", "wall", "offline"] var vkInst = VKSdk.initialize(withAppId: "XXXXXX")
@IBAction func buttonTap(_ sender: UIButton) { vkInst?.register(self) vkInst?.uiDelegate = self VKSdk.wakeUpSession(permission) { (state, error) in if state == .authorized { print("AUTH SUCCESS") } else { VKSdk.authorize(self.permission) } } } На протоколы VKSdkDelegate, VKSdkUIDelegate подписался. Необходимые методы: func vkSdkShouldPresent(_ controller: UIViewController!) { print("vkSdkShouldPresent") present(controller, animated: true, completion: nil) }
Запускаю, шлепаю по кнопке, открывается ВК-приложение, просит разрешение, жму Разрешить. Дальше открывается webview с ВК, просит логин-пароль от ВК. В это время время в консоль льется КУЧА варнов вида: 2020-12-22 21:45:00.895120+0300 VKTestApp[2004:367422] [Process] kill() returned unexpected error 1 Ввожу логин-пароль, жму еще раз Разрешить, после этого возвращаюсь в приложение, поток варнов прекращается, среди них можно найти токен. Вопрос: Почему два раза приходится разрешать доступ (в приложении и через www), второй раз еще и данные вводить надо? Как починить, чтоб с первой попытки через приложение всё работало? Гуглить бесполезно, вся инфа на уровне 11-15 годов, как будто никто этой парашей не пользуется блин.
>>1887520 Пиши свой клиент, с только тем, что тебе нужно, как советуют выше, или разберись нормально. Если там доки 15 года это не значит что там что-то сильно поменялось. Или в сорсах посмотри. Делал авторизацию на прошлогоднем vk челенже, никаких проблем не возникло.
Чтобы поды не ссали ворнингами есть inhibit_all_warnings! или inhibit_warnings
>>1887545 >>1887621 Спасибо. Не ткнёте лицом в мануал какой-нибудь на эту тему? Мне так-то от самого ВК почти ничего не надо по идее, имя/фамилия, да аватарка. Но вот в ЛК сайта есть куча инфы и я не очень понимаю, как связать всё это вместе :(
Blyaaaaaaaat. Каникулы appstore review начинаются 23 числа по местному времени или американскому? Сукаааа. Нахуя я так потел, отправил на ревью в 00:15 и теперь сосу хуйцы до 28 . Пидарасы
>>1887520 >Анон, помоги разобраться с ебучим VK_ios_sdk Лучше не трогай это говно вообще.
>У этих уебанов мануал от 14-го года на обж-си Когда я последний раз тыкал эту хуйню (где-то год назад) — их сдк не умел даже текущие модели картинок парсить, лол.
>>1887680 вот держи делал как то тестовое задание связанное с информацией по университетам, запускается как пакедж, может тебе удасться разобраться, настроить засунуть в твой проект https://cloud.mail.ru/public/ia6f/fPLNr1gVj
>>1887899 Тогда почему они не ривьювят суки, тупые индусы, доебывающиеся до каждой мелочи. Хотел пользователям устроить подарок на нг, подкинуть валюты игровой. Так и что сказало эпл на это? - сосать. Наши пользователи должны сосать. Нельзя дарить юзерам промокоды на ништяки, которые можно купить через in-app, вдруг ты ими торгуешь мимо нашей эпл кассы. Выпиливай или rejected. Ну и ладно, пускай платят, лохи
>>1888189 >>1888267 Пчел, такую хуйню надо закладывать заранее и включать/выключать на бэке. Ты сейчас сам себе в штаны насрал, там уже месяц висит плашка что они уходят на каникулы 23-го, и такая хуйня каждый год.
Насколько вообще разумно выносить всю логику работы с Realm (CRUD + маппинг во вьюмодели) на условную utility очередь, если у меня примерно 100-200 элементов? Постоянные переключения между очередями же потенциально могут негативно влиять на производительность. Да и в доке реалма как-то слабо раскрыта эта тема.
>>1888545 >Насколько вообще разумно выносить всю логику работы с Realm У тебя вообще _вся_ бизнес логика должна бегать отдельна от UI, кроме ситуаций когда надо буквально сделать 2+2.
>маппинг во вьюмодели Тут уже вопрос, нахуя тебе реалм, если ты о все его оптимизации с ленивостью вытер жепу? Тупо из-за этого пункта можно было бы сказать обязательно даже если бы элементов было 20, лол.
>на условную utility очередь Define utility. Это QoS или просто ты так называешь не мэин тред?
>Постоянные переключения между очередями же потенциально могут негативно влиять на производительность.
>>1888545 >Постоянные переключения между очередями Тут ты очевидно путаешь очереди с тредами и переключением контекста в них — в очередях ничего такого нет (если это не конкурентная очередь), грубо говоря ты просто закидываешь ссылку на функцию в список, из которого она дёрнется при освобождении.
>же потенциально могут негативно влиять на производительность. А сколько ты их планируешь делать? Сотнями? По факту у тебя все операции — это либо что-то добавить, либо сделать выборку и замапить их по твоим плэин моделям, ты их делаешь 1 раз и получаешь все свои данные.
>>1888622 >Тут уже вопрос, нахуя тебе реалм, если ты о все его оптимизации с ленивостью вытер жепу? Тупо из-за этого пункта можно было бы сказать обязательно даже если бы элементов было 20, лол. И как ты себе представляешь отказ от презентейшен слоя? Условная ячейка таблицы должна с реалм моделью работать что ли? А если у меня таблица с секциями и RxDataSources вынуждает меня сначала сделать маппинг в AnimatableSectionModelType? >Define utility. Это QoS или просто ты так называешь не мэин тред? Qos. >Тут ты очевидно путаешь очереди с тредами и переключением контекста в них — в очередях ничего такого нет (если это не конкурентная очередь), грубо говоря ты просто закидываешь ссылку на функцию в список, из которого она дёрнется при освобождении. Окей, спасибо, значит я что-то не так понял.
>>1889066 >И как ты себе представляешь отказ от презентейшен слоя? Проверь себя по чек-листу, нужен ли он тебе вообще: [ ] В этих моделях данные сильно различаются от содержимого хранилища? (Форматируется несколько строк итд) [ ] Тебе нужно считать лэйаут или ещё что-то расчитывать и кешировать отдельно от UI-я? [ ] Ты делаешь тестовое/проект напоказ в портфолио?
>Условная ячейка таблицы должна с реалм моделью работать что ли? Тащемта, весь прикол реалма (и его перформанс) — заключается в ленивости, т.е. он не читает нихуя с диска до обращения к конкретным пропертям. А так ты получаешь кордату, в которой контекст создаётся 1 строчкой а не 3 и нет схемы.
>Qos. А зачем такой низкий приоритет? Если не много данных и не 30 очередей уже юзаются, то конечно похуй, но это всё таки не какая-то ебучая аналитика, и имеет смысл ставить дефолтный приоритет имхо.
>>1889316 >[ ] В этих моделях данные сильно различаются от содержимого хранилища? (Форматируется несколько строк итд) Да, достаточно сильно. Тут еще такой момент, что я решил в пет-проект завести Rx стэк, сам понимаешь, что для работы с tableView/collectionView RxCocoa слишком кастрированный, так что я завез RxDataSources, а он заставляет подписывать модель датасорса на протокол SectionModelType/AnimatableSectionModelType, в общем, ленивостью реалма пришлось пожертвовать. > А зачем такой низкий приоритет? Если не много данных и не 30 очередей уже юзаются, то конечно похуй, но это всё таки не какая-то ебучая аналитика, и имеет смысл ставить дефолтный приоритет имхо. Да, справедливо.
Отклики хрюш ничего не значат. В 99 процентов они отрабатывают свою зп. Из трёх моих работ первая была получена от СЕО, вторая была получена от хрюши в возрасте, тоже практически СЕО и третья была получена от СЕО. Из примерно 30 диалогов с классическими хрюшами не было ни одного офера.
Написал честно, что опыта в продакшене у меня нет. Умею это и это, вот мой гитхаб, вот мой эпстор. Готов работать за еду ради получения опыта работе в команде. Предпочитаемый вид связи ЭЛЕКТРОННАЯ ПОЧТА
Какой-то долбаеб начинает ломиться в телеграмм. Сука, ну для кого я про почту писал? Ладно, хрен с тобой. Предлагает созвониться и обкашлять вопросики. Пол часа мне рассказывает о том, что ищет программиста для Альфа-Банка и как там у них всё пиздато с митапами, тимбилдингами, опенспейсами, коворкингами, смузи и гироскуткрами. Я говорю, что это всё круто. Но наверняка ведь банку нужен разработчик с большим опытом, а у меня его нет. О чем я честно написал в резюме. В ответ: «Ой, пук-среньк. Видимо я невнимательно прочитал. Тогда вы нам не подходите. До свидания». Пидор блять. Я час времени на него потратил.
>>1889978 Надо было не говорить, сейчас бы зарабатывал 300к наносек Ну или как минимум подорвал бы ему жопу после 5 собесов и "ой я забыл сказать у меня нет опыта"
>>1890032 Да это понятно. Но я ведь реально нихуя не знаю как распаралеливаются задачи в большом проекте между разными программистами. Как работать по Scrum- хуям, спринты эти ебучие и прочее говно.
>>1889432 >>1889564 правильно сказал - отклики это хуета, типичная активность хрюши. признак того, что ты просто прошёл первичный фильтр. офферы решают!
>>1893713 Хуй знает что у него там было, но у меня например пол года назад из 4-х собесов было 3 оффера (потом забил хуй на остальные собесы и принял офер, лол), при том что ценник у меня без 30к синьйорский. Просто ты скорее всего долбоёбик, который валится на средненьких вопросах вроде UIResponder/hitTest.
Самый кек был после собеса в сбер, на котором ебали 3+ часа в жопу (нигде такой хуйни не было, я же сука не в яндекс контестил), а потом даже не перезвонили как в мемасах, лол.
>>1893751 Нет, валился я на хуйне типа что типа зачем нужен sync, и прочей рандомной асинхронщине где без 100 грам не разберёшься. Я просто отталкивающий человек
Есть старый макбук про 2017 года и книга swift для детей. Из бэкграунда пол года на пыхе в 2018 джунов в конторе и вордпресс. И так вопрос, стоит ли начинать?
Если по таймеру делается несколько реквестов в цикле и узнается что сессия/токен истек, как остановить последующие реквесты пока токен не обновлен.
Подозреваю что делаю какую-то дичь, но у меня просто подряд идут несколько реквестов на обновление токена. А мне нужно дождаться пока будет получен ответ и продолжить.
let group = DispatchGroup() for item in item { group.enter() itemVM.update(item) { group.leave() } }
Так посоны, допустим етсь приложение но эпл его не пропускает в аппстор, но есть люди которые им хотят пользоваться и пользуются, как можно дольше всего без экспайра держать на телефоне кроме ентерпрайз лицухи?
>>1904822 Да попробуй лазейки найти не так уж и сложно модерацию наебать. А есть еще вариант через тестфлайт распространять(там не так ебет модерация вроде).
>>1905387 Если у тебя там запрещённый контент — то можно: а) Требовать регестрироваться (или просто спрашивать день рождения при первой попытке его посмотреть, и если он < нужного — скрывать всё нахуй) и предупреждать про NSFW контент; б) Просто скрывать его из основной выдачи (ты же хочешь запаблишить очередной клиент сосача? надеюсь это не тот высер на флаттере, лол. как работал прошлый клиент сосача — зайти на nsfw борды можно было только через поиск и, вроде, пикчи вообще не грузились если не сказать, что тебе > 18/21/итд).
>>1905387 В тестфлайте если на external testing там +- такой же ревью как в аппстор. Если приложением пользуются 10-20 мимокроков то можно заливать на внутренее тестирование в tf и доабвлять UDID девайсов в аккаунт, чтобы их можно было назначить внутрениими тестировщиками. Там ограничение 100 девайсов, причем менять список можно раз в год или типо того.
В энтерпрайз аккаунте можно создавать провижены без проверки UDID т.е. распространять можешь как хочешь и устанавливать на любые девайсы, но там тоже есть ограничения по функционалу вроде(apple pay и прочее, хотя тут не уверен, у меня не было админского доступа на энтерпрайз акке аппстора) и вангую получить энтерпрайз акк не так просто мимохую-кабанчику.
Есть еще автоподписывалки. https://github.com/rileytestut/AltStore Я не пользовался, почитай описание там все понятно. Используется твой apple id, оно само следит за истечением сертификатов на бесплатном акке и переподписывает т.е. каждый клиент юзает приложение с этой мокрописькой. Не уверен правда что там будут работать пуши, apple pay и другие фишки, который дает платный акк.
Ну самое просто это конечно наебать модерацию фичафлагами, если среди клиентов нет прошаренных чмонек которые будут потом стучать на приложение то вариант самый лучший.
>>1904822 Делаем авторизацию. Делаем кнопку "Зарегистрировать" которая будет говорить "обратитесь к своему менеджеру", или подобный бред. Так же для одобрения даём эплу аккаунт, мы понимаем, что логинится эпл, и исходя из этого делаем заглушки в неугодных местах.
Сегодня Apple объявляет о ряде крупных новых проектов в рамках своей инициативы «Расовое равенство и справедливость» (REJI) совокупной стоимостью 100 миллионов долларов, призванных помочь устранить системные барьеры, препятствующие появлению новых возможностей, и бороться с несправедливостью, с которой сталкиваются сообщества темнокожих и остальные.
Эти проекты включают в себя Propel Center, первый в своем роде образовательный центр для людей с темным цветом кожи, академию для разработчиков от Apple для занятий программированием и развития технического образования среди студентов в Детройте; а также венчурные программы для темнокожих предпринимателей.
Apple также выбрала центр Детройта для своей первой академии разработчиков в США. Согласно данным компании, в Детройте есть активное сообщество чернокожих предпринимателей и разработчиков, насчитывающее более 50 000 предприятий. Академия предназначена для расширения возможностей молодых чернокожих предпринимателей и программистов, помогая им развивать навыки, необходимые для работы в быстрорастущей экономике приложений для iOS.
Наконец, в рамках двух программ венчурного капитала Apple инвестирует 35 миллионов долларов в стартапы, принадлежащие темнокожим акционерам.
>>1868577 (OP) Господа, кто может пояснить по ЗП на рынке сейчас? ios макака, опыт в ios 5 годиков до этого еще пара лет в разработке, вроде типа мидл. Интересуют российские зп при работе на местного барина бояре с долларовой зп мимо
Сейас получаю чуть выше 200к и мне кажется это oche мало, не хватает примерно тысяч 70-80 до счастья; В общем дискасс.
>>1909925 Квартира + машина, вот уже минус 7кк. А еще хочется вкусно кушать, летать в другие страны иногда, дачу за городом и на старость оставить немножк.
>>1909938 Элита жрет анусы, живет в коробке из-под холодильника? Ну в целом на звание Диогена не претендую. >>1909946 а подкинь каналов, если не сложно?
>>1909861 Подскажи, на удаленке смотрел вакансии? Я когда искал у меня правда 3 года опыта ios, типа мидл, выше 150 вообще ничего не было, даже с бОльшим опытом.
>>1909960 На удаленке как правило косты сразу снижают, типа хуле ты ж из колхоза, тебе денег надо только на водку и закуску. Более менее предложения приходили сразу в личку в линкде, но все в основном на западного барина. >>1909967 Я не троллил, зайди в любое обсуждение зарплат/яндекса в хабрапараше и увидишь over 9000 комментов, что ЗП 300 не является чем-то экстра ординарным и вообще крепкий середнячок. Может, конечно, они там так троллят. ХЗ
>>1909861 >Сейас получаю чуть выше 200к Блять, у меня 5 лет опыта я 200к получаю и доволен потому что понимаю что 2.5 года хуи пинал а не кодингом занимался на проектах
>>1915955 нет, как было так и осталось гавном, а после фикса abi нужные отсутствующие фичи они не добавят. На этой хуийне конечно можно говнять фронт для мобилок, но зачем?
Пацантре глядите, вот у меня есть сториборд, в нём вьюконтроллер Один с кучей оутлетов. Я могу сделать сабкласс Два: Один и инициализировать его из того же сториборда? let vc = storyboard.instantiateViewController(withIdentifier: "Один") as! Два не пполучается
>>1916825 Я себе купил йоба пеку и накатил хакинтош, посмотрел что прошка на инцеле со схожими характеристиками(во многом хуже, но не критично) стоит 4к+ и что-то передумал брать. Пускай выпускают свои ARM хотя бы с 16 гб рам, а этот макбук 8 ядер 8 гигов для учебы пока ненужон.
>>1917041 Потому что у тебя в Identity контроллера сториборды стоит Один. соответственно и создает базовый класс, который при касте к наследнику всегда будет fail. Никогда не пробовал такую тему, но поидее если поменяешь в identity класс на наследника то должно сработать.
>>1917163 > но поидее если поменяешь в identity класс на наследника то должно сработать Так идея в том что грубо говоря ниб один и для наследника и для базового, если я поменяю в сториборде идентити, то я всегда буду инициализировать наследника, даже когда мне нужен базовый (без дополнительных полей). Чувтсвую что с файл овнером надо мудиться, никогда его не знал толком
>>1919802 Да, потому что с теми зп, которые они предлагают - только студентов и набирать. Ну в принципе норм бартер, заводу движения с "молодыми специалистами", а студенту какой-никакой доход и опыт
Антош что делать? Присваивание большой заранее подготовленной attributedString в textView в ячейку таблицы делает небольшие заметные дерганья при скролле на 6s ios 13.3.1. Особенно если строка очень большая. Неужели операция присваивания attributedString такая дорогая? Что делать, опытный анон подскажи пожалуйста? С asyncDisplayKitами связываться не хочу.
Даже присваивание большой строки делают глюк при скролле. Глюков нету, если строка умеренного размера. Но мне надо весь текст отображать. На новых девайсах потестить не могу.
>>1925544 Когда ячейка с этим большим текстом выходит на экран происходит 1 мини дергание но оно заметно если медленно скроллить. Да я вижу в профайлере что view.attributedText = attributedString много времени занимает но мне нужна показывать всю строку и не важно какой она длинны. Может быть это связанно из-за девайса самого?
>>1925540 Текст одного цвета или раскрашен в разные цвета? Смотрел недавно какой-то доклад WWDC там говорилось что если в TextView монохромный текст то за счет дополнительных оптимизаций это до 80% производительнее.
>>1925540 А зря не хочешь, лул. На нём и разрабатывать проще, и результат лучше (правда надо иметь понимание что ты вообще делаешь, иначе затрахаешься с тред санитайзером ебаться).
Ещё как вариант есть узкоспециализированные либы вроде YYText, которые умеют в асинхронный лэйаут и отрисовку этих бозатых строк.
Алсо, есть ещё вариант растеризовать текст в изображение на бэкграунд треде с помощью CoreGraphics, это самый простой вариант без сторонних либ, но об всяких выделениях текста и ссылках придётся забыть (а если текста ну очень дохуя — то ещё и ебаться и писать какой нибудь LRU кэш, потому что изображения будут весить хорошо).
>>1925543 Будет всё то же самое, только чуть меньше. То, что слабо лагает на 6S не будет заметно лагать на десятке, а что сильно лагает — будет дёргаться и там (а если система ещё решит заняться установкой обновлений или юзер включит режим энергосбережения — то лаги будут почти такие же).
>>1925557 А лучше не ебать голову, и взять что-то готовое, где с кортекстом уже за тебя поебались, потому что ты сам будешь делать это дольше, и получится хуже чем в проверенных годами либах.
>>1925813 чёт не смог не лольнуть.. если мы слышым слово кеш, то всё, идём шерстим интернет в поисках либы. Вообще говоря это самое интересное, тем более не свифте.
>>1925919 > если мы слышым слово кеш, то всё, идём шерстим интернет в поисках либы А где я писал про либы для кеширование, маня? Покеж цитату хоть.
Тащемта, это вопрос цели. Если цель научиться — то всё по хорошему надо делать руками, да. А если цели выпустить приложение — то надо пользоваться готовыми решениями, потому что написание своих, явно уступающих (скорее всего тупо _во всём_ — всё таки судя по уровню вопросов, чел даже на мидла не тянет) это прокастинация уровня "ммм какую бы архитиктуру выброть)0 хачу паписать бройлерплейт на випере".
>>1925813 Да я вкатывальщик. Спасибо за совет. Пока решил проблему так, что растеризую в изображение. А для выделения текста просто отслеживаю момент когда скролл останавливается и подменяю обратно на textView. Если в будущем опять лаги будут то буду разбираться с CoreText'ом.
>>1927465 В зависимости от того, что ты с этими 1.5 годами делаешь, и что умеешь. А вообще лучше всегда просить, потому что в целом у всех тогда по рынку зп будет повышаться, никто им их гавноприложухи просто не будет за прежние цены поддерживать.
>>1927473 >А вообще лучше всегда просить, потому что в целом у всех тогда по рынку зп будет повышаться, никто им их гавноприложухи просто не будет за прежние цены поддерживать. да тут полностью согласен, сам об этом думал, что вкатуны демпингуют рыночек думаю аппелировать тем, что повышение привязали к аттестации, а на уровне мидла это раз в 8 мес
>>1927486 Вкатываться идеально в универе, учась на всяких прогроммисстких специальностях. Ты и рынок не будешь демпинговая, ибо студент - че с него взять. И как к окатышу не будет лютых требований. В идеале на какое-нибудь здоровое предприятие попасть, где тебе и мак хороший на стол поставят, и ехать особо не будут.
>>1927570 Я на 2 курсе вкатился, батрачил за мрот, хотя по сути не батрачил, а учился. В универе сейчас тебе не дадут нормально поучиться, 1-2 семестра программирования по 2-3 пары в неделю.
Хелп, что я делаю не так или не знаю может чего? Есть видео 720р, пытаюсь его проиграть и отобразить по советам с stackoverflow. Вроде бы все хорошо работает, но есть одна проблема - эта зараза почему-то обрезает его на половину. iphone не умеет чтоли масштабировать видео в контейнер? На js в браузере все нормально работает. Код простейший, спижженый с интернета.
>>1933771 Вакансий нету, а если и есть то сеньорные и на говнопроекты. Специфика iOS такая, что очень мала удаленных вакансий. Сама по себе закрытость платформы.
>>1933773 да, я вкатился уже, в избранном тред зачеркнут почему-то, решил, что умер
вкину стори тогда уж написала недавно хрюша, предложила пообщаться на англе, я сказал сейчас не готов, в голове все перемешано, языком занимался n лет назад, она говорит мол да ничего страшного это так мелочь. В итоге хуйню какой-то набубнел, через пару дней пишет, извините, у вас язык не разговорный жопа у меня бомбанула знатно после такого, теперь я их сходу нахуй слать буду
имхо вопрос времени когда он разделится на макакскую и олдовую часть как было с пайтоном, так как кор тим уже в пятой версии начала прогибаться под молодых и успешных
>>1934279 Да нет, эпл просто обрубит через несколько лет возможность подписывать приложения старым икскодом, и возможности собирать свифт ниже 4/5 просто не будет.
Да и не было у свифта периода застоя в 10 лет.
>>1933898 Ну так есть obj-c — полторы фичи на весь язык и тонны визуального шума.
>>1941966 Все брал из шапки айосных тредов, из курсов тогда еще тут скутаренко советовали. Плюс, как и любая начинающая макака, активно юзал гугл, sf, а позже и в документацию apple привык лазать за ответами.
Привет А есть тут аноны, которые работаю на рынок EU удаленно или на месте? Работаю в пшекии c plsql, tsql и прочей хуетой, но хочу перекатиться во что-то нормальное
Поменять ли мне свой эйр 2017 на m1 эйр и присесть на 8 гб точеных, то ли поднакопить на гомотачбар и уже насладиться 16 гб рам дроченых? Кто нибудь пробовал на m1 работать? Слесарьплов на айфончик смогу накатить? Телегу собрать без получасового ожидания и визгов кулера если речь о прошке?
На макпуке 18 года с 8гб рам xcode ворочается помойно, пришлось накатывать на пеку воровскую каталину.
>>1943360 Немного смежный вопрос. Батрачу на мини 12 года, апгрежен, производительности хватает. Но на него не пришла последняя ось, могут ли из-за этого возникнуть проблемы? Или можно хуй забить?
>>1943568 Собирать приложение сможешь в текущей версии установленного Xcode. А вот для публикации нужна будет сборка с наиболее новой версии Xcode. Apple обычно указывают с какой.
>>1943626 Не изучал что там и как, но чую, что связано что-то с хаками в той или иной мере. Эллы это дело не любят, а ученик с которых я публикуюсь хорошо бы, что бы не были во всякой такой движухе замечены.
>>1943648 Понял, спасибо. Походу заставляют пересаживаться на новый девайс... -70к на новый мини, блэт.
>>1946141 Эта хуйня везде. Конторам проще пиздить у других готовых спецов чем обучать ждуна, которого через год, как только он выйдет на самоокупаемость, спиздят другие конторы.
>>1946492 Да я сам так сделал пару лет назад кек. Хотя судя по концу прошлого треда, где даже пчелы с опытом не знают вопросов, которые у нас с джунов спрашивают, подойдет это не всем
>>1946712 Я вангую, что уровень вкатывальщиков ниже, но, если объктивно, мне кажется на ios хуевее всего Причем самый отстой в том, что я вкатывался параллельно со своей работой, думая, что именно для свифта можно прокачаться по максимуму дома для будущей работы
Знакомый вот вкатывался во фронт, в котором якобы тонны вкатанов, но за неделю нашёл оффер на 80. Конечно, это не дохуя, но нашёл Такая история с шарпом
>>1947285 Да как раз нет Опять же, вот ок, есть у меня компетенции джуна, но не берут джунов, а только минимум мидл На жс джунов как раз ищут, может не дохуя, но точно больше 1 И да, в не хочу разводить холивар. Мне нравится ios , но вкатиться не могу
>>1950567 Не так и часто. Раз в неделю в худшем случае, обычно все вылеты связаны с IB или ассеткаталогом. Например если в SPM пакете пытаться перетащить аутлет в файл - краш. Если создать аутлет в коде и перетаскивать связь из кода в IB то все нормально, периодически забываю об этом и крашусь.
Подскажите пожалуйста, сейчас на мбп 13 17 года на 8гб работаю, заебался сил нет, хочу перепрыгнуть уже, но м1х ещё не представили и хуй знает когда вообще его выкатит, кто говорит что в марте, кто в июле кто говорит что осенью, ебал рот такие прогнозы, я с ума сойду на своём ждать, решил сделать тактический перекат на М1 эир, на 6-12 месяцев, после чего взять 16 прошку. Есть кто уже на эир с М1 как он вообще вывозит, тот что на 8гб?
>>1952841 >на 8гб Да никак не вывозит, если у тебя проект больше хэловорда. А если не сильно больше — то при отладке вьюх в симуляторе однохуйственно в своп полезет, лучше смотри сразу 16 гб, разница в 20к не стоит того.
>>1952971 Опыт использования, я почти 2 года назад с болью в анусе сбежал с 8 гб, мне уже тогда нихуя не хватало. И чудесный процессор тебя не спасёт — там в эти 8 гб ещё и видеопамять входит, лул.
Вообще, покупать ноутбук для работы, карл за 100к, и жалеть 20к, после чего страдать = быть долбоёбом. Хотя мб ты вкатыш за 40к а я зажрался.
>>1953255 Так-то оно так, только тут оперативки не хватает, там пишут что 256 гигов мало, надо брать 512 минимум, вот и получается уже не какие-то 20к, а все 50.
>>1953301 >только тут оперативки не хватает Это факт. >там пишут что 256 гигов мало, надо брать 512 минимум А вот это уже субъективщина. Ты видосы монтировать собрался или код писать? > вот и получается уже не какие-то 20к, а все 50 Ну, тащемта если ты не понимаешь разницу между оперативкой и диском — советую перекатиться в грузчики, лол.
>>1953374 >А вот это уже субъективщина. Ты видосы монтировать собрался или код писать? Нихуя не субъективщина, 256 гигов для кода мало. Ну смотря для какого, для веба может и норм. Для iOS уже поджимает. Если кроссплатформой хочешь побаловаться - в притык. Ворочать какой-нибудь анрил со сборочками под мобилки - не хватит.
>>1953436 >Ворочать какой-нибудь анрил со сборочками под мобилки - не хватит. Хватит, я ворочал. Хотя мб если большой проект с кучей ассетов, то конечно подожмёт. Только при чём тут iOS и код-то?
>Если кроссплатформой хочешь побаловаться - в притык. Хуй знает что у тебя за понимание кроссплатформы, икскод 30, ну допустим андроид столько же, чем ты остатки займёшь?
>Для iOS уже поджимает. У тебя какое-то странное понимание айоси, кроссплатформенный гейдев != iOS девелопмент, мы тут про покраску кнопок.
>>1959428 Кстати, когда в последний раз искал работу не кват, чисто визуально показалось, что андроид вакансий на удаленку гораздо больше. Это правда так, или мне показалось?
Кто-нибудь пилил server side swift на фреймоворках(vapor, perfect)? недавно узнал, что можно и бэкенд на нем делать, загорелись глаза вкатиться поглядеть
>>1952678 Как успехи? Я джва года жду такое приложение. Раньше использовал пунто именно для ручного переключения, но для маков его забросили и никто не фиксит срабатывание через раз в новых версиях ос
Здарова бандиты. Есть делюга. Я делаю пет проект, и хочу нанять тебя. Да, тебя - вкатывательщик. Я жду что ты понимаешь иф-елс, массивчики-хуйсивчики, лайфцикл вьюконтроллера, ты знаешь элементарный синтаксис. С меня продакт менеджмент, тех-лидство и 300$ тебе на пиво. Если ты заинтересовался - пингани меня @oleygen в палате https://t.me/joinchat/vdwQSYb2y2o3MDdi
Анон, поставили на новой работе проект писать, а я в панике, не понимаю с чего начать, начал вроде с того что на бумаге расписал по кусочкам что делать, но все равно каша в голое
Если с нуля писать не смотря другие проекты и не копировать код я нихуя не напишу, от этого еще сильнее самооценка падает.
А в резюме 5 лет опыта... Я всю жизнь только из готовых блоков делал и собирал код, как вы выбрались из этого говна?
Макоебы, подскажите. Разрабатываю кросс платформенную гуишную приложуху и надо хранить настройки и пару каталогов. Где их правильнее было бы хранить? Пишу на С++, маком уже 4 года пользуюсь, никогда под него не делал софт. ~/Library/<app_name>/? ~/.app_name/? Внутри бандла? По сути простой файл конфигурации, хранить токен авторизации от сайта и пару мелочей.
>>1976935 > Сижу с гитхаба гуглю сейчас что взять Бери мвц и не трахай мозг, лол. Просто сплить всё максимально на контроллеры, а всё что связано с вью делай исключительно во вьюхах, и всё будет чистенько. Всякие вайперы/рибсы — трата времени для тех, у кого сотни челиков, которых надо разводить по загонам и как-то всё их говоно мерджить, и эта трата времени не чувствительна (хотя мб у тебя такой случай).
Всякие unidirectional архитектуры будут нормально ложиться когда придёт SwiftUI т.е. лет через пять, лол.
>И еще вопрос, кто какие оболочки поверх кастомной теблвью использует? А нахуя?
>>1983166 >А есть ли смысл domain model делить на две сущности, одну зависимую от coredata/realm, другую независимую? Тащемта, именно в случае с рилмом и кордатой это тупо необходимо: а) если захочешь сделать выборку на одной очереди, потом посчитать лэйаут и прочие финтифлюшки на другом а после закинуть в основной — с наследниками NSManagedObject/Object пойдёшь нахуй сразу; б) если выйдет новая супер-пупер база и/или рилм/кордату дипрекейтнут — пойдёшь рефакторить всё приложение нахуй, а не только модели и маппинг (особенно если возьмёшь рилм — у кордаты хоть типы нативные); в) ну и вишенка на торте — это пагинация в ебаном, блядь, рилме, где тебе придётся либо выносить тонны логики в модели или хуярить тонны фабрик. г) если нужна будет агрегатная выборка... Хотя тут и кордата и рилм и без того нахуй пойдут.
Если хочешь не хуярить — можешь взять какую нибудь обёртку над SQLite (например, сейчас самая лучшая — GRDB), и в один экстеншен довесить к своим plain моделям всё добро для хранения в бд, без всех вышеперечисленных недостатков. Но придётся изучить SQL, лол.
>>1983166 >и view model И вот это не всегда надо — если ты делаешь ебаный список с ячейками по 2 надписи со статичными размерами, где ничего не надо агрегировать, считать и кешировать — можно смело забить хуй.
>>1983643 Справедливо, хотя делать три маппинга для каждой сущности, пусть и на других очередях, такое себе. >>1983644 Тут не согласен, в 90% случаев для условной ячейки таблицы надо форматировать дату, собрать URL картинки и форматировать с plurals какую-нибудь хуйню, так что без вьюмодели не обойтись.
>>1983763 >Справедливо, хотя делать три маппинга для каждой сущности, пусть и на других очередях, такое себе. Ну, минимум это 2 сущности, как ты сам заметил в следующем предложении, так что можешь просто дропнуть только третью — но это, как показывает опыт, нихуя не распространённая практика, пока ибо 80% разрабов передних концов никогда и не сталкиваются с проблемами с перформансом, и срут по 10 промежуточных объектов на каждом этапе.
Тащемта, если у тебя будет хоть сколько-то нетривиальное приложение, рано или поздно дойдёт до того, что данные надо будет собирать из разных источников (у бэкэндеров же микросервисы, поэтому чтобы собрать модель корзины ты будешь ходить за списком товаров, чтобы узнать какие в избранном — отдельно за списком избранных, чтобы показать кнопочку купить или послать нахуй — ещё три запроса на баланс, доступные способы оплаты в стране и скидки за промокоды и тд и тп), а потом на разных экранах по разному показывать (а если у тебя приложение с большим долгоживущим кешем — то ещё и изъёбываться чтобы всякие агрегатные модели делать в которые не дай бох лишний столбик влезет), так что модели — это вообще такая себе штука, которая имеет свойство прирастать по экспоненте с ростом приложения. От этого кстати есть спасение — становиться динамикопитухом и ебашить словари в словарях на словарях, но ты от этого говна сам рыгать начнёшь через две недели как вернёшься к коду.
>Тут не согласен Дык прочитал плохо, я же написал — если не надо то не скатывайся в карго культ как нюфаги это постоянно делают после прочтения статьи про чистый код, и на каждом простом списке хуярят вайперы в которых гоняют данные в стиле JSON -> PONSO -> NSManagedObject -> PONSO -> ViewModel.
>>1984222 Ебать, ты бы еще тупее вопрос задал, нихуя не понятно что ты там хочешь. Если ты хочешь проверить в if на конкретный case у enum не используя switch то есть синтаксис if case Если ты хочешь аналог caseIterable для полей класса то тут для рантайма нужно использовать рефлексию (Mirror), для кодогенерации есть sorcery {% for variable in type.storedVariables %}
>>1984302 Значит я тебя правильно понял, но не понял зачем тебе такое нужно. Можно пропустить файл через кодогенератор(sourcery или gyb) и сгенерировать массив allCases элементами которого будут keyPath, используя которые потом сможешь итерироваться и получать значения полей. Либо делать обход в рантайме через Mirror.
Но скорее всего тебе нужен OptionSet который является swift аналогом полей битовых флагов.
>>1984326 Думаю я перемудрил. Спасибо буду разираться. Наверн OptionSet мне и нужен.
>зачем тебе такое нужно. Чтобы вызывать определенный метод если значение одного из полей true. Я изначально ничего не планировал и прописал эти значения как отдельные поля в entity. Но сейчас уже не хочу ничего переделывать.
Поясните, зачем нужна dto? точнее в каких ситуаций она нужна, я не думаю что везде нужен лишний слой как я это вижу Сервер -> apiUser(Codable) -> userViewModel -> ui view
В двух словах: Не нужно если у тебя нет: 1) Кэша; 2) Бэкэнд тривиальный, модели везде целостные и источник данных стабильно один; 3) Нет бриджа с другими языками (кроме прямого бриджа из обж-с, есть ещё всякие варианты когда надо маппить из/в плюсы/жс/котлин нейтив/итд); 4) Ты не разрабатываешь автономный модуль/сдк который будет подключаться и должен работать с любыми датасорсами/базами/итд.
>>1987512 >Я частично читал про эту тему, но больше обходил стороной. Нихуя ты не читал, иначе вот таких вот вопросов >Так лепить тут DispatchQueue.main.async вообще законно? не возникало бы, лол. Пиздуй читать, это пожалуй единственный полезный вопрос, который регулярно всплывает в разработке, который задают на собеседованиях.
>>1987736 Ну у меня когда-то был вопрос с обновлением инфы в menubar и тогда я услышал про runloop. Типа нужно создавать таймер и добавлять его в runloop.
И то что все обновления ui надо выполнять в DispatchQueue.main.
Когда попытался использовать DispatchQueue.global или main.sync, то там была какая-то ошибка(изначально я думал что раз это общение с бд, то нужно sync..)
>>1988017 Я тебе скажу больше — вообще всю работу с кордатой надо выносить в бэкграунд контексты, перформить круды в этих контекстах (через этот самый метод), и только после этого коммитить это всё в главный.
>>1987975 >Типа нужно создавать таймер и добавлять его в runloop. /0 10 из 10 просто. Карьеру грузчика ещё не предлагали?
>Ну у меня когда-то был вопрос с обновлением инфы в menubar и тогда я услышал про runloop. Типа нужно создавать таймер и добавлять его в runloop. Ты услышал намёк пойти и прочитать что это такое и как работает, ибо без этого ты _никак_ не сможешь понять, какого же хуя твоё говно будет работать если въебать DispatchQueue.main.async и в чём проблема.
>изначально я думал что раз это общение с бд, то нужно sync Особенно из мэинтреда — устроить дедлок нахуй и не парится.
Ты всё таки начни там с книжки какой нибудь, не еби мозги.
>>1987736 А можешь для маляробыла с двумя годами перекрасов рассказать что там на собесах про него спрашивают? Как раз собираюсь дропать текущее место, про залуп в общих чертах знаю что это такой адаптер с poll на event based т.е. залуп делает опросы а для клиента это все преобразуется в вызовы коллбеков/делегатов, но каких-то МОМЕНТОВ в разработке с ним никогда не возникало.
>>1987073 >Но оно успешно сохраняет если все обернуть в DispatchQueue.main.async Это ты.
>>1988246 Ну а ты понимаешь в чем смысл? Взаимодействие с юаем переключает мейн ранлуп в ивент трекинг и неважные события типа таймера вытесняются. Вызывая асинк на главной очереди ты просто пропихиваешь свой код положив болт на текущий режим работы
>>1988194 >А можешь для маляробыла с двумя годами перекрасов рассказать что там на собесах про него спрашивают? Что это и как работает, ещё есть набившая оскомину задачка с кучей вложенных вызовов async/sync, где просят расставить принты в том порядке, в котором они выведутся.
Вот этот анон >>1988313 собственно половину ответа про ранлуп для собеса написал.
>но каких-то МОМЕНТОВ в разработке с ним никогда не возникало. То есть, ты хочешь сказать, что за 2 года ни разу не: 1) Вызывал dispatchQueue.async? 2) Открывал профайлер, и не видел вызовов CFRunLoopDo(Sources/Blocks), в мэинтреде, из которых вызывается твой код? 3) Приходилось обновлять список/коллекцию во время скролла, без лагов и вылетов при скролле? 4) Не юзал, блять, таймер?!
>>1988246 Ну я же сказал почитать что это и как оно работает, нахуя ты продолжаешь таймер туда сувать, поехавший? Тебе понимание матчасти нужна, а не ебучий таймер.
>>1988339 Я имею ввиду внутрянку работы runloop и какие-то хитрые кейсы типа вытеснения таймера, о чем я слышу первый раз. Таймер, aync обновления списка я конечно делал, но такой ситуации чтобы где-то что-то отъебнуло из-за непонимания устройства runloop никогда не было.
>2) Открывал профайлер, и не видел вызовов CFRunLoopDo(Sources/Blocks), в мэинтреде, из которых вызывается твой код? Вот этого не было, да. Instruments я юзал только чтобы находить утечки. Ну так я маляробыдло, так и написал
>>1988760 >Я имею ввиду внутрянку работы runloop и какие-то хитрые кейсы типа вытеснения таймера, о чем я слышу первый раз. Это могут только у совсем синьйора-помидора когда цену хотят сбить и намекнуть что он ахуел, пока можешь не парится.
>но такой ситуации чтобы где-то что-то отъебнуло из-за непонимания устройства runloop никогда не было. Ну попробуй написать написать стресс тест: коллекцию из пары сотен элементов (с ячейками хотя бы 7-8 вьюх), и повесить таймер, который будет хуярить апдейты каждые пол секунды, и дрочи её туда сюда руками. Или сделай классические инстаграмовские сторисы, в которых надо делать прелоадинг. Цель — заставить апдейты работать так, чтобы не лагало под пальцем (и в первом кейсе — чтобы не крашилось а ещё желательно поймать всякие кеки вроде задвоенных/зависших ячеек — если разберёшься, можешь идти помидором в хуяндекс).
>Вот этого не было, да. Instruments я юзал только чтобы находить утечки. А заодно задрочи прошлые задачки в профайлере, и добейся 60 фпс. Для усложнения можешь сделать ячейки произвольных размеров, чтобы у каждой надо был нетривиальный лэйаут.
>>1988760 > Instruments я юзал только чтобы находить утечки
Много раз пытался им пользоваться, в итоге все равно ищу учетки через memory graph . Стоплю проект и смотрю, и нахожу протоколы и от них уже отыгрываю через weak, а потом смотрю ушла трабла или нет.
>>1988806 шаришь. Я вот 10 месяцев вообще хуй забил на все и делал только таски по работе. Ради интереса зашел глянуть твои ссылки (которые каждый ios чел знает) и по другому теперь смотришь на вещи. и даже это https://www.youtube.com/watch?v=fXCfvYZIrrE
Ранлуп конечно я копал до самых глубин, только нихуя не пригодилось и офк забыл. Мой всем совет, делать то шо пригождается. А остальное там подберется по мелочи.
Я бы рад с вами посидеть за такими разговорчиками, но двощ это скамная платформа все же. Захожу не часто. Всем добра.
>>1984220 Еще вспомнил момент, как то раз хрюша мне дала записанный разговор с собеса. Там вопрос челу говорили, из чего внутри состоит Опционал, и он сказал что массив.
Кекнул я тогда знатно, а собеседующий виду не подал, держался поцан.
Так что будте осторожны, ваш разговор могут записывать хрюши. Это была компания BSL
>>1990940 >работаешь в офисе >2к21 >корона Кха-кха-кхм, манагер, кхм-кхм, я чегой-то приболел, мона на удалёночку на недельку? Пиздец ты раб конечно, как вообще во время короны ты умудрился работать из офиса?
>>1991020 >Можешь хоть в старбакс пойти на обед собеседоваться, лол. А если вебку попросят включить и я на фоне ободранных обоев сижу как бомжара. Мне тупо будет неуютно в старбаксах или засранной временной хате о чем либо говорить с незнакомыми людьми.
>>1988339 >>1988760 нахуй вы такие твари? я только кнопку крашу 5й год подряд и блять у вас тут так все круто рокет саенс а мне по работе не приходилось юзать эо все
>>1991813 >я только кнопку крашу 5й год подряд Меняешь работу, тебя принимают за синера и спрашивают об устройстве экзистенциального контейнера. Твои действия?
>>1992081 Гордо рассказываю про две таблички, как работают протоколы и ещё три указателя которые можно засунуть в эту хуйню без марания хипа — и иду красить кнопки ни разу дальше с этим не сталкиваясь.
>>1992230 >андроидом не стал бы пользоваться, даже если был бы выбор сосать хуй или юзать его >когда вижу как npm выгружает пол интернета ради хэловорда, а потом у меня нихуя не работает потому что undefined is not a function, и аналогично прошлому пункту выкатываюсь >на бэкэнде в основном унылые говна, когда вкатывался дотнет еще был шындовым а скала только начинала популяризироваться, и не быдл уверенности, что не пойдёт нахуй (динамикопитушня идёт нахуй ^) >десктоп тоже шындовс на 99% >игры — интересно, но зп ниже рынка а работать надо больше
>>1992081 Про экзестенциальные контейнеры я то могу рассказать, вот только я такой же маляр с двумя годами типа >>1991813 и все это знаю только потому что нужно для собеседований что интересно, а на реальном проекте за пределами покраса даже если какая-то лютая и неоптимальная хуйня, то если тестировщику не покажется что в этом месте приложение сильно тупит всем похуй хоть там долби потоки с дедлоками и юзай мейн тред для декодирования видео.
Там сверху чел написал, что вкат оформить невозможно вообще. Это правда? А то вот думал на днях поехать за аиром 13 года. Чтобы начать жёстко дрочить ios
>>1993139 Удаленку точно хуй найдешь. Ну и на веб вакансий раз 10 больше(в том числе и удаленных). За последний год вообще в треде историй вката не было. Думай сам и решай вкатываться или нет.
>>1993109 можно хакинтош накатить, но если опыта пердолинга хакинтоша не имеешь лучше бери мак и не парься.
>>1993139 >за аиром 13 года У меня эйр 17 и биг сюр очень тупит, в принципе как песочницу попробовать что-то в свифтюае или uikit использую иногда, но чуть больший проект уже писать заебешься. Недавно пробовал компилить TDlib (что-то типа сдк для телеги) на нем, заебешься ждать. Вангую что с эйром 13 года насосешься фризца и бросишь.
>>1993317 Я давно вкатился 3 года назад Насколько тяжело сейчас закатиться хз, моя контора уже второй год не набирает никого, хотя пару айосников укатились.
Анончики, помогите. У меня есть приложение, которое считывает теги с NFC меток. Я хочу запихнуть всю логику работы с NFC в отдельный Worker. Собственно, это я уже сделал. Но есть один нюанс. Дело в том, что обработка метки занимает какое-то время. Суть такая же, как и с сетевыми запросами. И мне нужно, чтобы основной ViewController подождал, пока отработает мой Worker и от него придёт результат.
Сетевой запрос я могу обернуть в замыкание и передавать его результат в completion-блоке. А как мне поступить в данном случае? Ведь здесь у меня целых три метода. Сканирование запускается в одном, а результат получается в третьем.
>>1994615 а) Написать твоему сервису делегат; б) Хранить в твоём сервисе эти самые коллбеки (выглядит не так красиво, но тесты писать легче, если вообще будешь это делать); в) Взять Combine/RxSwift/написать каштомный Observable — и высунуть эту хуитку, которая будет хранить и броадкастить стейт внаружу (лучший вариант когда надо применять апдейты больше чем в одном месте); г) Ебануть глобальные нотификейшены через NotificationCenter (если приложение маленькое, и обновлять надо несколько мест) — но этот попахивает гавной, имей это ввиду.
Я вот сделал минифреймворк для анимации для нашей конторы. запилил вроде подспек, залил на приватный гит, а при установке на тест проект под мне выдает ошибку что нет такой репы и пода и вообще иди нахуй
сорс я указал верный в подфайла в подспеке тоже все нормально, линт проходит
Может в новых версиях по другому все? я просто по туториалам делал старым
>>1994984 >залил на приватный гит Ну тут 2 стула: 1) Трафик почему-то идёт мимо впн-а; 2) Ты, макака, в гите авторизован по http.
Алсо, можешь попробовать затащить через SPM, или если низя — как сабмодуль в гите. Правда за кастомные билдфазы без какой нибудь тулзы для генерации файла проекта я, на месте тимлида, отпиздил бы.
>>1994979 >спасибо, просто мне нельзя тащить внешние зависимости и надо 10 иось поддерживать На меня прям ностальгия нахлынула, как сидел ещё джуном, а потом мидлом на таком же проекте — тащить нихуя нельзя было, команда была 2,5 голых землекопа, а тимлид строил из себя руководителя крупного ынтерпрайза, лол. За почти джва года планирования переезда на свифт на нём была написана тыща строк, во всех велосипедах было багов как говна, всем было похуй, с каждой новой версией системы приложение улетало по рейтингу вниз. Итого — полтора года как я съебал, у приложения 2,1 рейтинг, вакансия по ощущениям не закрывается с момента моего съёба.
Ох уж эта элитарность в кругах айосеров.
>сохранил твой сайт Лучше сохрани вот этот кусок текста >просто берёшь и гуглишь 'awesome-*', и ищещь в списках либ то, что тебе надо вообще ко всем стекам в 2к21 применимо.
>>1995048 >тащить нихуя нельзя было, команда была 2,5 голых землекопа, а тимлид строил из себя руководителя крупного ынтерпрайза >была написана тыща строк, во всех велосипедах было багов как говна, всем было похуй >с каждой новой версией системы приложение улетало по рейтингу вниз Такое ощущение что я тот землекоп, который пришел после тебя
>>1998758 Под объектом я имею в виду реальный объект, например сферу, не помещая при этом 3д модель сферы на реальную, а просто нанося текстуру поверх меша.
>>1998758 А при чём тут вообще ARKit? Он к рендерингу вообще никакого отношения не имеет. В SceneKit подобной хуйни точно нет, можешь посмотреть на новый RealityKit. Если там тоже нет — посмотри уныл/юнити, там что-то про AR тоже было. А если и там нет — придётся вкатываться в митол.
>>1998763 >не помещая при этом 3д модель сферы на реальную, а просто нанося текстуру поверх меша. Т.е. воссоздав меш объекта, но без меша объекта? Ты сам-то понимаешь, что несёшь?
В любом случае тебе нужен меш видимой части объекта (как ты текстуру-то отрисуешь иначе) —> от создания "двойника" на экране ты никуда не уйдёшь (единственный вариант — потрахаться и создать копию видмого куска объекта, правда непонятно нахуя, если легче созлать сферу и поместить её на сцену — эффект будет 1 в 1), а чтобы сколько-то правдоподобно оцифровать кусок объекта нужен хотя бы девайс с лидаром.
>>1998511 Пчел, я, конечно, не знаком с Украинским рынком, но галера есть галера (если ты сам понимаешь, о чём спросил, хотя у вас там кроме аутсорса 1,5 голых землекопа продукты делают, так что понимать должен).
Ты на любой из них однохуйственно будешь прыгать с проекта на проект, тебе будут ебать мозг, трекать время и гонять по собесам, лол. Из плюсов — на галерах тебя быстро начнут продавать как мидла, а потом и как синьйора, потому что это выгодно галере. Правда перекатиться в продуктовую компанию на ту же лычку наврятли получится — но тут вопрос чего ты-то хочешь.
Если у тебя нет опыта — то вообще насрать, иди работать куда возьмут. Если есть опыт — смотри на крупные, чем более известная компания — тем больше тебе поможет наличие пункта с ней после твоего съёба на следующее место работы. В РФ, например, все люто надрачивают на яндекс читай — год там считают чуть ли не за 2-2,5 в другой компании, при том, что все их нормальные приложения — это, тащемта, купленные стартапы. Хотя за последний год-полтора они, скупив всех кого могли, и схантив всех кого могли, вроде как и подтянулись, но раньше все их приложения были лютейшей дриснёй.
>>1998990 >В РФ, например, все люто надрачивают на яндекс Хотя это и не галера в оригинальном смысле этого обозначения компаний (и на опыт из продуктовых компаний всё же в целом дрочат сильнее, поэтому хз насколько релевантно было сравнивать), но суть, я думаю, ты уловил.
>>1998961 Что если у меня нет заранее заготовленной 3д модели? Вкратце, я хочу апп, который бы перекрашивал мой диван в реалтайме. Извиняюсь за тупые вопросы, я вообще из другой разработки. Спросить больше некого.
>>1995048 >Ну тут 2 стула: >1) Трафик почему-то идёт мимо впн-а; >2) Ты, макака, в гите авторизован по http. Да не, там с сорсом что-то, вечером скину.
>>1868577 (OP) >Swift book - книжка валяется в интернете доки. Поясните долбаёбу, что это за книга и где она валяется. Гуглится сайт с переводом документации свифт.орг и курсами.
>>1868577 (OP) Ну че, топавые мабильщеги? Трудовая неделя закончилась, да? Впереди хикаваниэ дома с доткой и игрищами с соевой спермой, да? Чтобы хайповенько, ага?
>>2006125 Правильно, бля, прАгрессивному анальнику делать больше ничего и не нужно, ведь остальное, как увлечения чем-либо, так и прогулка в ближайший бар, это ведь нинужна с точки зрения повелителя изысканных конструкций современных ЯП и методов из модных фреймворков.
>>2006155 Т.е. по твоему лучше наебенить стекломоя в рыгаловке по оверпрайсу чем попердолить фреймворк или либу? Кек конечно, ладно бы дельный какой-то досуг предложил, пидорахен.
>>2006560 Лучше под мобилки не разрабатывать, как и под банки, хипстеров и т.д.))))) А лучше всего - чем-то увлечься, заняться спортом или, еще лучше, зависнуть со своими бро.
>>2006904 Спорт уже лушче чем ебенить алко в рыгаловке. Но заниматься спортом так чтобы это было приятно, а не тягать гантели в проперженной каморке с пидорахенами, нужны деньги. Я имею ввиду какой-нибудь активный спорт, а не зал и железо.
В 2к21 мобилки это элита айти, если под них не разрабатывать тогда под что? Или ты залетный байтоебушек/борщеебушек?
>>2006992 >И жить в будке на 30к в месяц. Не всегда. По моим наблюдениям "проседают" некоторые 1Сники, некоторые ПХПри. Ну и некоторые (не все) ребята из фронта.
посоны помогите я правильно понимаю что для алерта кастомного мне обязательно надо контроллер вью делать новый, нельзя просто ебануть вьюшку с тексфилдами и тд?
Типа как на пике? просто это ж получается ебанина, ты показал контроллер поверх него еще контроллер и тогда получаетс что туда логиу надо переносить и делегатами ебаться в обратку
>>2011716 Сделай вьюхой, никто тебя не принуждает, а потом добавляй эту вьюху на текущий контроллер, если хочешь. Но логичнее и удобнее хуйнуть отдельный контроллер у которого будет колбеки на твои действия, presentationStyle только правильный поставь и transition анимации сделай, а то всрато будет появление выглядеть если просто на фон затенение положишь.
>>2008921 > Рынок с вилками по зп уровня пхп макак? Ебать ты долбаеб, братишка. Видимо, у вас там все в рашке совсем хуево, сайты жрут уже. Ну, вообще, да, у нас тут в байтоебинге все очень хуево, печенек нет, смузей не дают, не надо вам сюда. > Отсутствие возможностей роста дальше синьйора в 90% компаний? Отсутствие возможностей роста дальше синьйора в 90% компаний, как и для любого другого специалиста в какой-то специализации (а куда вас, блять, всех расти-то?!?!?!??!?!?!? чтобы бы, блять, как на пикриле?!?!?!?!??!!?).
>>2018461 >Ну, вообще, да, у нас тут в байтоебинге все очень хуево, печенек нет, смузей не дают, не надо вам сюда Хех, самое смешное — ты почему-то считаешь всех остальных долбоёбами, в упор игнорируя тот факт, что по соотношению усилия/выхлоп байтойобство — самая сосущая отрасль в текущем ойти.
>Отсутствие возможностей роста дальше синьйора в 90% компаний, как и для любого другого специалиста в какой-то специализации Пиздец манямир. Если ты видишь это так — ты просто аутист с туннельным зрением, лол.
>а куда вас, блять, всех расти-то А зачем мне все? Ох уж это воспитание советской образовательной системы, чисто выдрессировали очередную собачку.
>>2023053 > по соотношению усилия/выхлоп байтойобство Двачер, ты вообще когда-то думал, что не всем нравится ui\ux\формы\"ууу-смюююз-энимэйшин! амазинг!"-ы клепать, а? А? а? а? А? А, да, у двачера ж гонка пятилетки не понятно с кем и за что - сидят, часами думают и считают ВЫХЛАП.
А если ты уж за выхлопы заговорил, то выхлопнее всего уж тогда такая стратегия: похуй куда в программизме идти, но поскорее бы съебать в менеджмент (насчет этого ниже читай). Или вообще не в ойти))) Можешь свой дупель продать, косаря два (если не больше) зелени рубанешь за ночь)))
Вообще, как ты выразился, "текущее ойти" тут, в быдлосовке - это какой-то примитивнейший крудопиздец, подаваемый под соусом невероятных свершений.
> Пиздец манямир. Если ты видишь это так — ты просто аутист с туннельным зрением Кем ты себя видишь после синиора? В менеджменте? Ну ок, видь себя дальше. Я туда не особо рвусь - смотри выше че тебе написал. И я такой не один, кстати: многие не хотят туда, ибо нахуй оно им в рот не ебалось. А, я, кажется, понял: ты очередной мамкин всрат апер и собрался пилить очередное "инновационное" приложение ШОБЫ В СТОР ВЫЛОЖИТЬ. Ну че там, как, Клабхаус уже ж взлетел, да? А, ну и пизданулся, да.
> туннельным Хуельным: мой хуель уже пристраивается к твоему дупелю, красавчик)))
> лол Посмотрел уже говниме?
> А зачем мне все? Ох уж это воспитание советской образовательной системы, чисто выдрессировали очередную собачку. Я не про всех, а про то, что ты не нужен никем. Кроме как старший разработчик, да. Для чего еще один менеджер в виде тебя? Кого ты, блять, менеджить собрался? Сиди, бля, гоняй пиструн и радуйся жизни. Тем более, куда тебе, в менеджмент - ты ж двачер.
>>2023053 А воооооооообще, я думаю, што тебя выебал в анал представитель моих байтайобов и ты теперь нас просто не любишь))))))))))))))))))))))))))))))))))))))))))))))))
>>2023691 >Двачер, ты вообще когда-то думал, что не всем нравится ui\ux\формы\"ууу-смюююз-энимэйшин! амазинг!"-ы клепать, а? Да похуй что кому нравится, мань. На дистанции хотя бы 3-5 лет тебе остоебенит любая деятельность — любая коммерция это про то, чтобы ставить навык на поток и выдрачивать его каждый день по 8 часов.
Если нравится ебать байты — лучше заниматься этим в свободное время, просто потому что даже клепая сайтики можно заработать куда больше за то же количество времени. В конце концов, любой вид деятельности тебя затрахает в край, и единственное что будет отличать от обезьянок в соседней области — уровень жизни, на который ты себе навеслаешь, и если ты этого не понимаешь — ты ебаный инфантильный ребёнок. Хотя учитывая как ты наяриваешь на лычку СИНЬЙОР-ПАМИДОР — ты, в лучшем случае, пару месяцев как до мидла апнулся наверно.
>А если ты уж за выхлопы заговорил, то выхлопнее всего уж тогда такая стратегия: похуй куда в программизме идти, но поскорее бы съебать в менеджмент (насчет этого ниже читай). Кроме менеджмента (которого кучи видов — от дорожки тимлид->сто до дорожки продакт->сео) есть ещё околотехническая и консалтинговая работа (архитекторы и ко), есть варианты не работать на дядю (если не нравятся стартапы — можно хоть обучением заниматься).
>Или вообще не в ойти))) Можешь свой дупель продать, косаря два (если не больше) зелени рубанешь за ночь))) Ебать ребёнка бомбит. К сожалению, я уже старый и не таскаю с собой паки боевых картинок, а так хочется ёбнуть.
>Вообще, как ты выразился, "текущее ойти" тут, в быдлосовке - это какой-то примитивнейший крудопиздец, подаваемый под соусом невероятных свершений. И чем же оно отличается вне "быдлосовка" в техническом плане? Ну в европах вместо 1с какой нибудь абап, а в америках кобол кекус. Всё, отличия закончены. Только платят больше, но если говорить про то, что будет оставаться на руках — внезапно быдлосовок окажется выгоднее европы.
>>2023691 >И я такой не один, кстати: многие не хотят туда, ибо нахуй оно им в рот не ебалось. Я где-то год-полтора назад собеседовал чела под 40 лет, у которого 15+ лет опыта. И он был готов работать за ~180к (с таким опытом, даже 5 раз сменив стек можно не напрягаясь найти 300к, а если поднапрячься — и 400к можно найти) — главное условие "чтобы никого не ревьюить, не решать как и что по архитектуре и никого не манагерить (даже двух джунов) — хочу просто писать код и ни за что не отвечать". В итоге взяли чела с 3,5 годами опыта на 250, потому что у негопо жизни приоритет явно не >Сиди, бля, гоняй пиструн и радуйся жизни. как у типичной жертвы советской системы образования вроде тебя.
>А, я, кажется, понял: ты очередной мамкин всрат апер Пчел, если удачно >В СТОР ВЫЛОЖИТЬ >очередное "инновационное" приложение можно потом всю жизнь не работать, а заниматься тем, чем нравится.
>Ну че там, как, Клабхаус уже ж взлетел, да? А, ну и пизданулся, да. Ну давай посмотрим как же он пизданулся https://techcrunch.com/2021/04/19/clubhouse/ >Buzzy “social audio” app Clubhouse has raised a Series C funding round, reportedly valuing the company at $4 billion. Пизданулся так, что его фаундеры даже продав его сейчас уже обеспечили себя на всю жизнь.
>>2024091 >Если нравится ебать байты — лучше заниматься этим в свободное время Так я и ебу их, сука, в свободное время! И деньги, заработанные в ойти да напиздел я, я не байтоеб, я бля такой же как и вы айос-погроммист же трачу на свое такое увлечение железки и ахуевшие инструменты, КИП аппаратура. Но приходят такие как ты пердуны и заебывают «УУУУ, А ЧИВО ТЫ НИ ЖЕНИШСЯ? А ПАЧИМУ У ТИБЯ НЕТУ ДИТЕЙ? ТИБЕ ЖЕ УЖЕ 25 ЛЕТ!», «УУУУ, ПАЧИМУ ТЫ ТРАТЕШ НА СВОЕ КАКОЕ-ТО НЕТ БЫ МОШЫНУ СЕБЕ КУПИЛ!» и всякую такую хуету.
Ладно, я не хочу с тобой сраться, мужик. Скорее всего, мы очень с тобой разные люди и каждый из нас останется при своем мнении.
>>2024114 >как у типичной жертвы советской системы образования вроде тебя. Очень сильно ошибаешься. Я антисоветчик. Еще и, как у нас тут ватные говорят, «Бандера».
И сидеть пиструн гонять я не хочу. Я хочу карьерно расти, но в том, че нравится.
>>2024091 >есть ещё околотехническая и консалтинговая работа (архитекторы и ко), есть варианты не работать на дядю (если не нравятся стартапы — можно хоть обучением заниматься).
Понимаю, что я уже наговорил достаточно херовых и душных вещей чтобы послать меня нахер, и таки пойму если пошлешь. Но с радостью бы послушал как можно так зарабатывать себе на хлеб, не горбатясь все время на кого-то. В моей ситуации (с таким моим увлечением) это было бы очень кстати… :(