background top icon
background center wave icon
background filled rhombus icon
background two lines icon
background stroke rhombus icon

Скачать "SOLID принципы: SRP (Принцип единственной ответственности, Single Responsibility Principle)"

input logo icon
"videoThumbnail SOLID принципы: SRP (Принцип единственной ответственности,  Single Responsibility Principle)
Оглавление
|

Оглавление

0:00
вступление Сергея Немчинского
0:50
все принципы SOLID вкратце
4:02
для чего нужны принципы SOLID
5:42
формулировка принципа SRP
6:47
SRP на картинке
10:23
как следовать SRP
11:35
антипаттерн GoD object
12:15
любые SOLID принципы требуют критического осмысления
13:20
Active Record нарушает SRP
Теги видео
|

Теги видео

solid
5 принципов solid
#ityoutubersru
single responsibility principle
solid принципы
solid design principles
solid single responsibility principle
программирование
solid principles
выбор языка программирование
develop
IT
разработка
немчинский
IT курсы
как стать программистом
java
foxminded
coding
programming
java start
code blog
антипаттерны
code smells
solidworks
liskov substitution principle
interface Segregation Principle
dependency Inversion Principle
Субтитры
|

Субтитры

subtitles menu arrow
  • enАнглийский
Скачать
00:00:01
просили записать наконец вам видео про
00:00:04
solid напоминаешь меня зовут сергей
00:00:05
немчанский
00:00:06
и это мой канал на котором собственно
00:00:08
говоря рассказывает от все к правитель и
00:00:11
про программирование прогоняется очень
00:00:13
большим стажем и и директор и учебные
00:00:15
компании вкус майдан так вот это первое
00:00:17
видео из цикла про solid про принципы
00:00:22
программа разработки программного
00:00:24
обеспечения
00:00:25
я планирую если вам понравится записать
00:00:28
еще цикл лекции про другие принципе но
00:00:30
давайте начнем с салидо и так первое это
00:00:32
первое видео цикла solid и собственно
00:00:35
говоря видео про принцип сср п.д.
00:00:41
ну и будем об этом разговаривать поехали
00:00:44
[музыка]
00:00:47
и так говорят о леди надо в первую
00:00:52
очередь конечно же сказать про роберта
00:00:54
мартина дядю баба как он сам себя
00:00:57
называет и его сайт ботанка лбов комп
00:01:00
она который вы периодически можете
00:01:02
заходить я лично считаю его своим
00:01:03
учителем как и очень многие программисты
00:01:05
это человек который написал знаменитую
00:01:07
книжку клин код но и еще миллион других
00:01:10
книг книги у него шикарный ок
00:01:14
экстремально советую вам читать их на
00:01:15
английском потому что в русском переводе
00:01:17
они очень сильно страдают хотя в
00:01:19
принципе
00:01:20
клинку от еще туда сюда можно читать а
00:01:22
например мой любимый java software
00:01:24
development который принципе принципу
00:01:27
practices and patterns он сожалению
00:01:29
перейдем на русски просто ужасно поэтому
00:01:31
не читаете его на русском но неважно
00:01:32
итак за все время своей работы роберт
00:01:37
мартин а к дяде боб наработал большое
00:01:40
количество принципов вы многие из этих
00:01:41
названий наверняка слышали и на своем
00:01:45
сайте он отобрал самое с его точки
00:01:47
зрения важные принципе выбрал их по пять
00:01:49
из каждого блока
00:01:50
вот этот блок общей про разработку
00:01:53
объектно-ориентированного программного
00:01:54
обеспечения и потом майкл fathers другой
00:02:00
автор книг увидел что его первые пять
00:02:02
принципов складывается в акроним до
00:02:04
акроним это аббревиатура которая
00:02:06
произносятся слитно они по буква solid
00:02:09
это пять принципов
00:02:10
я щас перечислил чтобы так сказать не
00:02:13
быть голословным с это срп сингл
00:02:17
responsibility принципы вкратце каждый
00:02:21
вас должен иметь одну и только одну
00:02:23
причину для изменений об этом принципе
00:02:25
на как раз сегодня будем говорить второй
00:02:27
принцип all do am happy это принцип открытости
00:02:30
закрытости
00:02:31
alpen кладут принципу звучит немножко
00:02:34
странно но это классная штука
00:02:35
он говорит о том что с автор но
00:02:37
разработанный ваши вами код должен быть
00:02:40
открыт к расширению то есть при
00:02:42
добавлении нового функционала и закрыт к
00:02:44
изменениям то есть то что уже бы
00:02:45
написано не должно изменяться вы должны
00:02:48
только дописывать новый функционал ну
00:02:49
исправлять там ошибки но об этом
00:02:51
немножко позже на следующем видео лсп
00:02:54
принцип постановки барбарой лесков
00:02:56
лесков substitution принципу лсп
00:02:59
а о нем будем разговаривать очень долго
00:03:03
потому что этот принципе многим
00:03:05
программистом плохо по его понятиям это
00:03:06
будет третьем видео до
00:03:08
принцип кафка вкратце его сформулировала
00:03:11
боб мартин так объекты в программе
00:03:13
должны быть заменяемыми на экземпляры их
00:03:15
подтипов без изменения правильности
00:03:17
выполнения программы на как я уже
00:03:19
говорила об этом буду говорить подробнее
00:03:20
тут в короткой ставки об этом не скажешь
00:03:23
и четвертый принцип принцип разделения
00:03:25
интерфейса ай спик
00:03:26
интерфейсе григоришин трицепс много
00:03:29
интерфейса специально предназначенный
00:03:32
для клиентов лучше чем один интерфейс
00:03:33
общего назначения для всех об этом
00:03:35
подробнее почему так и пятый принцип
00:03:37
деп деп н сын вершин принципу
00:03:41
формулируется так зависимость на
00:03:43
абстракциях нет зависимости на что-то
00:03:46
конкретное абстрактность не должна
00:03:48
зависеть на конкретная конкретность
00:03:49
должна зависеть на абстрактность об этом
00:03:52
подробнее в 5-ом видео этого цикла а мы
00:03:54
переходим с вами к первому принципу срп
00:03:56
сингл приспособили ти принципу
00:03:59
[музыка]
00:04:01
для чего вообще все таки пару слов скажу
00:04:04
для чего вообще нужны принципов solid
00:04:06
они в первую очередь гарантирует то что
00:04:09
ну и при их соблюдении гарантирует что
00:04:11
вашу программу легко будет дополнять и
00:04:14
нужно расширять изменять то есть
00:04:16
поддерживать вы будете тратить меньше денег и времени
00:04:19
деньги время вы понимаете это одно и то
00:04:21
же и ваш код будет легко читать ваш код
00:04:25
любые легко находить нем ошибки это
00:04:28
главное наверное рука и легко
00:04:29
переиспользовать когда кот легко
00:04:31
переиспользовать он не разрастается в
00:04:33
диком количестве потому что когда кот
00:04:34
сложно переиспользовать обычно его
00:04:36
начинает копи-пастом скопировать и он
00:04:39
разрастается в нем возможных объемов
00:04:42
напоминают о том что существует такая
00:04:45
вещь как кот smells то есть
00:04:47
запахи года но об этом подробнее если
00:04:50
вам будет интересно не забудьте написать
00:04:52
в комментариях что вам интересно про код
00:04:54
смылся я буду запишу вам отдельное видео
00:04:56
по этому поводу это всякие вещи в духе
00:04:59
того по каким принципам по из каких
00:05:03
фактов мы можем определить что код
00:05:05
который мы написали если вам
00:05:08
интересно это напишите так у меня кстати
00:05:11
хотел вам напомнить о том что у меня
00:05:13
есть собственный по тренинг по гражд
00:05:17
ангов паттерном и он очень сильно
00:05:19
пересекается solid я даже там говорю об
00:05:22
этих принципах немножко пробежкой но мы
00:05:25
и пока будем говорить вот здесь про
00:05:27
принципе тоже будем задевать
00:05:28
периодически гора спуски и в чем-то даже
00:05:31
графские по там и но об этом подробнее
00:05:33
но серьезный я тут коротком видео все не
00:05:36
расскажу вы приходите лучше на тренинг и
00:05:37
учитесь как следовать и так принципы
00:05:40
инст иной ответственности сопи
00:05:42
каждый объект должен иметь одну
00:05:45
обязанность и это обязанность должна
00:05:46
быть полностью инкапсулированы в класс
00:05:48
это определение от роберта мартина
00:05:50
своими словами если что такое я тут
00:05:54
наверное взойдут немножко с другой
00:05:55
стороны вовсе его
00:05:58
программного обеспечения есть такая вещь
00:06:00
которая называется ось изменений то есть
00:06:03
этот те классы те методы эти функция те
00:06:06
поля те не знаю переменной которые
00:06:09
постоянно меняются если вы работаете на
00:06:12
проекте больше чем там полгода вы точно
00:06:14
можете сказать вот это класс постоянно
00:06:16
меняется вот этот и вот этот это
00:06:17
называется ось изменений программисты
00:06:19
говорят ось изменений проходят через вот
00:06:21
эти классы так вот если по-другому
00:06:24
сформулировать принцип срп
00:06:25
он означает через ваш вас должна
00:06:27
проходить только одна ось изменений да
00:06:30
если то есть ваш класс должен меняться
00:06:34
только по одной причине как этого
00:06:35
добиться добиться этого тем что ваш
00:06:38
класс должен содержать только поля и
00:06:42
методы относящаяся к одному вопросу
00:06:44
давайте я вам покажу это на картинке
00:06:47
смотрите предположим у вас есть класс вы
00:06:52
пишете mb этот систему у вас есть датчик
00:06:54
который умеет измерять время но мы
00:06:56
вместе с встроенный таймер и измерять
00:06:59
температуру до и вы такой ничтоже
00:07:02
сумняшеся рисуйте себе класс да который
00:07:06
называется ддт тендеры ща ну или как то
00:07:12
так да и у него есть соответственно поля
00:07:15
относящийся к работе с временем это
00:07:19
минус times и поль относящийся к
00:07:24
температуре
00:07:25
ну и соответственно методы которые
00:07:28
относятся частичной температуре частично
00:07:31
ко времени все хорошо и здорово потом к
00:07:34
вам приходит вася вася говорит чувак я
00:07:40
слышал ты писал классный класс который
00:07:42
умеет работать со временем я делаю
00:07:44
датчик времени меня там нет температуры
00:07:46
дай мне пожалуйста свой класс я буду его
00:07:47
переиспользовать
00:07:48
ты такой дом черт не могу тебе дать свой
00:07:53
класс там еще кучи температуры ну
00:07:54
забирай что сделает вася вася конечно
00:07:58
скажет ну блин чо-то мне лень писать
00:08:01
давай-ка сделаю свой класс работа с
00:08:05
дельтой мам
00:08:07
и просто сделаю копипастом из твоего
00:08:12
класса вырежу оттуда те кусочки которые
00:08:16
мне понравились остальные кусочки брать
00:08:19
не буду ну норм так приходит петя это
00:08:23
был вася а это будет петь и петь и
00:08:28
говорит слушай я делаю тут датчик
00:08:30
температуры у тебя есть классный класс
00:08:33
который имеет работать с температурой
00:08:34
дай мне его пожалуйста ты говоришь не
00:08:36
могу дать вот смотри вася не смог взять
00:08:39
ты пить и не сможешь взять
00:08:40
не пить от тоже ничтоже сумняшеся рисует
00:08:44
себе класс температуры
00:08:46
работа с температурой соответственно
00:08:49
сюда переезжают все методы точечка вопи
00:08:51
ps там потом ты сдаешь свой класс
00:08:53
тестирование тестировщики находят там
00:08:55
орды хрена багов как это всегда бывает
00:08:58
да ты тут правишь исправляешь как вы
00:09:00
думаете ваши исправлению попадут в этот
00:09:02
класс и в этот вы понимаете что нет
00:09:04
соответственно тестировщики потом
00:09:06
возьмут этот класс начнут там баги
00:09:08
находить найдут там баги которых не был
00:09:10
не нашли у вас и они не попадут к вам и
00:09:13
так далее так далее так далее я уже
00:09:15
молчу о том что вот этот код который мы
00:09:16
здесь видим минимум два раза увеличился
00:09:19
до то есть мы никак не могли бы это вот
00:09:24
скопировать что говорит нам срп
00:09:27
срп нам говорит о том что вы вместо того
00:09:30
чтобы заниматься ерундой должны были
00:09:32
сделать два отдельных класса 1 работы с
00:09:36
daytime
00:09:40
а второй работа с температурой вот если
00:09:49
вам нужен какой-то класс который
00:09:50
объединяет их вы могли в себе 1 рисовать
00:09:53
ваш del tempo рыча и отдать и напишу
00:09:55
потому что мне лень писать который
00:09:57
содержит это ромбик содержит и тот и
00:10:00
другой и делегирует им выполнение этих
00:10:04
методов и тогда когда к вам пришел бы
00:10:07
вася вы бы отдали ему вот этот класс
00:10:10
когда к вам пришел бы петя вы бы отдали
00:10:13
ему вот этот класс класс
00:10:17
поехали дальше
00:10:21
итак следование принципу когда мы
00:10:24
следуем принципу серпе
00:10:25
мы должны разделить как вы видите
00:10:28
классно более мелкие каждый из которых
00:10:32
выполняет одну и ту же работу нужно
00:10:35
и это об этом программист обычно
00:10:37
забывают слить в 1 класс разрозненные
00:10:42
куски которые лежат в разных местах но
00:10:44
относящиеся к одной
00:10:45
к одной теме и про одну например вас вся
00:10:48
работа с температурой могла быть
00:10:50
размазано по всему коду
00:10:51
это тоже нарушение сарпи потому что
00:10:54
фактически если у вас классе находится
00:10:56
кусок работа с температуры а другой
00:10:59
кусок работа с температуры разбросан по
00:11:02
всему коду то вы опять таки не можете
00:11:04
несчастного петь и выдать его кусок ну
00:11:06
типа собираю вас запчастей там по всему
00:11:08
коду и он опять таки сделает кпп есть
00:11:10
понимаете это тоже нарушение терпеть
00:11:13
обращаю ваше внимание что это очень
00:11:15
близко к паттерну grasp который называет
00:11:19
называется информация эксперт раз
00:11:21
правильно и второе собственно говоря
00:11:26
большинству других
00:11:27
паттернов начиная с даже с protected
00:11:30
variations
00:11:31
ну они вообще очень близко один из самых
00:11:35
частых нарушений принцип срп это году
00:11:39
обжиг это антипатр
00:11:40
про антипатр на я тоже рассказываю
00:11:42
подробно в курсе grasp ангов patterns
00:11:44
там есть еще антипа там так вот году
00:11:47
объект этот здоровенный класс которым
00:11:49
находится практически все обычно году
00:11:52
объект это нарушение информация эксперт
00:11:53
из grasp а ну и нарушение сорте и потому
00:11:55
что в этот класс
00:11:56
естественно вы записываете все
00:11:58
относящиеся ко всему и вы понимаете
00:12:00
через этот класс проходит все оси
00:12:02
изменений чтобы вашей системе не
00:12:04
поменялось какое бы не пришло требование
00:12:07
через request от заказчика вы будете
00:12:09
менять этот класс подходите через него
00:12:11
проходит все это плохо но вы понимаете
00:12:13
но что я хочу хотел сказать что все-таки
00:12:17
вы должны понимать что любые solid
00:12:19
принципы требует критического осмысления
00:12:21
это не значит что вот и такой вау хват
00:12:24
выхватываешь там свой светящийся с терпи
00:12:27
принцип из штанин с криками сейчас мы
00:12:29
тут все порубаем на хрен не делаете так
00:12:31
пожалуйста
00:12:33
десять раз подумайте продумайте это
00:12:36
прекрасно когда время обдумывание того
00:12:38
что вы сделаете превышает 10 раз чем
00:12:41
время того как вы это делаете поверьте
00:12:43
мне если вы работаете по другому
00:12:45
немножко подумали а потом фигачить и вы
00:12:48
сделаете тонны ошибок и потратите кучу
00:12:52
времени гораздо быстрее будет потратить
00:12:54
много времени на обдумывание только на
00:12:56
обдумывание нет просмотр котиков да вы
00:12:59
сидите с ручкой рисуете что-то похожее
00:13:01
себя а вот так сделаем а вот так а вот всегда
00:13:05
вот надо листочками с карандашом
00:13:07
даже не над компьютером потому что знаю
00:13:09
вас как только сиять эко за компьютер
00:13:11
сразу начинается там кончики видосики
00:13:14
еще не знала что ее соцсети вот
00:13:17
продумываете да ну и еще один момент на
00:13:20
который мы хотел сказать многие паттерн
00:13:22
и энтерпрайз например такой как active
00:13:25
record значит такое active record
00:13:27
надеюсь до октябре карта такая класс
00:13:29
умеет не только в бизнес у него есть
00:13:30
поля по поводу бизнеса но он умеет себя
00:13:33
еще вот цель study by и lot from baby ну
00:13:36
и там fine б идеи всякое такое то есть
00:13:38
умеете с собой работать в отношении с
00:13:42
базы данных то есть фактически у него
00:13:44
проходит 2 ответственность и
00:13:46
ответственность относящийся к бизнесу и
00:13:47
ответственности относящаяся к персис
00:13:49
танцу то есть он умеет себя сохранять и
00:13:52
восстанавливать из базы данных
00:13:53
ну и вы понимаете это однозначно
00:13:55
означает что через класс проходит две
00:13:56
оси изменений если во что-то изменилось
00:13:58
бизнесе меняются эти поля если что-то
00:14:00
изменилось в базе данных меняются эти
00:14:03
методы ну вы понимаете что это вообще
00:14:07
как бы не красивый в любом случае
00:14:08
нарушения срп но с другой стороны active
00:14:11
record ок простите за тавтологию
00:14:14
очень активно используется во многих
00:14:15
языках программирования например ruby on
00:14:17
rails полностью построен на active
00:14:18
record
00:14:21
php насколько я помню на active record
00:14:25
работает и лора в
00:14:26
и вай ой ой не знаю как он правильно
00:14:29
пишется ну то есть смотрите очень долгое
00:14:33
время кстати все sharp это же
00:14:34
использовался октября хода сейчас они
00:14:36
слава богу перешли на ура но если вам
00:14:38
интересно про энтерпрайз паттерн это про
00:14:40
это у нас отдельный тренинг enterprise
00:14:41
паттерны и там 90 видео я не буду
00:14:44
он в течение этого видео рассказывать
00:14:46
короче напишите пожалуйста в коментариях
00:14:49
насколько вам интересна такая тема мы
00:14:51
будем снимаете вам еще ну просто лет
00:14:52
точно расскажем если интересно про
00:14:54
что-то еще спрашиваете постараемся
00:14:56
записать вам отдельные видео на видите
00:14:58
акт пытался вкратце а получилось
00:14:59
длиннющие видео и простите это все
00:15:02
достаточно длинная тема люблю вас
00:15:04
подписывайтесь ставьте лайки и пока
00:15:09
[музыка]

Описание:

🔥 Новый поток моего авторского тренинга GRASP and GoF Design patterns стартует уже 01.02.2024 Регистрация 👉 https://pro.foxminded.ua/grasp-gof-design-patterns-advanced-on-line-course-1/ 1. На основе работы Роберта Мартина (дяди Боба). Акроним SOLID предложен Michael Feathers 2. SOLID (сокр. от англ. single responsibility, open-closed, Liskov substitution, interface segregation и dependency inversion) 1. SRP Принцип единственной ответственности (The Single Responsibility Principle) - Каждый класс должен иметь одну и только одну причину для изменений. 2. OCP Принцип открытости/закрытости (The Open Closed Principle) - программные сущности … должны быть открыты для расширения, но закрыты для модификации 3. LSP Принцип подстановки Барбары Лисков (The Liskov Substitution Principle) объекты в программе должны быть заменяемыми на экземпляры их подтипов без изменения правильности выполнения программы 4. ISP Принцип разделения интерфейса (The Interface Segregation Principle) много интерфейсов, специально предназначенных для клиентов, лучше, чем один интерфейс общего назначения 5. DIP Принцип инверсии зависимостей (The Dependency Inversion Principle) Зависимость на Абстракциях. Нет зависимости на что-то конкретное 3. Для чего нужны принципы SOLID 4. Запахи кода (Code smells) и антипаттерны 5. Собственный тренинг по паттернам и антипаттернам 6. Принцип единственной ответственности (SRP) каждый объект должен иметь одну обязанность и эта обязанность должна быть полностью инкапсулирована в класс 7. Следование принципу: 1. Разделение больших классов, делающих многое 2. Слияние мелких классов и объединение в одном классе однотипоной функциональности 8. Упрощает поддержку и расширение классов 9. Антипаттерны - типа GoD object 10. Требует осмысленного отношения 11. Active Record нарушает SRP Курсы для новичков: JAVA - https://foxminded.ua/ru/kurs-java-start-1/ JAVA Start - https://foxminded.ua/kurs-java-start/ Инструментарий JAVA - https://foxminded.ua/trening-instrumentaryj-java-1/ Automation QA (Java) - https://foxminded.ua/quality-assurance-1/ ANDROID - https://foxminded.ua/ru/android-1/ C#/.NET - https://foxminded.ua/ru/c_sharp_dot_net-1/ C# START - https://foxminded.ua/cs-start-1/ PYTHON - https://bit.ly/33oYmAw FRONT-END - https://foxminded.ua/ru/front-end-1/ SALESFORCE Developer - https://bit.ly/2Xn2L2S UI/UX дизайн - https://foxminded.ua/ru/ui-ux-design-1/ Project management - https://bit.ly/30oGFyO Обучение на проекте - https://foxminded.ua/obuchenie-na-proekte-1/ Продвинутые курсы для состоявшихся девелоперов: GRASP and GoF Design patterns - Enterprise patterns - https://foxminded.ua/enterprise-patterns-advanced-course/ Сайт Foxminded: https://foxminded.ua/ Foxminded в ФБ: https://www.facebook.com/unsupportedbrowser FoxmindEd в Instagram: https://www.facebook.com/unsupportedbrowser Foxminded в VK: https://vk.com/foxminded Мой Telegram: https://t.me/nemchinskiyOnBusiness Мой блог: www.nemchinsky.me 0:00 – вступление Сергея Немчинского 0:50 – все принципы SOLID вкратце 4:02 – для чего нужны принципы SOLID 5:42 – формулировка принципа SRP 6:47 – SRP на картинке 10:23 – как следовать SRP 11:35 – антипаттерн GoD object 12:15 – любые SOLID принципы требуют критического осмысления 13:20 – Active Record нарушает SRP

Готовим варианты загрузки

popular icon
Популярные
hd icon
HD видео
audio icon
Только звук
total icon
Все форматы
* — Если видео проигрывается в новой вкладке, перейдите в неё, а затем кликните по видео правой кнопкой мыши и выберите пункт "Сохранить видео как..."
** — Ссылка предназначенная для онлайн воспроизведения в специализированных плеерах

Вопросы о скачивании видео

mobile menu iconКак можно скачать видео "SOLID принципы: SRP (Принцип единственной ответственности, Single Responsibility Principle)"?mobile menu icon

  • Сайт http://unidownloader.com/ — лучший способ скачать видео или отдельно аудиодорожку, если хочется обойтись без установки программ и расширений. Расширение UDL Helper — удобная кнопка, которая органично встраивается на сайты YouTube, Instagram и OK.ru для быстрого скачивания контента.

  • Программа UDL Client (для Windows) — самое мощное решение, поддерживающее более 900 сайтов, социальных сетей и видеохостингов, а также любое качество видео, которое доступно в источнике.

  • UDL Lite — представляет собой удобный доступ к сайту с мобильного устройства. С его помощью вы можете легко скачивать видео прямо на смартфон.

mobile menu iconКакой формат видео "SOLID принципы: SRP (Принцип единственной ответственности, Single Responsibility Principle)" выбрать?mobile menu icon

  • Наилучшее качество имеют форматы FullHD (1080p), 2K (1440p), 4K (2160p) и 8K (4320p). Чем больше разрешение вашего экрана, тем выше должно быть качество видео. Однако следует учесть и другие факторы: скорость скачивания, количество свободного места, а также производительность устройства при воспроизведении.

mobile menu iconПочему компьютер зависает при загрузке видео "SOLID принципы: SRP (Принцип единственной ответственности, Single Responsibility Principle)"?mobile menu icon

  • Полностью зависать браузер/компьютер не должен! Если это произошло, просьба сообщить об этом, указав ссылку на видео. Иногда видео нельзя скачать напрямую в подходящем формате, поэтому мы добавили возможность конвертации файла в нужный формат. В отдельных случаях этот процесс может активно использовать ресурсы компьютера.

mobile menu iconКак скачать видео "SOLID принципы: SRP (Принцип единственной ответственности, Single Responsibility Principle)" на телефон?mobile menu icon

  • Вы можете скачать видео на свой смартфон с помощью сайта или pwa-приложения UDL Lite. Также есть возможность отправить ссылку на скачивание через QR-код с помощью расширения UDL Helper.

mobile menu iconКак скачать аудиодорожку (музыку) в MP3 "SOLID принципы: SRP (Принцип единственной ответственности, Single Responsibility Principle)"?mobile menu icon

  • Самый удобный способ — воспользоваться программой UDL Client, которая поддерживает конвертацию видео в формат MP3. В некоторых случаях MP3 можно скачать и через расширение UDL Helper.

mobile menu iconКак сохранить кадр из видео "SOLID принципы: SRP (Принцип единственной ответственности, Single Responsibility Principle)"?mobile menu icon

  • Эта функция доступна в расширении UDL Helper. Убедитесь, что в настройках отмечен пункт «Отображать кнопку сохранения скриншота из видео». В правом нижнем углу плеера левее иконки «Настройки» должна появиться иконка камеры, по нажатию на которую текущий кадр из видео будет сохранён на ваш компьютер в формате JPEG.

mobile menu iconСколько это всё стоит?mobile menu icon

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