Swift. Async/Await. Task. Часть 2
51:16
Swift. Async/Await. Task. Часть 1
48:54
Swift. Async/Await. Basics
47:18
Swift. Pose Detection App - 49.
59:51
Swift. Pose Detection App - 48.
1:08:40
Swift. Pose Detection App - 47.
1:08:56
Swift. Pose Detection App - 46.
1:30:47
Swift. Pose Detection App - 45
1:01:16
Swift. Pose Detection App - 44
1:08:05
Swift. Dependencies. Пример
1:02:42
Swift. Pose Detection App - 42
2:38:34
Swift. Pose Detection App - 40.
1:14:00
Swift. Pose Detection App - 39.
1:57:36
Swift. TCA. StackBased Navigation
1:00:41
Swift. TCA. TreeBased Navigation
57:27
Swift. TCA. Navigation. Part 1
45:32
Swift. TCA. Effects
1:08:48
5 ай бұрын
Пікірлер
@mustafadzhabrailov
@mustafadzhabrailov Күн бұрын
Поработать бы над качеством, тогда цены бы не было
@nikolai.developer
@nikolai.developer Күн бұрын
Что именно? Звук, разрешение?
@mustafadzhabrailov
@mustafadzhabrailov Күн бұрын
@@nikolai.developer Разрешение ладно, в принципе все видно, а вот насчет звука дела чуть похуже - сильно пищит, если сидеть в наушниках слух режет
@nikolai.developer
@nikolai.developer Күн бұрын
@@mustafadzhabrailov попробую послушать в наушниках, посмотрю что можно поправить.
@tomvenom
@tomvenom Күн бұрын
Привет. Планируются видео по Swift UI/UI Kit или же например по базовым понятиям Swift?
@nikolai.developer
@nikolai.developer Күн бұрын
Да, по SwiftUI будут скоро. По самому SwiftUI в принципе и по анимациям в нем.
@uladzislauyanouski8853
@uladzislauyanouski8853 Күн бұрын
Только пришла нотификация, но уже знаю, что видео будет супер полезным!
@nikolai.developer
@nikolai.developer Күн бұрын
Спасибо за доверие.
@MKShowGo
@MKShowGo Күн бұрын
Искал медь - нашел золото! В канале видео на редкие темы, и информация представлена не поверхностно, а глубоко и подробно. Спасибо!
@spamaed
@spamaed 8 күн бұрын
Полезно, спасибо! На счет неявной обертки View в MainActor когда есть Observable конечно сюрприз. Если есть возможность выкладывать в 1080р, то будет приятно.
@dmitryvoronin9831
@dmitryvoronin9831 8 күн бұрын
Спасибо за доступную информацию!. Есть небольшая просьба. При записи видео можно увеличить размер шрифта в окне кодинга? (Сейчас качество 720p)
@nikolai.developer
@nikolai.developer 8 күн бұрын
Хорошо сделаем, главное не забывать про это.
@user-no1rp8eg8r
@user-no1rp8eg8r 9 күн бұрын
Отличное видео! Спрашивали на собеседовании про асинк авейт вопросы и 90% вопросов были из того что вы расказали в текущем видео) Очень помогли)
@nikolai.developer
@nikolai.developer 9 күн бұрын
Очень рад
@user-no1rp8eg8r
@user-no1rp8eg8r 9 күн бұрын
Большое спасибо! Как раз начал изучать а тут такой урок!
@pavelkernoha6773
@pavelkernoha6773 13 күн бұрын
Супер! Для тех кто не трогал асинк/авейт - это отличное начало)
@arturmkrtchian4700
@arturmkrtchian4700 15 күн бұрын
спасибо огромное
@НикитаЯковенко-ы7м
@НикитаЯковенко-ы7м 16 күн бұрын
Спасибо за видео!
@pafnuteus
@pafnuteus 17 күн бұрын
ах ах, как же можно было не обернуть в guard создание UIImage, ведь в data может быть что угодно, не только картинка. тогда все крашнется.
@nikolai.developer
@nikolai.developer 16 күн бұрын
Если бы был продашен код - да, но тут основной задачей было показать работу Combine, поэтому этот момент упустил.
@Croleack
@Croleack 20 күн бұрын
Кайф 🥰
@ongrustit
@ongrustit 20 күн бұрын
Спасибо вам за видео полезное!
@PavelSPL
@PavelSPL 22 күн бұрын
Спасибо! Отлично объясняете! 🔥Пожалуйста продолжайте!
@InSideCannel
@InSideCannel Ай бұрын
Очень понятно построенно объяснение! Спасибо
@nikolai.developer
@nikolai.developer Ай бұрын
Рад, что вам было полезно.
@alexandrf2428
@alexandrf2428 Ай бұрын
Спасиба!
@vladshima9
@vladshima9 Ай бұрын
Больше видео по структурному конкаренси
@nikolai.developer
@nikolai.developer Ай бұрын
Будет. Следующее будет именно про Task.
@dmitry3881
@dmitry3881 Ай бұрын
За видео спасибо, но звук...( если бы немного громче в следующий раз...
@nikolai.developer
@nikolai.developer Ай бұрын
Спасибо за отзыв. Следующее видео, скорее всего, будет уже из дома. Там все настроено. Но если задержусь в командировке учту.
@marinagazibar8662
@marinagazibar8662 Ай бұрын
Очень полезное видео, спасибо!
@maximpanteleev5413
@maximpanteleev5413 Ай бұрын
Привет, что ты имеешь в виду на 17:35 примерно "размер массива будет равен количеству элементов одинаковому"? Размер массива всегда один и тот же, он не зависит от количества элементов)
@nikolai.developer
@nikolai.developer Ай бұрын
Ну изначально да, все массивы одинакового размера. Но, когда мы все-таки дойдем до предела и нам нужно вставить новый элемент. То массив увеличивается в два раза (берется новый блок памяти туда копируется старое содержимое и добавляется новый элемент). Здесь я имел в виду фактический размер всех элементов, которые в массиве есть и механизм, который позволяет сохранять возможность обращения к этим элементам массива по индексу. Хотя, мы не знаем какого они размера (так как там просто протоколы указаны).
@maximpanteleev5413
@maximpanteleev5413 Ай бұрын
@@nikolai.developer ок, понял. зы. я про то, что если смотреть размер массива через memorylayout там всегда 8 будет, тк в нем ссылка на буфер лежит и больше ничего
@maximpanteleev5413
@maximpanteleev5413 Ай бұрын
@@nikolai.developer ок, понял зы. я про то, если смотреть через memorylayout, то всегда будет размер один и тот же, т.к. в массиве только ссылка на буфер лежит
@stasikMojet
@stasikMojet Ай бұрын
привет, как раз то, что искал, спасибо!
@TheNikit0s
@TheNikit0s Ай бұрын
Интересно было бы послушать про Structed Cuncurrency, особенно работу с Actors, обсудить возможные проблемы
@TheNikit0s
@TheNikit0s Ай бұрын
Спасибо большое, очень интересная серия роликов! Получается что в TCA у нас в любом случае каждый экран знает заранее какие экраны он может открыть и сам отвечает за их построение. Мне кажется в этом главный минус TCA, потому что таким образом нарушается принцип единственности ответственности, да и в целом потом изменить навигацию, встроить на одном из этапов промежуточный экран или передавать данные сквозь цепочку связанных экранов оказывается очень непростой задачей, особенно если мы экраны находятся в разных модулях и мы не хотим видеть между ними прямую связь. Обычно для этого выделяют отдельную сущность в виде координатора, в котором можно хранить какие-то общие переменные для всех экранов, удобно конфигурировать в одном месте эти экраны, а открывать новые за счет .send() паблишера изнутри экрана.Т.е. есть экран, который после нажатия на кнопку вызывает .send() у условного nextButtonPublisher, а координатор при конфигурировании экрана подписывается на него и сам открывает след экран. В SwiftUI можно реализовать это с помощью библиотеки Stinsen, она максимально приближена к тому, что у нас было в UIKit. Я думаю, что всё-таки все преимущества TCA раскроются, если использовать его вместо ViewModel, не распростроняя на уровень всего приложения, а то код начинает необосновано разрастаться так, что даже компилятор не справляется с обработкой ошибок
@nikolai.developer
@nikolai.developer Ай бұрын
Привет, рад что понравилось. Перенос модификаторов навигации во View - это особенность SwiftUI в принципе. Потому что под капотом TCA использует стандартный стэк навигации, просто добавляет к этому построение и передачу store для экрана. Если такой подход не нравится, можно действительно не использовать навигацию TCA, так можно сделать. Одно время я так и писал, пока не разобрался как работает навигация.
@jogabonito2315
@jogabonito2315 Ай бұрын
Если можно расскажи, как собрать проект, когда ты пришел только на проект. Ведь нужно загрузить в проект кучу стороних библиотек. К примеру я пришел на первую работу удалено, мне говорят установи проект .( Меня добавили в репозиторий? Я скачиваю проект, как это все установить, может с этим помогает коллега?). Учусь сам и не нашел на курсах ничего подобного.
@nikolai.developer
@nikolai.developer Ай бұрын
Зависит от компании. Если это небольшая контора, то там может быть там никто не поможет, хотя спросить (у коллег) если что всегда есть смысл, если непонятно что-то. В большой компании всегда за тобой первое время будет кто-то присматривать и должен будет проследить, чтобы ты доступы получил. Если говорят установи проект, то должны сказать где его взять. По идее, да, тебя должны добавить в репозиторий и оттуда надо сделать клон проекта себе на компьютер.
@jogabonito2315
@jogabonito2315 Ай бұрын
@@nikolai.developerспасибо!
@user-nm4pg5ij5f
@user-nm4pg5ij5f Ай бұрын
Видео, супер! Очень полезно новичкам! По началу всегда кажутся эти процессы сложными! Спасибо большое, за вашу работу 😃
@jogabonito2315
@jogabonito2315 Ай бұрын
Супер! Впервые вижу, чтобы так детально описали задачи и процессы внутри. Спасибо за твой труд!))
@oaoao3686
@oaoao3686 Ай бұрын
Спасибо за видео!
@nikolai.developer
@nikolai.developer Ай бұрын
Пожалуйста!
@Dimoniada
@Dimoniada Ай бұрын
Спасибо за рассказ. В общем, печально всё. Зарплату изнутри компании поднимать себе не выгодно.
@nikolai.developer
@nikolai.developer Ай бұрын
Выгоднее значит проще или легче, или есть какой-то еще критерий. Интересно, что вы имели в : не выгодно. То, что это неудобно и геморно, работать а потом доказывать, что ты уже можешь и заслуживаешь большего - собирать доказательства и примеры. Это да, очень кринжово.
@Dimoniada
@Dimoniada Ай бұрын
Да, нужно усилие (и своё развитие) на рост внутри компании. Зачастую это во много раз тяжелее, чем податься в другие фирмы на более оплачиваемую позицию (и возможно с меньшей нагрузкой). Всё зависит от критерия "зачем работать": нужны деньги - проще перейти в др. фирму, нужен рост внутри фирмы - оставайся. Это имхо.
@nikolai.developer
@nikolai.developer Ай бұрын
@@Dimoniada согласен, при переходе зачастую проще получить повышение ЗП. Внутри больших компаний процесс роста сильно формализован и решение часто принимается тем, кто вообще не в курсе, что ты конкретно делаешь.
@jogabonito2315
@jogabonito2315 2 ай бұрын
Можно урок по гиту, с практикой каких нибудь кейсов. Не уроки по всем командам, а основным которые все используют. (И примеры реальные, как происходит это на работе. Ты решил задачу, сделал комит, отправил на проверку, если вдруг есть ошибки в коде , какой алгоритм происходит снова? ) И еще к примеру: залил комит не в ту ветку. Забыл делать комиты и как теперь этот код разбить на разные комиты? Как вообще нужно оформить комит, ведь его будет проверят твой коллега(Что нужно описать внутри ). Если были случаи, когда ты совершал подобные ошибки или твои коллеги, расскажи как это все решалось)).
@jogabonito2315
@jogabonito2315 2 ай бұрын
На самом деле, когда ты только входишь в айти)Никто на курсах, не обьясняет такие моменты. Думая, что это уже перекладывается на компанию, рассказать о том как все устроено внутри). Только вот компании разные и первой работой будет скорее всего галера). Где придется разбираться всему этому на ходу, от чего только еще больше стресса). Так что видео топ и узнал больше чем с курсов)!
@jogabonito2315
@jogabonito2315 2 ай бұрын
Спасибо!Для новичка, то что нужно чтобы подготовиться к первой работе! Все четко и по делу))
@sno-oze
@sno-oze 2 ай бұрын
Не, добротный, подробный ролик. Большая часть по делу! Жду вторую часть.
@НикитаЯковенко-ы7м
@НикитаЯковенко-ы7м 2 ай бұрын
Не видел пока в рунете столь подробных объяснений, спасибо!
@nikolai.developer
@nikolai.developer 2 ай бұрын
Рад, что помогло вам.
@НикитаЯковенко-ы7м
@НикитаЯковенко-ы7м 2 ай бұрын
Спасибо за подробный разбор, такой контент заслуживает намного больших просмотров!
@alexandrf2428
@alexandrf2428 2 ай бұрын
подписался свифт интересен
@oaoao3686
@oaoao3686 2 ай бұрын
Было бы интересно посмотреть про многомодульные приложения, линовку, выбор архитектур
@nikolai.developer
@nikolai.developer 2 ай бұрын
Линковку или линовку? Может, я упускаю какой-то термин?
@vladshima9
@vladshima9 2 ай бұрын
Сделайте плис видео как делить приложение на модули что выносить в модули а что не стоит, про линковку, что лучше использовать spm или поды, спасибо
@jogabonito2315
@jogabonito2315 2 ай бұрын
Как происходит на работе, отправка сделанной задачи. Кто далает ревью. И коротко как происходят все эти процессы, чтобы не сломать проект.
@jogabonito2315
@jogabonito2315 2 ай бұрын
Кстате, а ты менторишь других ребят? Если да то сколько это стоит? И где с тобой связаться?
@nikolai.developer
@nikolai.developer 2 ай бұрын
Привет, менторинг, если по настоящему, это достаточно трудоемкое занятие и нужно много вкладываться. Я боюсь, что полноценно не смогу вкладываться в это.
@jogabonito2315
@jogabonito2315 2 ай бұрын
Идея для стрима либо пары роликов, взять небольшое задание тестовое для middle ios разработчиков с вакансий. И реализовать от начала до конца. Чтобы показать на что нужно сделать упор и как продумать это задание. Столкнулся с тем, что не знаю с чего начать, как ты продумываешь со своим опытом такое тестовое. Я думаю тут много новичков и хотелось бы прокачаться до твоего уровня. Именно проектированию и подходу к задачам.
@nikolai.developer
@nikolai.developer 2 ай бұрын
Можно сделать, но в ответ, сильно поможет, если вы принесете пример задания со своего собеседования или в принципе пример. Я тоже постараюсь найти, но может дольше времени занять.
@jogabonito2315
@jogabonito2315 2 ай бұрын
Самый крутой канал по практике)! Многому научился и для новичка появляется понимание для чего мы используем те или иные технологии на примере задач))! Желаю росту твоего канала!
@nikolai.developer
@nikolai.developer 2 ай бұрын
Спасибо.
@gnominwehawt8254
@gnominwehawt8254 2 ай бұрын
Было бы интересно послушать про: настройку CI/CD с добавлением статик/динамик анализаторов во время пулл реквестов какие-нибудь интересные методики работы с картами
@jogabonito2315
@jogabonito2315 2 ай бұрын
Можешь поделиться для новичков, как проходит твой рабочий день. Что требуют от разработчика (имеется ввиду только задачи выполняешь или нужно еще инициативу в чем то проявлять). Много ли в течения дня приходится общаться с командой и по каким вопросам. Буду первую работу искать и хочется понять как вести себя. Идти придется на мидла, поэтому врятли позволительно будет такие вопросы задавать в команде. ( поймут что без опыта ) И можно пару примеров как звучат задачи реальные на проекте ( хочется понять они расписаны четко или просто в лоб даются. Потому что все говорят они близки к задачам на курсах, но хотелось бы пару примеров которые тебе можно рассказать и коротко как ты подходишь к ним, как расписываешь шаги).
@jogabonito2315
@jogabonito2315 2 ай бұрын
Многопоточность, уроки есть на ютубе. Но они к сожалению без особой практики. Можно ссылку на сообщество.
@VitaliHalai-gh2yy
@VitaliHalai-gh2yy 2 ай бұрын
Было бы интересно рассмотреть следующее (естественно все ниже относится к iOS): 1) Видео по классным, необычным анимациям. Рисованию прикольных кастомных вьюх например с помощью CALayer 2) Рассказать/ снять видео про CI/CD 3) Рассказать/ снять видео про потокобезопасность различных типов данных и как на это может повлиять lazy keyword( такое меня спрашивали на собесе) 4) Рассказать/ снять видео про различные варианты использования Combine в UIKit
@ARedkozubov
@ARedkozubov 2 ай бұрын
Хотелось бы больше про многопоточку
@Le_schiffer
@Le_schiffer 2 ай бұрын
Есть вопрос про жизненный цикл объекта в Swift и устройство счётчика ссылок. Изучал этот вопрос, и в 2-х статьях наткнулся на противоречащие друг другу утверждения. В одной статье было написано, что жизненный цикл объекта реализован на основе машины состояний и для корректной работы объект инициализируется со значениями ссылок - strong +1(что понятно), unowned и weak тоже +1 (что непонятно - слабых и бесхозных ссылок на объект нет). В другой же статье написано, что объект инициализируется со следующими значениями ссылок - strong 0 (но это якобы не совсем тот 0, который мы подразумеваем) и unowned +1. Так каково же на самом деле значение счётчика ссылок в момент объявления объекта?
@oaoao3686
@oaoao3686 3 ай бұрын
Спасибо за видео!
@sergeyrunovich4810
@sergeyrunovich4810 3 ай бұрын
спасибо, очень интересно!
@sergeyrunovich4810
@sergeyrunovich4810 3 ай бұрын
Очень крутой у вас контент, смотреть одно удовольствие. Продолжайте в том же духе!
@nikolai.developer
@nikolai.developer 3 ай бұрын
Спасибо.