Программирование

Ответить в тред Ответить в тред
Check this out!
iOS, macOS, watchOS and tvOS Developer thread нерабочий Аноним 30/04/21 Птн 15:46:35 20139581
mamka.png 164Кб, 1000x526
1000x526
senior.jpg 18Кб, 300x158
300x158
ИТТ продолжаем разрабатывать под самую хуёвую платформу, угощать пряниками токсичных и выяснять как с нуля вкатиться на мидл вакансию.

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

>С чего вкатываться?
Со swift book - книжка валяется в интернете.

Стоит упомянуть про складчину иос господ - телега.ми/iOSBooks - валяется огромное количество книжек, хоть обмазывайся.
Есть еще одна, из какого местного чатика https://drive.google.com/drive/folders/0B25xie8pit__amNPc1N6OXVFaEU - но там больше старых валяется. Единственный плюс так это обжс.

>Не люблю читать книжки я долбаеб

https://www.youtube.com/playlist?list=PL9lXw_XXeiWQGrY5dl0IjFI7tOw_nfI91 - лучшее что есть в тырнете.

По видяшкам так же рекомендую:
https://coursehunters.net/course/ios-12-i-swift-4-2-dlya-nachinayushchih-200-prakticheskih-tutorialov

https://coursehunters.net/course/ios-12-i-swift-4-ot-novichka-do-professionala - перед стенфордскими курсами можно глянуть. Тоже найс.

После окончания вышеописанного заебись будет построить свое приложение. Например очередное Weather или же ImageGallery или что-нибудь свое.

https://marcosantadev.com/coredata_crud_concurrency_swift_1/ - хорошая серия статей по работе с CoreData

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

https://habr.com/ru/post/320152/
https://habr.com/ru/post/335756/

Полезные ресурсы:
https://www.raywenderlich.com/
https://www.appcoda.com/
https://www.bignerdranch.com/books/ios-programming/

Видео для ленивых:
https://www.udacity.com/courses/ios
https://www.youtube.com/user/AlexSkutarenko
https://developer.apple.com/videos/

Перевод документации базовой
https://swiftbook.ru/content/

Материал на английском:
Очень подробно все рассказывает и расписывает
https://rutracker.org/forum/viewtopic.php?t=5445071

Devslopes. Начинал с них, рисуют приложения при тебе, особо не углубляются в детали, но как пример можно посмотреть. Сам к ним вернусь, как побольше поучу.
https://coursehunters.net/course/udemy-ios11-swift4

прошлый https://2ch.hk/pr/res/1868577.html
Аноним 30/04/21 Птн 16:15:15 20139972
Ахуеть высер вместо шапки :(
Аноним 01/05/21 Суб 00:52:25 20145873
Ты лучше, скотина, скажи мне , где взять инфу по разработке под Mac OS с помощью Cocoa, AppKit?
Под IOS материала жопой жуй. Почти дописал под Мак task manager. Писал для себя, так как не нашёл подходящего. Ну может если только - things.
Аноним 01/05/21 Суб 11:30:22 20148174
>>2014587
Стартовый пинок можно получить в книге Cocoa Programming for Mac OS X, остальное в доках и на SO. Но нахуя тебе в 2к21 AppKit я вообще не понимаю? Я писал для себя пару утилит несколько лет назад, еще до sui, ощущение каловые, хоть и во многом похоже на UIKit, сейчас есть SwiftUI, есть каталист, в конце концов даже электрон заюзать удобнее.
Аноним 01/05/21 Суб 11:50:32 20148495
все там нормально, только координаты перевернутые и таблицы, коллекции доисторические, чуток контроллеры отличаются, остальное один в один как на иоси,доков хватит
Аноним 01/05/21 Суб 11:51:41 20148516
самое крутое что там можноделать многоокон, это просто дико удобно
Аноним 01/05/21 Суб 16:51:22 20151607
Привет
У вас до сих пор все также хуево для джунов? Меня заебало быть фронт макакой, но полгода назад тут писали, что вкатиться почти нереально
Аноним 01/05/21 Суб 17:06:08 20151858
>>2015160
Да для мидлов тоже довольно хуёво. Нередко когда и синьоры после Сбера потом ничего не могут найти.
Аноним 01/05/21 Суб 17:19:56 20152059
>>2015185
Ага-ага
То-то мой знакомый мидл помидор получает премии по 700к там и зовут постоянно в другие компании
Аноним 01/05/21 Суб 18:13:21 201533510
Аноним 01/05/21 Суб 19:06:56 201546211
>>2015335
Ну, про премии я не пиздабол
Ты действительно не слыхал о конских премиях в Сбере? У меня бывший сосед там работает каким-то говноинженером в отделе, где они занимаются настройкой и тестированием терминалов, так у него премии 300к. Хотя пиздец, там тип бухвает, долбит и лютый распиздяй
Аноним 01/05/21 Суб 22:49:43 201582512
>>2015160
Мне с 2 годами опыта перекатиться сложно, что тут про джунов говорить. Наоборот во фронт посматриваю, тем более что занимался им какое-то время на jQuery и ангуляре
Аноним 02/05/21 Вск 06:33:07 201601613
>>2015825
Ты из iOS во фронт перекат делать хочешь? Или другой стек?
Аноним 02/05/21 Вск 15:02:39 201636314
>>2014817
> сейчас есть SwiftUI
Сырой как говно из жепы, последний раз пробовал — у меня хэловорд с навигейшенлинком внутри лэйзистека просто тупо сегфолтился на маке, нормальная работая на айоси — и я бы советовал отложить его ещё на годик а лучше два-три, лол.

>есть каталист
Сырая параша, из которой аппы вылезают хуже чем кросплатформенная залупа на Qt.

>в конце концов даже электрон заюзать удобнее
Если хочешь сделать хуяк-хуяк — конечно, да. Если хочешь сделать красиво — нет.

другой анон
Аноним 02/05/21 Вск 15:18:38 201637815
>>2015335
Оба пиздят.

Факты:
— В сбере есть премии (аналогично яндексу — зп выше 200-250 там нет, но у помидоров медиана где-то ~300к на руки). Но — это непредсказуемая хуйня, если копаешь говно в СБОЛе лопатой — то скорее всего будешь получать регулярно, если окажешься на каком-то другом проекте — будешь получать её по щучьему велению (а ещё твой проект могут закрыть нахуй одним днём как с беспилотниками недавно было).
Алсо, поговаривают что в сбере нереально получить промоушен — легче съебать и через годик вернуться если соскучился по большому зеленому хую;

— Если чел работал в сбере больше 2-3 лет — его опыт можно делить на количество этих лет, т.к. он скорее всего попукивал и гонял кофея всё это время — такая ориентировка ходит у рекрутеров последние полгода-год, поэтому не надо удивляться, когда какой-то челик из сбера не может найти работу (т.к. все как один хотят зп выше рынка помидоров, имея хард скиллы уровня мидла и аутдефтед стек);

— Если у тебя есть хотя бы 2-3 года опыта — тебя действительно будут регулярно звать, но есть одно но — звать хрюши на собесы. Как количество этих предложений пройти собес будут конвертироваться в реальные офферы — зависит от тебя.

Всё как в любом другом стеке. По факту, это не в айос сложно вкатиться, это в веб можно вкатиться будучи ебаным отбитком с тремя извилинами, в те же джавы/андроиды вкатываться +- так же по сложности (но рынок пошире), а в плюсы/графику/прочее байтойобство — сложнее.
Аноним 02/05/21 Вск 15:19:50 201638116
>>2016378
>аутдефтед
аутдейтед
Аноним 02/05/21 Вск 15:22:03 201638317
>>2016378
Скажу джависту, что он пиздабол и купил машину за фантики, а не за премию

Хуй знает, как в 2021 вкатиться в веб, будучи долбаебом, учитывая конкуренцию 1000 за место
Аноним 02/05/21 Вск 15:53:03 201640618
>>2016383
Он имел ввиду скоре всего фронтенд веб, а не бекенд. Но все же за счет, того что нужен девай и мак(не всякий вкатун хакинтош еще осилит) на иос меньше конкуренции среди вкатывальщиков.
Аноним 02/05/21 Вск 17:54:39 201660519
>>2016383
>Скажу джависту, что он пиздабол и купил машину за фантики, а не за премию
Ну почему он пиздабол-то? Он на машину за 700к просто откладывал премии полгода флекся на и без того нормальную зп, это ты какую-то хуйню высрал. Хотя мб он тебе рассказал про 13-ю зп, а ты, пиздоух, решил что он миллиардер?

>Хуй знает, как в 2021 вкатиться в веб, будучи долбаебом, учитывая конкуренцию 1000 за место
Ну это конечно кек уровня треда "мы вам перезвоним". Туда берут вообще всех — если ты хотя бы 2 слова можешь связать в предложение — ты уже изи найдёшь работу. Без рофлов, недавно ездил в офис на синк, там фронты в столовке бомбили в стиле "бля ну не знаю я чем let от var атличаетца нахуй ани эта на сабесах спрашивают(99" — и это были, блядь, челы с 2-3+ годами опыта.
Я вообще хз какая там нахуй может быть конкуренция, если ты не можешь в 2к21 устроится фронтом — ты, нахуй, обезьяна, пиздуй фуры разгружать.

>>2016406
>а не бекенд
Ну, тащемта нихуя, какой нибудь ноджс/питоно-джанго/пхп-лараваль/итд макакой устроится тоже проще простого, хотя и чуть сложнее, чем фронтом потому что надо в соснольку уметь печатать)0.

>на иос меньше конкуренции среди вкатывальщиков
Ровно как и вакансий. Тащемта, не надо выдумывать, среди вкатышей нет никакой конкуренции, и быть не может — они просто никому нахуй не нужны, лол. По факту, пройдёт вкатыш или нет зависит от одного фактора — удачи (будет ли компании интересно инвестировать на несколько лет вперёд и понравится ли он собеседующим).
Аноним 02/05/21 Вск 20:50:44 201682620
>>2016605
>надо в соснольку уметь
Открою секрет во фронте это надо тоже уметь, плюс у них там ебля с пакетами и зависимостями, 2 года и половина проекта деприкейтед. Ну и постоянно меняющиеся подходы к разработке, хотя в последнее время вроде все устаканилось Так что с фронтом есть свои особенности, хотя с другой стороны выучить вёрстку и вью вполне себе можно, я работаю с банком, но между делом изучил вью за пару дней, когда фронт макака заболела короной
Аноним 02/05/21 Вск 20:54:32 201683721
>>2016826
>банком
С бэком (телефон исправил)
Аноним 03/05/21 Пнд 02:06:33 201710222
16140925277101.jpg 127Кб, 971x1280
971x1280
>>2016826
>Открою секрет во фронте это надо тоже уметь, плюс у них там ебля с пакетами и зависимостями
>npm update
Аноним 04/05/21 Втр 14:19:16 201893423
Подскажите можно ли напрямую организовать коммуникацию между часами и маком или надо городить костыль в виде промежуточного приложения для ios. Есть небольшая самописная утилитка для мака, некоторые действия в которой хотел бы делать через часы. Если устройства в одной локал очке то я смогу найти приложением на часах мак через bonjour и подключиться к сокету? Или надо все это делать в приложении компаньоне на айфоне, а часы будут коммуницировать с афоней?
Аноним 04/05/21 Втр 14:34:29 201895824
>>2018934
Хуй знает брат, тут тоби врятли ли подскажут если даже я не знаю. Спроси на форуме девелоперов а не на этой помойке
Аноним 04/05/21 Втр 22:11:20 201954525
.jpg 108Кб, 640x640
640x640
Аноним 06/05/21 Чтв 18:24:41 202190826
>>2016363
>Если хочешь сделать хуяк-хуяк — конечно, да. Если хочешь сделать красиво — нет.
Notion, VS Code, Atom
Аноним 06/05/21 Чтв 20:08:02 202209327
>>2021908
>Notion
>Atom
Я хз как, но оказалось что из текстовых редакторов (очень требовательнын к мощностям программы по определению же) можно сделать такие лагающие уёбища.
Под "красиво" я имел ввиду не только вменяемый рендеринг. Без спору, электрон в плане, например, рендеренга шрифтов — явно не уёбище уровня Qt, но когда заходит разговор о перформансе...
Алсо, попробуй на этом говне своять, например, жесты как в Bear. Ой, ты обосрёшься же.

>VS Code
Ну только вот это более менее, но учитывая сколько туда въебали бабла — можно было под каждую платформу нативный запилить.
Аноним 06/05/21 Чтв 20:08:37 202209428
3d2.jpg 44Кб, 317x699
317x699
Аноним 07/05/21 Птн 02:09:22 202242729
>>2022094
Ооо, еще один сракоязополер двачи защищает, литр скользуньи писюнной тебе в сраку, вафлокрыл.
Аноним 07/05/21 Птн 15:35:10 202304130
>>2022427
>ТА НИ БАМБИТ У МИНЯ!1
Аноним 08/05/21 Суб 01:48:16 202367131
Аноним 20/05/21 Чтв 14:18:48 203655232
Есть в треде девелоперы которые уже в коммерческую разработку окунулись?

Ситуация такая. На горизонте появился заказчик с предложением по разработке мобильного приложения, соответственно под обе платформы. Конкретно у меня нет средств для разработки под iOS, но хотелось бы понять в какие примерно затраты встанет если обращаться к внешнему исполнителю.

Бэкенда никакого нет, приложение самостоятельное. Структурно состоит из одного списка и трех экранов содержащих детальную информацию по каждому элементу списка. Модель данных в БД - три сущности.

Я понимаю что описание крайне скудное, но в какие суммы могла бы встать разработка вместе с выдачей в сторе? Уже и сам не рад что ввязался в это все, слишком это все геморойно выглядит уже на ранних этапах. Может все таки от финальных сумм заказчик сам и отвалится
Аноним 20/05/21 Чтв 15:23:08 203660933
>>2036552
В среднем небольшое приложение обходится в лимон, да сейчас в меня полетят комья говна от местных шизиков, но по опыту меньше никак не выйдет. Магазин уже встанет в пятёру
Аноним 20/05/21 Чтв 15:42:27 203663534
>>2036609
>да сейчас в меня полетят комья говна от местных шизиков
Разве что потому что занизил. У помидора зп в месяц 200-300к.
Аноним 20/05/21 Чтв 15:46:55 203664635
>>2036609
Комья говна не полетят, все так и выходит, а с учетом доделок/переделок может выйти дороже. Сам третий раз дизайн переделываю на приложение которое рассчитано было за 3-4 месяца сделать, но не до конца продумано.
Аноним 20/05/21 Чтв 16:45:15 203672936
Аноним 20/05/21 Чтв 22:13:30 203706237
Ребят как сделать что бы при сильном нажатии (макбук) на слово (словарь) оно произносилось это вообще возможно ? Или скомбинировать как то что бы произношение текста врубалось при сильном нажатии то же, а то словарь вылазит а для произношения приходится контекстное меню прожимать
Аноним 21/05/21 Птн 08:39:06 203719338
>>2037062
Можно по идее, есть специальный гестур рекогнайзер для детекта лонг тапа, на счёт произношения хз, никогда такого не делал, но может сирикит умеет говорить
Аноним 21/05/21 Птн 09:28:46 203720539
>>2037062
Смотри AppKit:NSSpeechSynthesizer, потом NSEvent, NSGestureRecognizer, Только не уверен что такую проприетарную парашу как аплочасы можно в обход зашитого софта в сокет включить
ору с зумеро треда блядь, создал и нихуя не знает
Аноним 21/05/21 Птн 09:51:47 203721440
>>2036609
лимон рублей?
ахуеть, а я вот знакомому за 500$ делал аппку с 10 экранами, кажись меня где-то наебали...
Аноним 23/05/21 Вск 00:28:56 203926841
Приложение для мака работало нормально, но внезапно перестало работать. Оно не подписано. Просто скопировал его из product. В чем причина? Сделал ребут на бигсюр, там оно работает.

Опять забилдил в xcode - работает. Опять перетащил из папки - работает. Я не хочу тратить 100 баксов. Это все из-за сертификатов?
23/05/21 Вск 01:01:44 203929442
>>2039268
А нет, судя по всему и в xcode нe запускается.
У меня есть подозрение что я не закрыл апу на ночь и wifi был отключет, а она продолжала делать запросы и это как-то повлияло. Это не предусмотрено было. И все эти запросы вставали в очередь. Щито делать?
23/05/21 Вск 01:09:40 203929743
Аноним 23/05/21 Вск 12:44:05 203958744
Лень гуглить, читать пиздабольские дискуссии, где оторванные от мира пытаются спорить.
Поэтому, спрошу:
1) Стоит ли задрачивать ваш этот свифт. Разобью на подпункты:
а) Каково состояние платформы?
б) Какие перспективы у ЯП? На нем пилят хоть что-то кроме ссаных кнопочек на телефоны? Как к нему относятся в сообществе в целом?
с) Тяжело ли искать работы при перекате из других областей программирования?
г) Какие зарплаты у мидла? Сколько до мидла расти? Поясню: если ты не глупый и работал не на аутсорс галерах, то в том же вебе можно выйти на мидла через полтора-два года спокойно на своем стеке.
ж) Какие перспективы с перекатом и вообще какие компании любят свифтеров? Галеры/продукты, банки например?
Аноним 23/05/21 Вск 12:45:01 203958845
>>2039587
>с перекатом заграницу
Аноним 23/05/21 Вск 12:52:12 203959646
>>203958 уёбывай, тебе тут не рады
Аноним 23/05/21 Вск 13:08:01 203960847
>>2039596
Даже с разметкой не мог не проебаться. Вайтишник?
Аноним 23/05/21 Вск 14:40:50 203972748
Аноним 24/05/21 Пнд 10:55:56 204065749
Аноним 25/05/21 Втр 02:38:42 204197850
>>2037214
ахуеть, $500 за 10 экранов - "наебали"?!?!?!? ДА МНЕ ТУПО ОТСОСАЛИ ЗА 15 ЭКРАНОВ ЕБНУТЫХ В СВОЕ ВНЕРАБОЧЕЕ ВРЕМЯ И ВСЕЕЕЕЕ! БЛЯТЬ, ВСЕЕЕ! ДАЖЕ ССАНУЮ ШОКОЛАДКУ НЕ КУПИЛИ!
Аноним 25/05/21 Втр 12:44:33 204229451
Анон у меня есть енам с кейсом ошибок, вот кусок допустим

public enum CustomError: Error {
case networkServerError(String)
}

получаю с сервера там саксесс, но с ошибкой

допустим

completion(.failure(.networkServerError(serverError.errorDescription))

И допустим дошло время до обработки

case .failure(let error):
как мне теперь вытащить именно стринг из этого енама чтобы когда запихиваю в строку не было "networkServerError:huypizda)
Аноним 25/05/21 Втр 13:49:01 204235452
Аноним 26/05/21 Срд 11:45:52 204346153
>>2042294
Ты, пиздоглаз, прошлый тред чем смотрел? Продублирую:
case .failure(let error):
__if let customError = error as? CustomError {
____switch customError {
____case .networkServerError(let huita):
______print(huita)
____}
__}
Аноним 26/05/21 Срд 11:54:56 204346954
>>2043461
>>2042354
все вижу, старый тред найти не мог простите что дублировал
Аноним 26/05/21 Срд 11:55:13 204347055
>>2043461
не обоссут за такой код?
Аноним 26/05/21 Срд 12:27:51 204350056
>>2043470
А должны?
Разве что если будешь везде ctrl-c ctrl-v делать с таким. На такой случай, если везде из разных ошибок хочешь получать строчки — реализуй для типа ошибки CustomStringConvertible и засунь это в description, и форматируй там всё красиво.
Аноним 26/05/21 Срд 13:47:08 204358657
Бамп
Аноним 26/05/21 Срд 16:31:15 204381958
>>2043500
>сли будешь везде ctrl-c ctrl-v делать с таким
ну вот примерно и думал

сейчас задумался что техдолг просто пиздец и спагетти код начался
Аноним 26/05/21 Срд 16:52:04 204386459
Анон вот я допустим парсю ответ

public struct ResultTypeDTO: Codable {

var result: String
var type: String

}


type у меня приходит типа one two three

Так вот, как я могу в этой структуре после парса, что когда дергаю дто, мне отдавало не one two three а другую стрингу допусим nickName firstName secondName

как мне правильно мапить?

я немного не разобрался с этой темой, с codingkey в ту сторону разобрался с а с этим в обратку нет.

Я хочу чтобы дто, когда парсило и видило одно значение, отдавало уже в класс другое.

Заранее спасибо за ответ.
Аноним 26/05/21 Срд 17:24:50 204391460
>>2043864
пишешь компьютед проперти для ResultTypeDTO
var workResult: String {
result + "Suffix"
}
и уже вызываешь из класса его
let z = result.workResult
если я правильно понял
Аноним 26/05/21 Срд 17:26:26 204391861
>>2043914
let z = response.workResult // response: ResultTypeDTO
Аноним 26/05/21 Срд 17:55:44 204398762
>>2043864
в codingkeys ключи можно прописать для переменной
Аноним 26/05/21 Срд 20:28:33 204423163
>>2043864
Всё зависит от размера проекта конечно, но ради именно такого кейса я бы вообще посоветовал не заводить новые типы — у тебя это всё в один момент просто в пиздец какую помойку превратится. Просто ебани это говно JSONSerialization-ом в словарик и вытащи свои значения.

>Я хочу чтобы дто, когда парсило и видило одно значение, отдавало уже в класс другое.
А вот тут уже понял что нихуя не понял. Чего именно ты пытаешься добиться? Что-то мне кажется, что ты не в курсе, что можно генерируемый инициализатор написать руками.
Аноним 26/05/21 Срд 23:31:36 204441564
>>2044231
с бека приходят стрингой значение 1 2 3, я хочу когда дергаю дто получать уже свои стринги

но вообще не в курсе походу да, что мне читать?
Аноним 26/05/21 Срд 23:33:38 204441665
>>2044415
типа "type":"1"
приходит

а я хочу когда буду парсить в дто и дергать затем дто чтобы вместо "1" бралось "svoyStringOne"

просто я не хочу потом в классе делать ебанное проверки иф тайп == "1" {
huy = " svoyStringOne" а не "1"
}
Аноним 26/05/21 Срд 23:38:05 204441866
>>2044416
лишь потому что на беке мудаки сидят такое приходится делать
Аноним 27/05/21 Чтв 01:09:27 204448167
>>2044416
напиши required init from decoder
внутри делай что-то типа
let value = container.decode(String.self, .key)
type = value == "1" ? "one" : value == "2" ? "two" : value == "3" ? ...
еще есть конструкция в свифте которая цифру превращает сразу в слово но я не помню погугли
Аноним 27/05/21 Чтв 11:26:37 204474668
>>2044415
>а я хочу когда буду парсить в дто и дергать затем дто чтобы вместо "1" бралось "svoyStringOne"
Тут нужно уточнение — что именно тебе нужно?

Если нужно описать цифры словами, то
https://developer.apple.com/documentation/foundation/numberformatter
и
https://developer.apple.com/documentation/foundation/numberformatter/style
с
>.spellOut

Если ты хочешь просто иметь типизированное значение — то можешь просто ёбнуть енам с такими RawValue и всё, т.е.:
enum Huita: String, Codable {
case first = "1"
case second = "2"
}

public struct ResultTypeDTO: Codable {
var result: String
var type: Huita
}


>но вообще не в курсе походу да, что мне читать?
https://developer.apple.com/documentation/foundation/archives_and_serialization/encoding_and_decoding_custom_types
До
>Encode and Decode Manually
доскролль и читай.
Аноним 29/05/21 Суб 20:13:24 204839069
Screenshot 2021[...].png 177Кб, 1352x917
1352x917
Screenshot 2021[...].png 70Кб, 1325x715
1325x715
Можно ли как-то через UIViewRepresentable задавать высоту и вообще аналог intrinsicContentSize у вью?

Т.е. чтобы когда я в preview задавал PreviewLayout.sizeThatFits у меня превью схлопывалось по размеру контента, а не на хуй пойми какие размеры. Есть идея конечно обернуть обертку над UIKit еще в один вью и передавать ему наверх размеры, которые вью верхнего уровня будет ставить через модификатор .frame обертке, но выглядит как костылек и не факт что сработает.
Аноним 30/05/21 Вск 23:12:51 205000170
Аноним 01/06/21 Втр 16:55:05 205204271
>>2044746
>>2044481



Я короче вот чо хотел не городить (названия образные взял, суть понятна думаю)

то есть в мой дто там приходил стринг инт и я хотел чтоб дто уже само переделало в нейм сарнейм и прочее. образно чтобы я потом в кейсе не дергал лишние такие комбинации
case .success(let params):

if params.userField == "0" {
self?.currentField = "name"
} else if params.userField == "1" {
self?. currentField = "surname"
} else if params.userField == "2" {
self?. currentField = "middlename"
}
Аноним 01/06/21 Втр 17:13:24 205207572
>>2052042
enum UserField: String, Decodable {
case name = "0"
case surname = "1"
...
var fieldName: String {
switch self {
case .name:
return "name"
case .surname:
return "surname"
...
}
}
Аноним 02/06/21 Срд 00:16:00 205271273
>>2039587
чето 0 нормальных ответов, пиздец
02/06/21 Срд 06:03:25 205278574
>>2052712
Походу одни вкатыши здесь сидят.
Аноним 02/06/21 Срд 11:04:40 205289375
>>2052712
Какие вопросы такие ответы

>>2052785
Вкатыши вкатышам рознь, какой он ответ ожидал от А СТОИТ ЛИ УЧИТЬ ЯЗЫК ВАШ ГЫЫ?)))
Аноним 02/06/21 Срд 11:16:06 205290176
>>2052075

Хм, но если я дто туда сюда перегоняю то получается лучше так не ебаться, ибо кодабл версию надо будет и все такие вещи лучше в во вьюхе делать

Спасибо!
Аноним 02/06/21 Срд 11:50:41 205294077
>>2052901
Для вью/вью контроллера луше делать свою ViewModel (не та, которая в MVVM), описывающую данные, отображаемые этой вьюхой и написать один раз extension на DTO, который преобразует твою DTO в нужную ViewModel, как бы не возникало желание вьюху сразу моделью конфигурировать.

Но вообще если на бэке у тебя цифры обозначают некое перечисление то логично и преобразовать эту цифру в перечисление в процессе парсинга. Чтобы эта логика делалась в одном месте, а не в N местах преобразования DTO во ViewModel.

Т.е. если брать пример этого господина >>2052075
то в DTO у тебя будет var userField: UserField вместо var userField: Int

А fieldName: String будет вообще во ViewModel
Аноним 02/06/21 Срд 11:59:05 205295178
>>2052901
Тащемта, ты её можешь где угодно делать и где угодно юзать как тебе удобно, если конечно не пишешь тестовое в какую-то йоба-энтерпрайзную галеру.
Аноним 02/06/21 Срд 12:10:51 205297679
>>2039587
Ну давай высру тебе ответы на твой понос:
1) Как хочешь;
а) Нормальное, блять. Что ты хочешь услышать конкретно?
б)
>Какие перспективы у ЯП?
Никаких, свифт дипрекейтнут через пол года и пойдём всем тредом на мороз.
>На нем пилят хоть что-то кроме ссаных кнопочек на телефоны?
Ну, пилят. Игры там, ёблю с гпу, AR, можешь даже серверсайд ебануть если тебе нечего делать. Алсо, есть упоротые (вроде https://github.com/readdle) которые на нём кроссплатформу пилят (и айос, и андроид, и макос, и шиндовс).
Короче, что хочешь — то и пилишь, о чём вообще вопрос-то блять? Есть ли работа кроме окраски кнопок? Зависит от твоих скиллов, но есть.
c) Зависит от тебя. Если ты сидел хуярил на 1с — наверно сложно, иначе не особо.
г)
>Какие зарплаты у мидла?
У какого мидла-то? В дс разброс от 120 до 200 окладом, у всяких компаний есть ещё опционы/годовые премии/итд — кол-во бабла в месяц на руках зависит от конкретной ситуации.
>Сколько до мидла расти?
Я вот чуть больше чем через пол года веслания проходил собесы на x2 зп, хз через сколько ты прокачаешься. Будешь гонять кофея и работать по 4 часа в день — можешь и два года сидеть, будешь ебашить по 16 часов в день вместе с паралельными проектами для изучения других технологий — ввырастешь за пол года.
>то в том же вебе можно выйти на мидла через полтора-два
Ну если у тебя это заняло столько времени — тут будет примерно то же самое.
ж) Тебе лучше в грузчики податься с такими вопросами, маня. Все, кто пилит софт для iOS хайрят свифтеров, какой у них выбор-то? Ну галеры иногда по рн/флаттеру угорают, но их всё ещё сложно продавать и даже там царствует нативная разработка.
Аноним 02/06/21 Срд 14:53:02 205320780
>>2052940
Спасибо, кажись пора перестать бухать и пинать хуи на работе, спрашивать такие говновопросы (я не про вьюмодел, забил хуй напрямую в mvc ебашу, лень переписывать) на втором году опыта - НУ ТАКОЕ
Аноним 02/06/21 Срд 15:55:14 205335081
>>2053207
mvvm это путь в никуда, лучше продолжай mvc делоть
Аноним 02/06/21 Срд 21:31:04 205401382
Аноним 03/06/21 Чтв 04:42:47 205433483
>>2052893
>>2052976
Пиздец долбоебина чсвшная. Я задал обычные вопросы, никаких вкатов тут еще не собирался устраивать, из обычного интереса.
А этот новый пролетарий двадцать первого столетия со своим плебейским мозгом раскукарекался про грузчиков, ебанутые вопросы. Почему все кодерки такие ебанутые? Ты же сука буквально поломойка, что ты выебываешься сидишь, дерьма кусок.
Аноним 03/06/21 Чтв 11:57:59 205457584
>>2054334
Спок, маня, если ты не можешь зайти на хх и полистать вакансии, чтобы получить развёрнутый ответ на все свои вопросы — то ты долбоёб и заслуженно получил шмат говна за шкирку, у нас тут не сжв помойка.
Аноним 03/06/21 Чтв 12:06:43 205460085
>>2054013
Да не почему, просто у нас есть две ветви упоротых — свидетели MVC и свидетели випера.

По факту, выбранных архитектурный паттерн нужен просто для того, чтобы разные люди в одном проекте придерживались одной структуры проекта и нейминга, грубо говоря это такой кодстайл на уровне файловой структуры и классов.

На всякие характеристики, которые им любят приписывать, вроде тестируемости/перфоранса/удобства по факту не влияют никак (могут только удобство портить, чем ближе к виперу — тем больше бройлерплейта надо высирать), это всё уже зависит от конкретного писаки этого кода и его скилла.

Короче, пробуй разные подходы и выбирай что нравится.
Аноним 03/06/21 Чтв 17:58:06 205531686
>>2054334
По моему это ты с козырей начал заходить
>чето 0 нормальных ответов, пиздец
>Походу одни вкатыши здесь сидят.

С каким отношением спросил, с таким тебе и ответили

мимозоолог
Аноним 03/06/21 Чтв 19:17:24 205546787
Раз в полгода захожу в тред свифтеров, ничего не меняется, 3,5 анона хуесосят друг друга, залетные спрашивают про 300к/нс, а оставшиеся полтора землекопа пытается получить ответ на вопрос с первой страницы гугла.
Хорошо что не знал про этот тред, когда вкатывался.
Аноним 04/06/21 Птн 10:38:10 205598988
>>2054600
Спасибр, первый раз в mvc сижу

Ну меня и mvc устраивает ибо я пилю один сейчас и нет времени ебаться, другое дело что у меня даже вьюмодели нет, прямиком модель в контроллере обрабатываю. Но из-за этого получается каша со временем, контроллеры разрастаются.

>>2055467
А я вот именно с треда и вкатился два года назад, вот теперь видишь результаты.
Аноним 04/06/21 Птн 11:19:00 205603589
>>2055989
>Но из-за этого получается каша со временем, контроллеры разрастаются.
1) Выноси всю логику что возможно в модель (запросы в сеть итд);
2) Дели контроллеры на контейнер и чайлд контроллеры (вместе с вью и моделями). Например, если у тебя на скрине есть 4 секции — ты для каждой можешь сделать свои модели, вьюхи и контроллеры и в контейнере тупо ими управлять.

Вжух-вжух — и у тебя нормальный мвц без жирных контроллеров.
Аноним 04/06/21 Птн 11:19:42 205603690
>>2056035
3) Всё, что можно сделать во вьюхе (анимации, обработка стейта без логики И так далее) — выноси во вьюху.
Аноним 04/06/21 Птн 12:54:22 205619791
>>2056035
>1) Выноси всю логику что возможно в модель (запросы в сеть итд);
Запросы в моделях? У меня сейчас так иммутабельные модели, запросы и подобная лабуда в промежуточных классах (это считается моделью?). Контроллеры слушают эти классы и обновляют вью. Вроде все хорошо даже тестировать можно, только иногда те самые промежуточные классы получются слишком жирными и не всегда получается их нормально разделить на более мелькие. Це норм подход?
Аноним 04/06/21 Птн 14:11:16 205629492
>>2056197
не парься на счёт чёткого разделения по каноничным слоям. В mvc самое главное это связка vc, всё что не относится к этой связки считается 'моделью'
Аноним 04/06/21 Птн 14:16:15 205630093
>>2056036
я с тобой в одном поле срать не сяду
Аноним 04/06/21 Птн 14:22:49 205630594
Бамп
Аноним 04/06/21 Птн 15:34:00 205644395
Анон, я тут короче понял что в проекте влип, сам не могу разгрести, нужен совет, совет скорее с точки зрения логики, а не айоса в целом.


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

Суть такова, у меня есть tableviewprovider
на основе которого строю табличку

Выглядит примерно так

var rows = [CellDescriptor]()

let pizdaRow = CellDescriptor(configuration: {
(cell: MyCustomCell) in
cell.huypizda = "huy"


}, selection: {

mycustomection()
вот тут я буду выделять ячейку, а с других как снимать еслиу. меня три таких дескриптора

})

rows.append(pizdaRow)


ну и далее роу в таблицу отдается и само все строится

Все бы ничего но теперь я задумался, а как мне блять теперь выделять одну ячейку а с лругих деселект делать. не через делегаты ж обратно, в обычной таблице я бы просто по индекс роу проходился а тут теперь хуй знаешькак
Аноним 04/06/21 Птн 16:18:55 205649996
>>2056443


КОРОЧЕ ЗАБЕЙТЕ НА ДАУНА ЕБАННОГО

Я ТУПО ЕБАНУЛ
в конфиг setupCell(isSelected: self.currentCell == "0" ? true : false)
}, selection: { cell in
self?.selectedCell = "0"
self?.tableviewData.reloadData()
})

и он тупо потом проверяет все ячейки и
Аноним 06/06/21 Вск 15:43:17 205919597
>>2013958 (OP)
Бэкендщик, задолбался и устал, хочу поменять стек, вкатиться во фронт или мобилки, рассматриваю ios. Скажите, чо по оборудованию минимально купить(какой комплектации макбук нужен, что свободно мог крутить докеры и прочее, вдруг я не смогу и обратно на бек придется идти), чтобы комфортно работать. Будет мне помощь в выборе. Прошу серьезно ответить, а то чот я совсем депрессую.
Аноним 07/06/21 Пнд 13:44:45 206049898
>>2059195
Бери минимальную пятнашку на интеле, если не хочешь приключений, вот и всё.
Аноним 07/06/21 Пнд 22:15:30 206112299
дебилы у вас тред сдох, че даже прошедший показ мод от Тим Кука не обсудите?
Аноним 07/06/21 Пнд 22:40:00 2061149100
>>2061122
Хуле там обсуждать если показали по вершкам для неайтихолопов? когда будут технические ролики тогда и имеет смысл обсуждать. Не понятно даже как там разработка на айпад будет работать, не икскод же портировали, а какую-то залупу сделали.
Про асинк-авайты и акторы уже давно все знали, кто не в бункере.
Аноним 07/06/21 Пнд 23:48:49 2061215101
и их не доделали еще, так как там какие то конфликты с реализацией трая. Ничего абсолютно нового начиная с 17 года уже не появляется, не считая какого нибудь мл и ар, но вакх на них как небыло так и нет
Аноним 08/06/21 Втр 10:40:20 2061420102
>>2061122
Хз что там обсуждать. Единственное, на обсуждение чего тянет — ЭТО УБЛЮДСКИЕ ТИЗЕРЫ БЛЯДТ НАХУЙ. НУ ПОЧЕМУ НЕЛЬЗЯ ВЗЯТЬ И ВЫЛОЖИТЬ СЕССИИ СРАЗУ, А НЕ ТЯНУТЬ 10 ДНЕЙ, УБЕРИТЕ НАХУЙ МАРКЕТОЛУХОВ ОТ РАЗРАБОТКИ НУ ПОЖАЛУЙСТА!1

Хз, я один такой сумасшедший или нет? Дико бесят тизеры и прочая маркетинговая деятельность, уже блевать готов. На ютубе когда вижу видос с "премьерой" — закидываю в список посмотреть потом и выжидаю несколько дней чтобы не способствовать конверсии за подкормку этим говном.
Аноним 08/06/21 Втр 10:57:56 2061430103
>>2061149
>Не понятно даже как там разработка на айпад будет работать, не икскод же портировали, а какую-то залупу сделали.
В икскод клауде билдить будут.
Никак не будет, это хуйня на побаловаться уровня плейграундов.
Аноним 08/06/21 Втр 10:59:30 2061431104
Кста, с чего кекнул — так это с просмотра диффа изменений апи SwiftUI. 90% приложений его даже не начали адоптить, а там уже кроме пачки новых апи начали дипрекейтить старое, лол.
Аноним 08/06/21 Втр 13:07:59 2061599105
>>2061431
сосатб унтермешни переписывайте свое говно каждые полгода
мимо другой айосник
Аноним 08/06/21 Втр 13:21:29 2061633106
>>2061420
Ну так на нетерпеливых лохах стригут просмотры/пиар.
Не вижу проблемы подождать пока закончиться сессия и посмотреть в 2x, а по анонсам так вообще 15 минутную компиляцию от блоггерной шелупони.

>>2061431
Тебя после свифта это удивляет?
Аноним 08/06/21 Втр 14:09:48 2061690107
>>2061599
Да ладно если бы просто переписать надо было. Так нет же — он же пришит к системе гвоздями, тебе без вариантов надо будет поддерживать 2-3 варианта одного и того же кода, даже если у тебя максимальнозадранный минимальный таргет.

>>2061633
>Тебя после свифта это удивляет?
Свифт даже близко не в таком раковом положении был.

Во-первых — он не был пришит к системе. Запускаешь конвертацию проекта — и в 9 из 10 случаев всё. Если конечно компилятор не начинал сегфолтится на новых фичах. И кучу говна можно не поддерживать.
Во-вторых — поломка апи, это в первую очередь, семантика, а не синтаксическая конструкция. И править такую хуйню сложнее.
Аноним 09/06/21 Срд 10:12:09 2062745108
>>2013958 (OP)
Синьоры помидоры, сколько щас норм зп в деревнных в дс?
И скок у тимлидов? А то постоянно хантят хрюши и я хз сколько просить, сколько не называю -- все говорят, что типа "ок", а значит прошу мало.
Аноним 09/06/21 Срд 11:54:48 2062810109
>>2062745
>Синьоры помидоры, сколько щас норм зп в деревнных в дс?
Если ориентироваться именно на внутренний рынок — от 200 до 300 где-то.
Если ориентироваться на всё варианты (а в рублях иногда платят за работу на буржуя) — то можно и 400к найти.

>И скок у тимлидов?
Как и у синьйоров — может быть разброс в 2 раза, как выторгуешь.

>А то постоянно хантят хрюши и я хз сколько просить, сколько не называю -- все говорят, что типа "ок", а значит прошу мало.
Ну просто проси каждый раз больше, когда начнут прям совсем морщится — тогда ты и нащупал потолок.
Аноним 09/06/21 Срд 14:08:26 2062975110
Аноним 11/06/21 Птн 12:11:44 2065165111
Я так понял тут полумертвый тред, но попробую. Можно ли запаблишить на Testflight без Айфона??? Сука уже 3 дня не могу понять. Одни пишут что можно, но xcode говорит что не может найти девайсы и поэтому не может создать профиль.
Аноним 11/06/21 Птн 22:10:03 2065823112
Аноним 12/06/21 Суб 12:45:19 2066124113
>>2065165
>Я так понял тут полумертвый тред
>Сука уже 3 дня не могу понять
Полумёртвый, судя по всему, только твой мозг.

>Одни пишут что можно, но xcode говорит что не может найти девайсы и поэтому не может создать профиль.
Так ты собрать в тф пытаешься или запустить на девайсе?
Аноним 12/06/21 Суб 18:01:51 2066371114
Здорова, 7 месяцев опыта, 100+ разосланных резюме, 6 компаний отозвалось за неделю, 3 собеса, когда меня позовут грести? Junior to middle, 2 курс, знаю swiftui, но не знаю uikit.
Аноним 12/06/21 Суб 18:54:40 2066420115
Аноны, что думаете насчёт курса «iOS разработчик» от нетологии? Если говно, то что можете порекомендовать?
Аноним 12/06/21 Суб 21:08:53 2066535116
Аноним 12/06/21 Суб 22:41:08 2066607117
>>2066371
> знаю swiftui, но не знаю uikit.
Пару лет еще придется подождать
Аноним 12/06/21 Суб 22:42:55 2066608118
>>2066420
Любые курсы это инфоциганство и объеб на доллары. Если так нужно с видосиков начать есть курс от стенфорда, по конкретным апи базу дают ролики с wwdc
Аноним 13/06/21 Вск 11:41:06 2066841119
>>2066608
То есть по-другому вообще никак? Просто хотелось бы найти хотя бы ментора, потому что самостоятельно какое-то говно получается. Допустим с тем же uikit не особо понятно. Сначала элементы интерфейса, потом жизненный цикл вьюконтроллера, а дальше… а дальше что? В смысле понятно, что надо изучать, но вот как с помощью этого делать приложения не особо понятно. Допустим, я хочу сделать клиент двача. Как прикрутить запросы к апи из приложения? В том же жс это делается легко, а тут не особо понятно
Аноним 13/06/21 Вск 17:47:23 2067126120
>>2066371
>7 месяцев опыта, 100+ разосланных резюме, 6 компаний отозвалось за неделю, 3 собеса, когда меня позовут грести?
7 месяцев опыта на курсах? Ну тогда никогда.

>Junior to middle
Пчел, если ты за несколько собесов везде обосрался — просто прими то, что на джуна-то хуёво тянешь.

>знаю swiftui, но не знаю uikit.
Реально походу жертва курсов. Все треды же толдычут — хочешь работу в ближайшие 2 года — учи, сука, UIKit. И после двух лет ты совсем не зная его тоже никому не будешь нахуй нужен — SwiftUI это же ебучая обёртка над ним в текущем своём состоянии.

>>2066841
Ну ставишь цель и гребёшь до неё.

>В том же жс это делается легко, а тут не особо понятно
Ну лучше в жс вкатится, если не можешь даже загуглить как делать HTTP-запросы. Потом парсишь модель, делаешь дифф какой нибудь хуиткой и применяешь его к вьюхе (если похуй на таргет — NSDiffableDataSource) и данные у тебя в коллекции, можешь взять пирожок и написать в резюме что ты ждун.
Аноним 13/06/21 Вск 17:50:36 2067130121
>>2066608
>Если так нужно с видосиков начать есть курс от стенфорда
Правда новые курсы от стендфорда уже на SwiftUI перевели, им ровно как и инфоциганам интереснее побыстрее прочитать программу, а не ввести тебя в индустрию, так что именно по вёрстке лучше посмотри старые версии.
Аноним 14/06/21 Пнд 09:52:11 2067617122
Аноним 14/06/21 Пнд 16:05:54 2067859123
>>2067126
7 месяцев пилил апку для соцсети приятеля за 25к. Никаких курсов не проходил. Только stack overflow.

Тредов, которые толдычут не читал. Когда начинал, прочитал: вот два инструмента: sui для быстрой разработки и uikit для медленной масштабной.

Курсов не проходил, денег не платил.

На собесах еще не известно обосрался ли. Предупреждали перед собесамии, что резов ждать неделю-две. Ждумс...

Полностью от uikit не отказываюсь, опыта с ним нет. Но граблей с велосипедами на sui пособирал, так что не против чего-то более надежного. Другое дело, учить кит хотел бы уже по ходу работы. В остальных вопросах на мидла тяну, не ошибаюсь.
Аноним 14/06/21 Пнд 17:24:48 2067925124
>>2067859
Лучше бы ты с курсов был лол
Аноним 14/06/21 Пнд 17:55:45 2067952125
>>2067859
>ничего не слышал об UIKit
>немножко поверстал на SwiftUI
Да, пчел, именно на мидла ты и тянешь. Пиздец, что за отсталые вкатыши пошли...

У тебя набор знаний хуже чем у долбоёба с курсов, те хоть краем уха слышали обо всём остальном.
Аноним 15/06/21 Втр 01:18:36 2068569126
>>2067859
> учить кит хотел бы уже по ходу работы. В остальных вопросах на мидла тяну, не ошибаюсь.

Ахахах, съеби из треда клоун.
Аноним 15/06/21 Втр 10:17:19 2068672127
А кто-нибудь может объяснить по фактам чем UIKit лучше SwiftUI? Пока что ничего кроме еботни с constraints и настройкой элементов ui в ебаную кучу строк кода не заметно. В чем преимущество?
Аноним 15/06/21 Втр 10:18:29 2068673128
>>2068672
То есть я пишу и на том, и на другом и вообще не понимаю зачем UIKit.
Аноним 15/06/21 Втр 10:57:48 2068707129
>>2068673
Да не пишешь ты ни на том, ни на другом, иначе бы знал, что как только проект становится сложнее хело ворда, начинается велосипединг оберток над юайкитом. Попробуй диплинки нормальные запилить на ванильном свифтюае или на собес сходить, где тебя попустят джуновским вопросом как айос обрабатывает касания, и выбор между свифтюай и юайкит не стоит, он стоит между юайкит и свифтюай+юайкит
Аноним 15/06/21 Втр 21:33:05 2069557130
>>2068707
Диплининки делаются через onOpenUrl в три строки. Канешн на ките надо знать как обрабатываются касания, когда в юае это делается по onGesture. Как бэ на 80% потребностей любой компании тут хватает. Другое дело пердуны вроде тебя тормозят прогресс ебанутыми критериями оценивания.

А то, что из умирающего кита еще не вынесли на гитхаб в подключаемые решение реализовывается через репрезентебл без выебонов в нормальной архитектуре, а не MVC.
Аноним 15/06/21 Втр 22:13:34 2069623131
Какой же у этого клоуна будет ПОРИЖ, когда его по рантайму обжс на собесе спрашивать начнут лол
Аноним 15/06/21 Втр 22:49:37 2069661132
>>2069623
obj c говно мамонта, нахер ты его жрешь, лучше уж на js писать чем на этой лиспо-подобной санине
Аноним 15/06/21 Втр 23:08:07 2069677133
>>2069557
Клоун ебаный ты пару постами выше ныл, что не понимаешь как запросы к серверу делать из UIKit'a, еще раз повторяю съеби нахуй из треда. Иди хеллоуворды не SwiftUI пиши в одну строку.
Аноним 15/06/21 Втр 23:39:45 2069719134
>>2069677
Слыш, ты копрофил сишный, это уже другой клоун . Сам съеби.
Аноним 16/06/21 Срд 00:51:12 2069759135
>>2069557
>когда в юае это делается по onGesture
Ну давай, расширь область тапа без распидорашивания лэйаута и лишних слоёв, или ещё лучше — попробуй ёбнуть оверлей для всяких тостов и прочей "плавающей над экраном" хуйни. Ой, для этого же надо понимать как тапы работают в юайките.

>Другое дело пердуны вроде тебя тормозят прогресс ебанутыми критериями оценивания.
Какими ебанутыми-то? Свифтуи — хуйня для хэловордов, и то, что для того, чтобы туда завезли хотя бы коллекции потребовался ещё целый год как бы намекает, что даже в эпле его не оценивают сильно выше планочки "для долбоёбов поиграться на айпаде".

Хочешь кастомные кнопочки для свайпов в таблице? Пошёл нахуй.
Хочешь узнать оффсет скролла? Ешь говно с кучей магии, отъёбывающими типами в IDE, лагами и пидорасящимся лэайутом.
Хочешь сделать префетчинг? Жрёшь всё что было в прошлом пункте x2.
Хочешь поскроллить сам? Жрёшь всё что было в прошлом пункте x3.
Хочешь сохранять позицию скролла при частых апдейтах/тоггле клавы? Идёшь нахуй просто.
Хочешь нормальный перформанс на больших объёмах данных (например, банальный чатик) — идёшь нахуй. Мало того что дифф пришит к мэинтреду, так ещё забахать что нибудь в стиле sliding data source вообще нереально — у тебя просто ебаные звёздные войны начнуться на экране.
Хочешь нетривиальный лэйаут на 60 фпс? Ирл хотя бы на 30, лол. Идёшь нахуй и ждёшь новых девайсов, способов оптимизации просто _нет_.
Хочешь апи, который не будут ломать на каждом WWDC, и не хочешь поддерживать по 4 версии одного кода? Ну тогда точно мимо со свифтуи.
Хочешь нормальную навигацию из коробки, а не писать костыли начиная новый проект? Тоже мимо.
Хочешь возможность катить в прод новую кнопку (лол) без вероятности получить 30% крешрейт на следующий же день на половине девайсов, из-за новой анимашки? Пиздуй учить UIKit.

Можно ещё 1000 и 1 такой доёб написать, в SwiftUI же так всё — пытаешься написать что-то кроме хэлловорда — просто идёшь писать на уиките нахуй.
Аноним 16/06/21 Срд 01:07:22 2069771136
>>2069759
Ладно, давай конструктивно.
>Ну давай, расширь область тапа без распидорашивания лэйаута и лишних слоёв, или ещё лучше — попробуй ёбнуть оверлей для всяких тостов и прочей "плавающей над экраном" хуйни. Ой, для этого же надо понимать как тапы работают в юайките.

Расширить область тапа можно добавив слой с почти поной прозрачностью. Есть проблема - есть решение. На фпс не скажется.

>Эпл третий год посвещает юаю целую сессию. И пытаются завлечь на него аудиторию через простоту.

>Хочешь кастомные кнопочки для свайпов в таблице? Пошёл нахуй.
iOS 15+

>Хочешь узнать оффсет скролла?
ScrollViewReader - в т.ч. работает на табличке.

>Хочешь сделать префетчинг? Жрёшь всё что было в прошлом пункте x2.
Префетчинг за тебя делает swiftui в коллекшн вью или таблице или лэйзи стаках

>Хочешь поскроллить сам? Жрёшь всё что было в прошлом пункте x3.
>Хочешь сохранять позицию скролла при частых апдейтах/тоггле клавы? Идёшь нахуй просто.
ScrollViewReader

>Хочешь нормальный перформанс на больших объёмах данных (например, банальный чатик) — идёшь нахуй. Мало того что дифф пришит к мэинтреду, так ещё забахать что нибудь в стиле sliding data source вообще нереально — у тебя просто ебаные звёздные войны начнуться на экране.

По началу было больно, но потом начал пользоваться ASCollectionView. работает как швейцарские часы. Портировано с кита(как однажды будет и все остальное). Кроме того, есть несколько библиотек на диффинг.

> Хочешь нетривиальный лэйаут на 60 фпс? Ирл хотя бы на 30, лол. Идёшь нахуй и ждёшь новых девайсов, способов оптимизации просто _нет_.

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

>Хочешь апи, который не будут ломать на каждом WWDC, и не хочешь поддерживать по 4 версии одного кода? Ну тогда точно мимо со свифтуи.

iOS 15 вроде ничего старого пока не изменили, ток нового добавили.

>Хочешь нормальную навигацию из коробки, а не писать костыли начиная новый проект? Тоже мимо.

import NavigationStack

>Хочешь возможность катить в прод новую кнопку (лол) без вероятности получить 30% крешрейт на следующий же день на половине девайсов, из-за новой анимашки? Пиздуй учить UIKit.
Тесты..тесты...тесты... и прямые руки
Аноним 16/06/21 Срд 08:18:46 2069828137
> Портировано с кита(как однажды будет и все остальное)
Дебилам с магическим мышлением в айти не место
Аноним 16/06/21 Срд 11:01:52 2069911138
>>2069759
Заменить швифтуи на флаттер и ничего не изменится лiл. Такой-то нейтив.
Аноним 16/06/21 Срд 11:38:34 2069946139
>>2069771
>Расширить область тапа можно добавив слой с почти поной прозрачностью.
>На фпс не скажется.
Да, дебил, ни разу не снизится, пиздуй читать как работает рендеринг, что такое color blending и смотреть на глубину своего дерева вьюх.

>iOS 15+
Ахахах, я чего-то орнул. То есть ты на полном серьёзе предлагаешь не просто друпнуть 20% аудитории задрав таргет до 13-шки, а задрать его до версии, которая выйдет через пол, блять, года? Борщехлёб, попустись.

> ScrollViewReader
Опять задрали таргет.

>ScrollViewReader - в т.ч. работает на табличке.
Тащемта, он не умеет читать позицию, маня. Разве что скроллить помогает.
А GeometryReader внутри ScrollView как пидорасил лэйаут и тригеррил лаги, так и продолжает.

>Префетчинг за тебя делает swiftui в коллекшн вью или таблице или лэйзи стаках
Да нихуя оно не делает, я же не о том чтобы ячейку чуть пораньше рисовать (лол). Вот я хочу чтобы при нормальном интернете следующий батч контента тянулся когда юзер доскроллит до 0.6 экрана до низу, а на хуёвом за 2 экрана. Вот ты вроде бы даже решение предложил — iOS14+ и ScrollViewReader (но на самом деле обосрался, не открыв доку по этому ридеру, кек), а тут бац — и ячейки сильно разной высоты (самый простой пример — опять чат).

>По началу было больно, но потом начал пользоваться ASCollectionView.
>работает как швейцарские часы.
В то же время:
>заворачивает каждую ячейку в ASHostingController<AnyView>(AnyView())
>при реюзе добавляет/удаляет контроллер из иерархии
И это я только ячейку открыл, это же кек какой-то. Айпад на м1 видимо ради такого говна придумали — иначе эта хуйня даже 30 фпс будет мало где показывать.

>Кроме того, есть несколько библиотек на диффинг.
Которые в хуй не впёрлись потому что всё есть в iOS 13?

>Не совсем понял, что ты понимаешь под нетривиальным лейаутом
Потому что ты нихуя и не писал сложнее своего хэлловорда.

>iOS 15 вроде ничего старого пока не изменили, ток нового добавили.
Там добавили фичу диффа по апи — посмотри сам.
Аноним 16/06/21 Срд 11:57:27 2069959140
>>2069771
>import NavigationStack
Тогда уж ждём
>import leftpad
и вытягиваем половину интернета на каждый пук.

>Тесты..тесты...тесты... и прямые руки
Они тебе, конечно же, помогут справится с тем, что SwiftUI сырой как хуй пойми что, и устраивает зоопарк поведений на симуляторах и разных девайсах. Он блять у меня на хэловордах показывает разный результат в симуляторе и на девайсе, а когда попробовал скомпилировать на мак — навигейшенлинк в связке с лэйзистеком просто крашит нахуй всё без вариантов починки, вот чем тебе помогут тесты когда 2/3 крашей будет из-за какой-то внутренней хуйни самого SwiftUI?

Давай-ка ты пару лет пораскатываешь и поподдерживаешь это говно, а потом будешь высирать своё авторитетное мнение вкатыша. Ну, точнее уже не будешь — пожрёшь говна и станешь человеком, когда можно было этого не делать.

>>2069911
Ну как не изменится — будет скролл с системной физикой, и из-за этого не будут опускать оценки в сторе в 0, лол.
Они вообще про одно и тоже — про декларативный UI, и все проблемы у них одинаковые — это следствие этой самой декларативности.
Настройки X
Ответить в тред X
15000
Макс объем: 40Mб, макс кол-во файлов: 4
Кликни/брось файл/ctrl-v
Стикеры X
Избранное / Топ тредов