- 15
- 70 388
Swift Magic
Приєднався 23 гру 2018
Записываю видео об iOS разработке
Відео
Жизненный цикл ViewController | SWIFT
Переглядів 3,6 тис.Рік тому
00:00 Вступление 00:00 Методы жизненного цикла vc 00:55 init 01:19 loadView 01:33 viewDidLoad 02:05 viewWillAppear 02:28 viewWillLayoutSubviews 02:43 viewDidLayoutSubviews 03:03 viewDidAppear 03:24 viewWillDisappear 04:04 viewDidDisappear 04:55 deinit 05:09 Промежуточные итоги 07:41 Демо 13:00 Выводы
Compression Resistance & Hugging Priority | SWIFT
Переглядів 2,4 тис.Рік тому
00:00 Теория 05:24 Выводы 06:55 Практический пример 10:22 Заключение ссылка на статью medium.com/@dineshk1389/content-hugging-and-compression-resistance-in-ios-35a0e8f19118
Frame & Bounds | SWIFT
Переглядів 3,6 тис.Рік тому
00:00 Теория 00:54 Пример 1 02:56 Более точное определение Frame 04:02 Можно ли изменить координаты Bounds? 06:05 Center - третье свойство 07:03 Задача на изменение Bounds 10:53 Вывод
View и Layer в чем разница | SWIFT
Переглядів 3,7 тис.Рік тому
Погрузимся в основы каждого компонента и узнаем, как View и Layer взаимодействуют между собой, поговорим о различиях в их функциональности, производительности и возможностях. 00:00 Теория 00:42 Демо 05:42 CPU / GPU Bounding 07:32 Вывод
Responder chain & Hit testing | SWIFT
Переглядів 8 тис.Рік тому
В этом видео вы узнаете все, что нужно знать о двух важных концепциях в разработке приложений на Swift - цепочке отклика (Responder Chain) и тестировании касания (Hit Testing). Я покажу вам, как работает цепочка отклика, как события передаются по иерархии представлений и как это позволяет эффективно обрабатывать пользовательские взаимодействия. Вы также узнаете о тестировании касания и как сист...
KISS DRY YAGNI ПРИНЦИПЫ ПРОЕКТИРОВАНИЯ | SWIFT
Переглядів 6 тис.2 роки тому
В этом видео мы разбираем принципы проектирования (программирования) KISS (Keep It Simple, Stupid), DRY (Don't Repeat Yourself), YAGNI (You Ain't Gonna Need It) и SSOT (Single Source Of Truth). Это видео подходит не только iOS разработчикам, но и другим программистам, которые хотят научиться писать простой и эффективный код.
Dependency Inversion Principle (DIP) | SWIFT ГОТОВИМСЯ К СОБЕСЕДОВАНИЮ
Переглядів 4 тис.2 роки тому
В этом видео разобран принцип инверсии зависимостей - Dependency Inversion Principle и представлены краткие знания для подготовки к собеседованию на должность iOS Developer.
Interface Segregation Principle (ISP) | SWIFT ГОТОВИМСЯ К СОБЕСЕДОВАНИЮ
Переглядів 2,3 тис.2 роки тому
В этом видео разобран принцип подстановки разделения интерфейсов - Interface Segregation Principle и представлены краткие знания для подготовки к собеседованию на должность iOS Developer.
Liskov Substitution Principle (LSP) | SWIFT ГОТОВИМСЯ К СОБЕСЕДОВАНИЮ
Переглядів 3,5 тис.2 роки тому
В этом видео разобран принцип подстановки Барбары Лисков - Liskov Substitution Principle и представлены краткие знания для подготовки к собеседованию на должность iOS Developer.
Open Closed Principle (OCP) | SWIFT ГОТОВИМСЯ К СОБЕСЕДОВАНИЮ
Переглядів 2,8 тис.2 роки тому
В этом видео разобран принцип открытости/закрытости - Open Closed Principle и представлены краткие знания для подготовки к собеседованию на должность iOS Developer
Single Responsibility Principle (SRP) | SWIFT ГОТОВИМСЯ К СОБЕСЕДОВАНИЮ
Переглядів 3,2 тис.2 роки тому
В этом видео разобран принцип единой ответственности - Single Responsibility Principle и представлены краткие знания для подготовки к собеседованию на должность iOS Developer
SOLID ЗА 3 МИНУТЫ | SWIFT ГОТОВИМСЯ К СОБЕСЕДОВАНИЮ
Переглядів 7 тис.2 роки тому
В этом видео представлены краткие знания для подготовки к собеседованию на должность iOS Developer. Разобрана тема SOLID принципов.
ООП | SWIFT ГОТОВИМСЯ К СОБЕСЕДОВАНИЮ
Переглядів 10 тис.2 роки тому
В этом видео представлены краткие знания для подготовки к собеседованию на должность iOS Developer. Разобрана тема объектно-ориентированного программирования: наследование, инкапсуляция, полиморфизм
Было бы просто супер увидеть от вас видео про проблемы многопоточности!❤
Отличный видос!
Все понятно и ясно
Спасибо
7300 просмотров 473 лайка а на сабесаз все равно никто не может ответить)
Спасибо!
Спасибо за такое подробное видео!
спасибо за видео! чётко, понятно, без воды. что значит смогло полностью обработать событие?
супер!!! спасибо!)
Феноменально!
очень хорошо объясняете, спасибо!
Тут не хватает только того как будет работать приложение когда включён режим энергосбережения ?
Array(Set(arr))
Хорошо усвоился урок.
Спасибо, очень полезно.
Вопрос: почему при получении оранжевой вьюхи по результатам hitTest() и назначении ее firstResponder’ом далее у нас в консоли выводится весь responder chain, хотя оранжевая вьюха может обработать тач? По идее мы не должны дальше идти же по цепочке? Возможно, ответ таков (взято из одной статьи): «UIGestureRecognizer реализует четыре метода касания, но он не является респондером. Поэтому не участвует в responder chain.» Но тогда почему не вызываются рекогнайзеры на каждой вью в responder chain, а только на оранжевой? 🤔
10:20. Если вьюшка не полностью обработала событие, она передает его на уровень выше. В нашем случае, когда мы определили, что нажали именно на нее, в консоле вывелась информация об этом и затем вызвался метод super.touchesBegan, который и передал событие рекурсивно к ViewController
@@MagicSwiftммм, тогда вопрос другой: что значит полностью обработает событие? Какие критерии того, что является «полностью», а что - нет?
Ваши видео очень крутые Жаль, что так мало
Отличное объяснение! Смотрел много видео про SOLID, но только благодаря вашим примерам понял, как все принципы применять на практике. Пишу на TypeScript, не возникло трудностей в понимании Swift-кода :) Спасибо вам!!!
Спасибо!
ооочень полезное видео, однозначно лайк!
protocol CircleShape { func drawCircle() } protocol SquareShape { func drawSquare() } protocol RectangleShape { func drawRectangle() } Class Circle { func draw(shape: CircleShape) { shape.drawCircle() } } Class Square { func draw(shape: SquareShape) { shape.drawSquare() } } Class Rectangle: rectangleShape { func draw(shape: RectangleShape) { shape.drawRectangle() } }
Замечательно! Инфу про СРU и GPU встретил впервые, козырну на собесе, если спросят)
Не канал, а каналище. Автор оч хорош в подаче материала
спасибо, было полезно!
Не пойму,почему при повороте frame(h и w) изменились и зачем рисовать вторую view? Почему не можем длину и ширины frame посчитать по повернутому прямоугольнику?
спасибо)
тема не раскрита. 1) когдато помню просто вешаеш дополнительний рекогнайзер тапа большего размери и все. 2) что ето за овверрайд objc функций в вью контролерре, тоесть сначало оно дошло до серой вьюхи потом нашло оранживою? ниче не понял, ето же должно бить если не можеш обробить. 3) что значит вьюха не может обробить тач? у нее нет соотвественного делегат метода?
Пожалуйста, выучи русский язык 🙏
что?
Спасибо большое!!!
Спасибо за информативные видео
Половина людей зашла сюда про 3д моделирование смотреть
Крутейший видос по теме! Спасибо за такое качественное объяснение)
Супер! Спасибо
Божественно
6:28
Просто объяснить сложно. Сложно объяснить просто. Огромное спасибо за разбор темы!
Мне кажется это какой - то роффл автора видео ) Я такую же задачку решал за O(n) амортизированое )
наверно еще и порядок элементов не поменял в решении?)
Привет, спасибо за видео) А что с классом директор? Он же выполняет 2 функции? 2:47
Да, функций может быть сколько угодно, но они все должны относиться только к обязанностям директора. Если бы он еще и занимался тренировкой людей в зале, то это было бы уже нарушение принципа
абстрактный класс это базовый класс от которого мы наследуем другие классы ? Протоколы можно расширять это добавит дефолтную реализацию в те классы которые на них подписываются, не очень понятна тогда разница с абстрактным классом.
здесь все лучшее получается, даже если кто то не согласен. Спасибо автору за понятное обьяснение.
ничего не было понятно, посмотрел видео и все понятно. Магия рассказчика сработала. Спасибо автору за огненный контент!
Привет. Ты не раскрыл суть принципа. А именно такие вещи как: - аргументы метода дочернего класса не должны быть ковариантны по отношению к родительскому классу; - возвращаемые значения методов дочерних классов могут быть ковариантны; - свойства не должны быть переопределены И самое главное - какие проблемы несут выше сказанные ограничения ?
Отличный формат, очень хорошая подача информации! Спасибо за видео!
Спасибо))) четко, ясно и по делу
Жаль не успели рассказать про новый метод isappearing
Просто супер!
Много пересмотрел на тему Swift, но это лучшее объяснение и подача материала
Автор, большая умница! Спасибо!
Есть же метод sceneDidEnterBackground(_:) в SceneDelegete. Почему у тебя его нет?))
отличное объяснение. спасибо большое!
Первый канал на котором мною будет оставлен комментарий. Обращение к автору - контент отличный. У канала большое будущее, не останавливайся, у тебя всё получится. Великолепная подача материала, довольно подробно и с примерами. Для меня является огромным плюсом, что присутствуют конкретные use-кейсы, а не просто сухая теория. Именно этого не хватает большинству прочих каналов, где после просмотра могут остаться вопросы, как и где применять полученные знания в реальных проектах. Даже будучи уже действующим разработчиком, переодически нахожу для себя что-то новое. Однозначно лайк, продолжай в том же духе! 💪
Спасибо!