Когда ты все это знаешь - можно смотреть и наслаждаться, как произносимое в видео гармонирует с тем, что ты ожидаешь услышать. Но когда ты изучаешь тему с нуля - все плохо. Это просто бормотание, не объясняющее, зачем нужны интерфейсы и когда их следует применять. Сделать сложное простым - это искусство, которое не многим покоряется.
Я когда 2 недели пытался понять зачем нужны интерфейсы, смотря это видео, перематывал каждый важный для себя момент, потому что реально не понятно. Но разбираясь в других темах, я прям горжусь автором, как он заключил самое важное в каждом слове. Жаль, что до сих пор не понятно до конца (мне)
@@enj0yer76 интерфейсы часто нужны когда ты не один код пишешь. И, допустим, кто-то пишет как сохранять логи в бд, а кто-то на диск. Структура которая это будет делать - не париться как именно. Но нужно что бы всегда были одинаковые названия методов. Вместо того, что бы лично договариваться, какие методы использовать, кто-то один раз интерфейс пропишет, а потом оба программиста будут его реализовывать, каждый под свое хранилище. Если он не реализует какой-то метод - то будет ошибка. И мало того, если появится какой-то третий способ сохранения данных (допустим в облаке), новый программист, глянет какой интерфейс и опять создаст свою реализацию.
Очень качественное видео, спасибо! Особенно порадовало наличие компутер саенс наряду с практическими примерами. Дикция, тихая музыка, разумная скорость подачи - огонь :)
спасибо за очередной контент. если возможно, хотелось бы попросить - не мог бы ты более практически делать, потому что подобной теории хватает уже, есть ряд каналов и статей, не хватает практических примеров из жизни. Например "я покажу на примере как мы будем тут реализовавать абстракцию и это позволит нам это и это", в реальном проекте.
хотелось бы еще побольше ньюансов о том как передаются параметры с типом заданным как итерфейс. например есть интерфейс context.Context и переменную ctx безопасно передавать из ф-и в ф-ю "по значению". потому что под капотом ctx это уже указатель а не сама структура. а почему оно указатель - непонятно. и как это увидеть не копая исходники пакета context.go - неясно.
Непонятно. Рассказываются догмы, которые нужно самому искать где-то и доказывать, что оно действительно так и применяется вот таким образом. Короче, конспект из лекции, в котором студент сам же не разберётся к концу семестра
Профи по видео монтажу. Советуют для своих видео добавить скорость 1.2 +- перечитай. Чтобы людям смотрелось норм. Мы типа медленно говорим на "камеру" вооот,а смотрим контент быстро. )
Я в го только захожу может не понимаю чего-то специфического для го, а нифига сравнивать 2 объекта? Тут либо надо сравнивать их истансы либо конкретно сравнивать поля инстансов. Ерунда какая-то в конце видео про сравнение… ежу понятно что неинициализированный объект(нулл) и инициализированный объект но со значением нулл не будут равными.
Когда функция возвращает интерфейсный тип, мы не знаем, там внутри просто nil или nil pointer. Особенно это важный момент при проверке ошибок, потому что error - это интерфейс. Вам никто не мешает реализовать error с помощью структуры, а затем в начале функции сделать var err *myError. Так делать я бы не рекомендовал, конечно, но чего только не найдешь в third party коде.
Согласен, видео не для совсем-совсем новичков - я постарался копнуть глубже в тему. Возможно, поможет понять изучение статей/видео на тему абстрактных типов данных, ну или хотя бы почитать, что такое интерфейсы в других (например, уже знакомых) языках и провести параллели.
Автор, посмотри определение туториала и переименуй видео как положено. Это никакой не туториал и не обьяснение. Это просто набор слов, хоть и дикция, и концепция интересна. Лучше, конечно, превратить в туториал и реально сделать туториал с написанием примеров.
Когда ты все это знаешь - можно смотреть и наслаждаться, как произносимое в видео гармонирует с тем, что ты ожидаешь услышать. Но когда ты изучаешь тему с нуля - все плохо. Это просто бормотание, не объясняющее, зачем нужны интерфейсы и когда их следует применять. Сделать сложное простым - это искусство, которое не многим покоряется.
именно
Я когда 2 недели пытался понять зачем нужны интерфейсы, смотря это видео, перематывал каждый важный для себя момент, потому что реально не понятно. Но разбираясь в других темах, я прям горжусь автором, как он заключил самое важное в каждом слове. Жаль, что до сих пор не понятно до конца (мне)
@@enj0yer76 интерфейсы часто нужны когда ты не один код пишешь. И, допустим, кто-то пишет как сохранять логи в бд, а кто-то на диск.
Структура которая это будет делать - не париться как именно. Но нужно что бы всегда были одинаковые названия методов.
Вместо того, что бы лично договариваться, какие методы использовать, кто-то один раз интерфейс пропишет, а потом оба программиста будут его реализовывать, каждый под свое хранилище. Если он не реализует какой-то метод - то будет ошибка. И мало того, если появится какой-то третий способ сохранения данных (допустим в облаке), новый программист, глянет какой интерфейс и опять создаст свою реализацию.
@@TakemuraGoro спасибо за ответ! Общая картина теперь более ясна )) осталось на практике прочувствовать
@@enj0yer76 пожалуйста. Вообще, всегда надо держать в голове, что будет команда. Многие вещи в программировании становятся более понятны из-за этого.
Очень качественное видео, спасибо!
Особенно порадовало наличие компутер саенс наряду с практическими примерами.
Дикция, тихая музыка, разумная скорость подачи - огонь :)
Смотрел на х1.5 - мега комфортно, очень понятно, отличная дикция и подача.
Очень крутые видео, жаль, что мало!
пиздеж, даже на 1х очень быстро
Жаль что не нашёл этот канал раньше, много бы времени сэкономил с такой четкой и понятной подачей информации
Спасибо за видео! Супер качество!
Хотелось бы ещё услышать про конкурентное программирование и реализации базовых типов «под капотом»
Записал ✍️
@@deferpanic не пропадай :-(
Спасибо за контент. Как минимум вдохновляет отвлечься от работы и достичь правильной цели.
Очень полезный материал для тех кто планирует работать в рефлексии
манера подачи и разбор+оформление топ)
Видео оч крутые, спасибо за качественную работу, ждем новых
Спасибо, очень круто разобрали!
отличное видео, жду продолжение
Я тут один кто не понял что такое интерфейсы?
Не один
Название канала огонь!
Спасибо большое за видео.
Огонь 🔥🔥👍
спасибо за видео!)
Супер!!! 👍
спасибо за очередной контент. если возможно, хотелось бы попросить - не мог бы ты более практически делать, потому что подобной теории хватает уже, есть ряд каналов и статей, не хватает практических примеров из жизни. Например "я покажу на примере как мы будем тут реализовавать абстракцию и это позволит нам это и это", в реальном проекте.
Спасибо за фидбек! Учту )
хотелось бы еще побольше ньюансов о том как передаются параметры с типом заданным как итерфейс. например есть интерфейс context.Context и переменную ctx безопасно передавать из ф-и в ф-ю "по значению". потому что под капотом ctx это уже указатель а не сама структура. а почему оно указатель - непонятно. и как это увидеть не копая исходники пакета context.go - неясно.
очень нужно разобраться в теме интерфейсов, посоветуйте еще видосов, тут ничего не понял. Может есть что-то прпроще
Иногда линтер жалуется на интерфейсы.
Например нельзя делать возврат интерфейсов
Ты это сеньорам расскаживаешь ? 😊
Ещё видео будут?
Да, конечно, просто накладочка вышла у меня со времени ) либо на этой, либо на следующей неделе
Непонятно. Рассказываются догмы, которые нужно самому искать где-то и доказывать, что оно действительно так и применяется вот таким образом. Короче, конспект из лекции, в котором студент сам же не разберётся к концу семестра
Профи по видео монтажу. Советуют для своих видео добавить скорость 1.2 +- перечитай. Чтобы людям смотрелось норм. Мы типа медленно говорим на "камеру" вооот,а смотрим контент быстро. )
Почему я до сих пор не вижу твоего лица в кадре?! Ёлы-палы!
nil-не всегда тот, за кого себя выдает(с) Где то заплакал питонист.))
Я в го только захожу может не понимаю чего-то специфического для го, а нифига сравнивать 2 объекта? Тут либо надо сравнивать их истансы либо конкретно сравнивать поля инстансов. Ерунда какая-то в конце видео про сравнение… ежу понятно что неинициализированный объект(нулл) и инициализированный объект но со значением нулл не будут равными.
Когда функция возвращает интерфейсный тип, мы не знаем, там внутри просто nil или nil pointer. Особенно это важный момент при проверке ошибок, потому что error - это интерфейс. Вам никто не мешает реализовать error с помощью структуры, а затем в начале функции сделать var err *myError. Так делать я бы не рекомендовал, конечно, но чего только не найдешь в third party коде.
Нихуя не понял но очень итересно, пойду поиющу на гит хабе примери, потом прийду опять
очень быстро и сложно объясняет
полезно будет только тем, кто хочет вспомнить
если узнать что это, то скип
Крутое и качественное видео!
Но я чувствую себя инвалидом, смотря через телефон (
would love to see it in english
Hey mate! I've added english subs. And I'll add subs for other my videos a bit later. Thank you!
А для какого уровня такая подача материала? Я, как новичок, вообще нихрена не понял с этими абстракциями.
С чем предварительно можно ознакомиться?
Согласен, видео не для совсем-совсем новичков - я постарался копнуть глубже в тему. Возможно, поможет понять изучение статей/видео на тему абстрактных типов данных, ну или хотя бы почитать, что такое интерфейсы в других (например, уже знакомых) языках и провести параллели.
Далеко не самое лучшее объяснение. Те, кто не знают про интерфейсы ничего не поймут
Голос как у xpuct
a.(string)
Самое худшее объяснение интерфейсов, которое я видел в интернете в принципе
Автор, посмотри определение туториала и переименуй видео как положено. Это никакой не туториал и не обьяснение. Это просто набор слов, хоть и дикция, и концепция интересна.
Лучше, конечно, превратить в туториал и реально сделать туториал с написанием примеров.
посмотрел 5 минут и ни чего не понял
Нихрена не понятно