там где идет преобразования одного интерфейса к другому, они говорят что не получиться, хотя это не так там где идет печать в дефере тоже оба говорят не правильно
@@alexandrk5715 а что по-вашему в озоне работают разработчики уровня "бог"?😮 Точно такие же разрабы, как и в других компаниях. Давно пора уже перестать обожествлять бигтех-компании
Да, 21:18 выведется 456. Мы ведь по замыканию обращаемся к переменной. А значит по указателю. А что по поводу преобразования? Можешь подробней описать?
@@MrLotrus там где даа интерфейса AB BC. Мы создали переменную с АБ и дальше ее можно заасертить в БЦ, а они говорят что это не сработает из-за области видимости, хотя я не понял к чему там область видимости
Я когда смотрел, на этих двух моментах как раз думал, что ошибся, особенно с defer и замыканием, а оказывается правильно помню, надо перепроверить сегодня
все это потому что видео кодинга, на минуты две-три идет раньше видео. поэтому когда один отвечает что код выведет 123, на экране уже прошло 2-3 минуты, и он этот код уже пофиксил так что он выводит 456
Почему программистов на собеседованиях просят писать код, но не просят водителей водить машину, дабы удостовериться что те реально являются водителями, а не просто купили права?
Мб я что-то не понял, но где паника у мапы? И почему она будет если записать по несуществующему ключу? Мапа как раз отличается от массива тем, что всегда есть индекс по ключу, кроме случая nil, но тогда она расширяется автоматически под капотом
Вопрос был про nil map, то есть неинициалириванная мапа. Про записи в такую мапу возникнет runtime panic. Вы написали про запись в мапу с несуществующим ключом.
@@obi3kenobi Хорошо, спасибо, но я все равно не понимаю почему запись делает ошибку, а чтение - нет, ведь переход по 0 указателю обычно undefined behaviour
Чтобы получить панику и ошибку fatal error: concurrent map read and map write надо запустить две горутины и прям долбить запись и чтение например. Тогда действительно в определенный момент запаникует
Задачка конечно по мультиплексированию простенькая, не задал он вопроса сразу про то будут ли закрыты каналы, а если пришли не закрытые то можно проверить по ok закрыты ли. И сразу wait group приходит на ум, конечно, бесконечный цикл это сильно в каналах использовать. Удивительно что с таким уровнем вообще на работу его взяли. Поплыл чел
По задаче. Создавать горутину и сразу в ней еще одну, конечно можно, но выглядит грязно. Можно было спокойно вынести вейтгруппу на верх и запустить отдельную горутину под ожидание и закрытие канала.
там где идет преобразования одного интерфейса к другому, они говорят что не получиться, хотя это не так
там где идет печать в дефере тоже оба говорят не правильно
Да, полная чушь. Странно, что тим лид из озон этого не знает. А еще курсы продают(
@@alexandrk5715 а что по-вашему в озоне работают разработчики уровня "бог"?😮
Точно такие же разрабы, как и в других компаниях. Давно пора уже перестать обожествлять бигтех-компании
Да, 21:18 выведется 456. Мы ведь по замыканию обращаемся к переменной. А значит по указателю. А что по поводу преобразования? Можешь подробней описать?
@@MrLotrus там где даа интерфейса AB BC. Мы создали переменную с АБ и дальше ее можно заасертить в БЦ, а они говорят что это не сработает из-за области видимости, хотя я не понял к чему там область видимости
С интерфейсом не получилось бы приведение типов, а type assertion как у них - да, получится. Потому что runtime знает, что под AB обёрнут Foo
они говорят примерно на 10:30 что var f AB = &Foo{} не преобразуется в y := f.(BC), а на самом деле преобразуется
21:00 тоже выводится 456 а не 123
Я когда смотрел, на этих двух моментах как раз думал, что ошибся, особенно с defer и замыканием, а оказывается правильно помню, надо перепроверить сегодня
все это потому что видео кодинга, на минуты две-три идет раньше видео. поэтому когда один отвечает что код выведет 123, на экране уже прошло 2-3 минуты, и он этот код уже пофиксил так что он выводит 456
Желаю развития каналу и побольше подобных интервью и интересных задачек.
Код раньше контекста диалога появляется)
Люблю Гошку и смотреть познавательные ролики связанные с разработкой.
Отличный собес, задачки интересные, спасибо!
Надо перезалить нормально видео чтобы звук и текст были синхронные, а то невозможно смотреть
Красава, приятно слушать
Почему программистов на собеседованиях просят писать код, но не просят водителей водить машину, дабы удостовериться что те реально являются водителями, а не просто купили права?
у программиста нет прав
Мб я что-то не понял, но где паника у мапы? И почему она будет если записать по несуществующему ключу? Мапа как раз отличается от массива тем, что всегда есть индекс по ключу, кроме случая nil, но тогда она расширяется автоматически под капотом
Вопрос был про nil map, то есть неинициалириванная мапа. Про записи в такую мапу возникнет runtime panic. Вы написали про запись в мапу с несуществующим ключом.
@@obi3kenobi Хорошо, спасибо, но я все равно не понимаю почему запись делает ошибку, а чтение - нет, ведь переход по 0 указателю обычно undefined behaviour
Смотреть такое очень плохо. Не понятно кто что пишет и когда. Рассинхрон текста и слов это очень плохо для восприятия
просто открываете соседнюю вкладку и оставляете там звук, а в той которую смотрите звук выключаете и отматываете на минуту назад )
Таки, что-то слабовато
27:00 Воспроизвел в go playground. Выполнилось без паник что конкуретно пишем в мапу.
Чтобы получить панику и ошибку fatal error: concurrent map read and map write надо запустить две горутины и прям долбить запись и чтение например. Тогда действительно в определенный момент запаникует
засуньте создание этих горутины в цикл
i := 0; i < 1000; i++
@@OOOJohnJ я не утверждал что нет дата рейса
Задачка конечно по мультиплексированию простенькая, не задал он вопроса сразу про то будут ли закрыты каналы, а если пришли не закрытые то можно проверить по ok закрыты ли. И сразу wait group приходит на ум, конечно, бесконечный цикл это сильно в каналах использовать. Удивительно что с таким уровнем вообще на работу его взяли. Поплыл чел
Ребят, потренируйте дикцию. Иногда сложно понять что говорите
Смотрю на скорости x2
всё норм
По задаче. Создавать горутину и сразу в ней еще одну, конечно можно, но выглядит грязно. Можно было спокойно вынести вейтгруппу на верх и запустить отдельную горутину под ожидание и закрытие канала.
Дада 2 года коммерческой разработки, сказочник!