Alexandr
И кто раскажет причины такого?) в чем особенность этих нилов?
🏁Александр
@onokonem в студию
Denis
переменная интерфейсного типа внутри состоит из двух частей: конкретного типа, который ей установлен, и ссылки на значение(которая может быть nil)
Anonymous
походу дела, они разного типа
Denis
переменная интерфейсного типа равна nil в том случае, если ее конкретный тип не установлен И ссылка на значение - nil
Denis
var i TestInterface var t *Test i = t
Denis
здесь в первой строчке переменная интерфейсного типа, конкретный тип не установлен, значение - nil
Denis
третья строчка - ей устанавливается конкретный тип(*Test), но значение все еще nil
Denis
однако I уже не равна nil, т.к. установлено конкретный тип
Denis
надеюсь понятно)
Anonymous
да, тип нил и значение нил разные вещи
🏁Александр
%!t(*main.Test=<nil>) %!t(*main.Test=<nil>)
Anonymous
🏁Александр
она даже не палиться
Alexandr
надеюсь понятно)
а почему тогда fmt.Println(i == nil) false fmt.Println(t == nil) true fmt.Println(t == i) true
Pawel
алгоритмы чего помимо сортировки и обхода дерева следует знать?
вставка в хеш-таблицу, стат. моделирование цепями Маркова
Denis
что тут не понятного конкретно? почему первая строчка false я вроде объяснил. почему вторая true должно быть понятно
Anonymous
а почему тогда fmt.Println(i == nil) false fmt.Println(t == nil) true fmt.Println(t == i) true
видимо потому что сравниваются структуры а не их значения
Denis
а почему третья true - потому как обе переменные ссылаются на оджни значения
Pawel
кому именно?
кому интересны оценки, которые ставит собеседуемый кому бы то ни было, и на что они влияют?
Anonymous
на выбор работодателя собеседуемым
🏁Александр
самое смешное, что на собеседовании могут спрашивать "100 видов сортировки", а на выходе из компании имеем просто говнокодище со слипами 🙂
Anonymous
самое смешное, что на собеседовании могут спрашивать "100 видов сортировки", а на выходе из компании имеем просто говнокодище со слипами 🙂
во-во, и плюс к тому ещё умение-знание 100 технологий обязательно нужно, из которых реально применяется две-три
🏁Александр
да и человек могущий дать оценку алгоритму по О может быть просто с мехмата такого то, но код у математиков "такой себе". Не знаю почему
🏁Александр
помню цитату одного теамлидера "увижу кастомную математику в проекте - оторву ваши кривые руки" 🙂
🏁Александр
что есть лузеры?
🏁Александр
ты либо решаешь задачу по бизнесу и приносишь денег
🏁Александр
либо не решаешь
Pawel
если ты не знаешь сортировок, то есть мнение, что ты профнепригодный и тупой мудак по жизни
🏁Александр
есть мнение что сортировки просто не используются? 🙂
V
а если помнишь все сортировки и пишешь код-лапшу в одном неймспейсе на глобальных переменных и без тестов?
🏁Александр
мне за год с лишним понадобилось только 1 раз отсортировать "на клиенте"
🏁Александр
остальное это выборки из библиотек или бд
🏁Александр
причем это была обычная встроенная сортировка
Pawel
а если помнишь все сортировки и пишешь код-лапшу в одном неймспейсе на глобальных переменных и без тестов?
это лечится, причём легко. А вот тупость и лень когда они одновременно - не лечатся
Stanislav
если ты не знаешь сортировок, то есть мнение, что ты профнепригодный и тупой мудак по жизни
сколько алгоритмов сортировок можешь реализовать не заглядывая в вики? :)
Pawel
quick и heap как минимум
🏁Александр
два? бгг
Stanislav
ну это мне кажется любой может и знает
Pawel
их собственно и надо знать
Pawel
нет, не любой далеко
🏁Александр
на случай чего?
Stanislav
просто на собеседованиях как то несолидно про них говорить, нет? :)
V
да в целом также и лечится алгоритмическая база, не вижу проблемы
V
а как же сортировка случайными перестановками?) сходу же)
🏁Александр
иногда на собеседованиях спрашивают вопросы которые гугляться просто за 5 минут
🏁Александр
спрашиваешь зачем когда есть гугл?
🏁Александр
и начинается...
🏁Александр
"вдруг отключат свет и мы будем писать гусиными перьями"
🏁Александр
конечно конечно
V
другое дело, что собеседуя берешь человека решать задачи по проекту как можно скорее, а не с целью вылечить
Stanislav
столкнулся всего два раза на собеседованиях с вопросами по сортировке. Оба раза хотели много за мало, как выяснилось.
Anonymous
причем это была обычная встроенная сортировка
вот и я про то что всё уже готовое есть. более того уже фреймворки есть под более сложные задачи )
🏁Александр
столкнулся всего два раза на собеседованиях с вопросами по сортировке. Оба раза хотели много за мало, как выяснилось.
и это логично, "обычно сортировки и мат анализ" начинают спрашивать "гики от IT" которые ботали в институте это все. У них деньги не в приоритете и они оседают в конторах где их "не трогают" 🙂
Anonymous
quick и heap как минимум
я проиграл с того, сколько гонору было из-за двух детских алгоритмов.
Pawel
просто на собеседованиях как то несолидно про них говорить, нет? :)
смотря какой бэкграунд и на какой левель человек собеседуется. если на юниора или просто есть какие-то сомнения в челловеке - то обязательно.
Denis
я проиграл с того, сколько гонору было из-за двух детских алгоритмов.
а на твой взгляд, что нужно на собеседовании спрашивать?
Ivan
нет, не любой далеко
У тебя прям припекает от людей, которые не знают хотя бы 10 видов сортировок.
🏁Александр
а на твой взгляд, что нужно на собеседовании спрашивать?
берете последную бизнес задачу и просите реализовать
🏁Александр
смотрите как человек решил
Stanislav
смотря какой бэкграунд и на какой левель человек собеседуется. если на юниора или просто есть какие-то сомнения в челловеке - то обязательно.
лично знаю двух людей, которые плавают в сортировке, но могут успешно решить кодом задачи бизнеса. Сортировки не показатель даже адекватности людей)
Denis
не знаю насчет конкретных алгоритмов, но вот человека с алгоритмической подготовкой наверное легко обучить языку например, а вот наоборот - вряд ли
🏁Александр
это заблуждения мне кажется
Anonymous
а на твой взгляд, что нужно на собеседовании спрашивать?
Не знаю, сложно сказать. Мне кажется нужно "в общем" смотреть понимает человек что есть эти сортировки или нет. А ожидать зазубренных алгоритмов того, чего ты использовать никогда не будешь это уже перебор
Bald
а зачем вообще знать алгоритмы сортировки?
Bald
достаточно про о() знать в общем
Pawel
У тебя прям припекает от людей, которые не знают хотя бы 10 видов сортировок.
у меня бомбит от тех ,кто не знает двух главных сортировок, хеш-таблиц, двоичных деревьев, обхода графов и цепей маркова. Таких я ментально пизжу и прогоняю с позором. К остальным - велкам
Alexandr
мне кажется это завсит от человека) ктото схватывает на лету и обладает интелектом, и логическим мышлением он обучится, что алгоритмам быстр, что кодом зная алгоритмы
Bald
любого алгоритма
🏁Александр
quick и heap как минимум
Pawel вот вы упомянули "quick и heap" и в каких же случаях вы будете их применять и почему?
🏁Александр
и будете ли писать с нуля реализацию или же возьмете библиотечную функцию
Denis
а зачем вообще знать алгоритмы сортировки?
надо знать не конкретные алгоритмы,а всякие О-нотации, сложность и т.д. чтобы в случае того, когда у тебя появится задачка, где надо написать более-менее оптимальный код, ты хотя бы был в состоянии понять разницу между О(n^2) и О(n)
Anonymous
Pawel вот вы упомянули "quick и heap" и в каких же случаях вы будете их применять и почему?
да не будет он их нигде применять, вангую, ему просто доставляет их знать.