Занятие 29 - Инкапсуляция | Access Control в Swift

  Рет қаралды 3,818

В’ячеслав Білий

В’ячеслав Білий

Күн бұрын

Пікірлер: 35
@user-iOSnick-dev
@user-iOSnick-dev 11 ай бұрын
Я к вам пишу - чего же боле? Что я могу ещё сказать? Вы лучший преподаватель!
@takedaheroku
@takedaheroku 10 ай бұрын
Дякую за детальний огляд та поради ✌
@bwswift
@bwswift 10 ай бұрын
👍
@Sanche87
@Sanche87 Жыл бұрын
Вячеслав спасибо! Дякую ! 🥇
@bwswift
@bwswift Жыл бұрын
І вам дякую!
@AdamTabiev
@AdamTabiev Жыл бұрын
Огромное спасибо за это супер продуманное объяснение!!! Талант!
@bwswift
@bwswift Жыл бұрын
👍
@MrPotapovV
@MrPotapovV Жыл бұрын
Дуже дякую за роботу
@morrterry
@morrterry Жыл бұрын
Благодарю за видео!
@bwswift
@bwswift Жыл бұрын
👍
@vasiario
@vasiario Жыл бұрын
Бомба вообще. Спасибо за видео
@SergSphinx
@SergSphinx Жыл бұрын
Класс 🎉 Просто праздник
@ЕвгенийДеменко-б8щ
@ЕвгенийДеменко-б8щ Жыл бұрын
Дякую за відео! Хотілось б послухати від Вас про принцип роботи паттернів MVVM або MVP. Бо в ютубі прям мало відео з конкретними прикладами загалом😢
@bwswift
@bwswift Жыл бұрын
Як з цим плей-листом закінчу - все буде
@ThePavelBarysevich
@ThePavelBarysevich Жыл бұрын
Спасибо, за продельный труд:)
@bulgakov1991
@bulgakov1991 Жыл бұрын
шикарно, спасибо)
@llxodz
@llxodz Жыл бұрын
Отличный урок, спасибо огромное!)
@maximmatusevich9695
@maximmatusevich9695 6 ай бұрын
Спасибо за отличное видео, Вячеслав! Один момент заметил, который не могу понять: на 21:21 в документации написано, что если класс private, тогда его функция somePrivateMethod() также должна быть private. (Я проверил документацию, без изменений). Но если скопировать этот код, тогда у инстанса somePrivateClass по прежнему можно вызвать функцию somePrivateMethod, которая по документации должна неявно быть private. Если добавить перед этой функцией модификатор private, тогда её вызвать уже нельзя из инстанса. chatGPT ничего дельного не подсказал, может у Вас есть мысли на этот счёт?
@bwswift
@bwswift 6 ай бұрын
Модифікатор прайвет для класса работает на уровне модуля. Значит єтот класс не будет виден в другом модуле и его функции не будут видньі в другом модуле. Прайвет для функции работает не только в другом модуле но и в том же модуле, поєтому в рамках одной программьі нельзя вьізвать прайвет функьію.
@maximmatusevich9695
@maximmatusevich9695 6 ай бұрын
​@@bwswift Дякую! Да, я понимаю как работают private на уровне класса. В этом и вопрос, что по документации, если класс - private, то и его функции без модификаторов автоматически становятся private (значит их нельзя вызвать из инстанса). Но когда я использую код из документации, то внутренняя функция somePrivateMethod() доступна для вызова из инстанса. А если ей добавить модификатор private, то только после этого она становится недоступной для вызова. В целом, это хорошо раскрыто в вопросе со stack overflow [In Swift 3, is there a difference between 'private class Foo' and 'fileprivate class Foo' in regards to member variables?]. Где выводом послужило то, что в документация в этом моменте вводит в заблуждение и лучше рассматривать, что эти переменные будут недоступны извне *из-за области видимости самого класса*, а не переменных.
@vladimira4865
@vladimira4865 Жыл бұрын
спасибо! отличная подача информации!
@bwswift
@bwswift Жыл бұрын
Спасибо!
@yuvatv2410
@yuvatv2410 Жыл бұрын
Спасибо
@larinvae
@larinvae Жыл бұрын
Вячеслав, здравствуйте! Спасибо за лекцию! Объясните, пожалуйста, правильно ли я понимаю понятие «интерфейс» - это те части программы, которые созданы для взаимодействия с пользователем? Спасибо большое
@bwswift
@bwswift Жыл бұрын
Зависит от контекста. 1. Части программы с которыми взаимодействует пользователь 2. Части самого объекта(структуры, класса, енама) с которыми могут взаимодействовать другие объекты внутри программы. 3. Части модуля с которыми могут взаимодействовать другие модули внутри системы/программы
@Yaroslav_Shevchuk11
@Yaroslav_Shevchuk11 Жыл бұрын
🔥🔥🔥
@olezhapaupau9252
@olezhapaupau9252 7 ай бұрын
У меня вопрос 26:10 разве не наоборот, если у классов init обязателен то и аргументы должны быть, когда у struct init не обязателен, или я что то не так понял или попутал?)
@bwswift
@bwswift 7 ай бұрын
Не понимаю вопроса. В данном таймкоде я говорю что у инициализаторов такой же уровень доступа как и у типа. Это относится и к инициализаторам которы доступны по умолчанию.
@Xname00
@Xname00 Жыл бұрын
🔥
@maxkmr7438
@maxkmr7438 Жыл бұрын
Отличный урок, часть пересмотрел несколько раз, но в итоге дошло.Пока сам не повтыкаешь в код - не закрепишь.
@bwswift
@bwswift Жыл бұрын
👍
@tronewsky2
@tronewsky2 Жыл бұрын
Як на мене, інкапсуляція та контроль доступу це різні речі, проте вони взаємодоповнюють один одного. Інкапсуляція це концепція котра стосується об’єднання даних і методів в одному модулі. Вона має на меті приховувати деталі реалізації об’єкта та забезпечувати простий інтерфейс для взаємодії з ним. З іншого боку, контроль доступу належать до обмежень, накладених на видимість і доступність даних і методів у програмі.
@dmitry3881
@dmitry3881 Жыл бұрын
Лайк) В тебе дуже хороші відео, жаль, що не багато переглядів, дуже спеціфічний контент для ютубу (маю на увазі , що дуже не багатьом людям він потрібний як відосики про котів чи фейли), а щоб записати таке відео на 40 хвилин , мабуть, потрібно цілий день витратити. Не знаю чи плануєш, але хотілось би щось подібне на більш продвинуті теми, по типу різних патернів, тестів, базові знання по вибору архітектури апки (це має прийти з досвідом, але хотілось би від чогось відштовхуватись). Просто про синтаксис дуже багато відео на ютубі, а от щось поглибше копнути - не так вже з цим і добре
@Ghost12345lpll
@Ghost12345lpll Жыл бұрын
не хрена не понял за урок
@bwswift
@bwswift Жыл бұрын
Вопросы есть? Вопросов нет!
Занятие 30 - Any и AnyObject в Swift, ключевые слова is и as
46:15
В’ячеслав Білий
Рет қаралды 3,7 М.
Это было очень близко...
00:10
Аришнев
Рет қаралды 7 МЛН
Which team will win? Team Joy or Team Gumball?! 🤔
00:29
BigSchool
Рет қаралды 13 МЛН
Real Man relocate to Remote Controlled Car 👨🏻➡️🚙🕹️ #builderc
00:24
Принципы ООП. 1. Инкапсуляция
8:55
Sergey Nemchinskiy
Рет қаралды 198 М.
Интерфейсы в Golang
14:22
Gopher School (Уроки по Golang)
Рет қаралды 48 М.
№33 - Extensions в swift | Что от вас скрывают!?
32:09
В’ячеслав Білий
Рет қаралды 4,5 М.
CI/CD - Простым языком на понятном примере
15:29
Артём Шумейко
Рет қаралды 99 М.
Объектно ориентированное программирование в Python за 10 минут!
12:56
Хауди Хо™ - Просто о мире IT!
Рет қаралды 675 М.