Собеседование Middle C++

  Рет қаралды 22,239

Ambushed Raccoon

Ambushed Raccoon

Күн бұрын

Всем привет!
Провели тренировочное собеседование с Данилом
на позицию Middle C++ Developer.
Приятного просмотра!
telegram: t.me/AmbushedR...
Не забудьте поддержать видео :)

Пікірлер: 133
@vladimirchizh8853
@vladimirchizh8853 Жыл бұрын
Мне одному кажется, что собеседование называется мидл, а вопросы задают на позицию джуниор?
@vladimirchizh8853
@vladimirchizh8853 Жыл бұрын
@A VP Я согласен с этим, но не полностью, когда вопросы слишком просты то и рассуждать не о чем. Решение лежит на поверхности.
@alexeyfadieiev4070
@alexeyfadieiev4070 Жыл бұрын
Согласен, базовые вопросы, больше для Джуна чем на Миддла. Миддл по факту данные темы уже должен знать.
@vilture5706
@vilture5706 Жыл бұрын
Если учитывать, что миддл должен в совершенстве знать все основные паттерны, алгоритмы и технологии. А сеньор это миддл умеющий в организацию, то да.
@alazarn7
@alazarn7 Жыл бұрын
трэйни
@vilture5706
@vilture5706 11 ай бұрын
@@drm365 Без опыта разработки нельзя узнать паттерны. Спрашивая паттерны и прося пример их применения сразу 2 зайцев забиваешь.
@СергейСоловьев-у7б
@СергейСоловьев-у7б Жыл бұрын
Данил большой молодец!) Мне понравилось собеседование, прям посмотрел на одном дыхании)) Спасибо Ambushed Raccoon) Особенно часть с архитектурой, т.к. в большинстве случаев от Middle программиста ждут архитектурных решений с принципами SOLID, паттернами и т.д. Надеюсь в скором времени будут вопросы про другие паттерны проектирования, а не только про анти-паттерн SINGLETON))
@yakwilik
@yakwilik Жыл бұрын
Синлтон не антипаттерн
@fein7068
@fein7068 4 ай бұрын
С каких пор у нас синглтон стал антипатерном?
@silvermedved3562
@silvermedved3562 Жыл бұрын
глянув это собеседование, чувствую себя сеньером, но работаю на позиции мидл а получаю зарплату джуна =(
@ambushedraccoon6408
@ambushedraccoon6408 Жыл бұрын
Гляньте другие)
@MegaMitrandir
@MegaMitrandir Жыл бұрын
жиза ))
@dotlvforge5631
@dotlvforge5631 Жыл бұрын
Я недавно чуть в такую компанию не попал)0)00)))) Проект с ограниченным бюджетом, стартап хиленький.
@raphaelosipov867
@raphaelosipov867 Жыл бұрын
Меня хватило на 13 минут, если это и миддл, то прям джун+, т.к. для виртуального метода писать abstract просто не позволительно:) Дальше смотреть даже не стал, автор молодец, поднимите уровень требований к собеседнику, иначе введете в заблуждение людей:)
@addressmodel2121
@addressmodel2121 Жыл бұрын
@@raphaelosipov867 , человек на Си шарп программирует в выходные дни. У него смесь языков в голове. В Си шарп есть слово abstract. Кстати, на собеседованиях по Си шарп не думайте что будет легче, чем на C++ - просто там синтаксис языка почти не спрашивают - он всё равно простой. А спрашивают методы использования библиотечных классов в каких то реальных задачах. Например, тебе могут задать такие вопросы: 1) напиши как считать веб страницу с интернета; 2) напиши как перечислить в цикле контролы, уже размещённые на форме; выведи названия этих контролов в строку; 3) напиши примерной код, перечисляющий компьютеры в локальной сети; 4) есть некоторый объект класса, созданный в некотором процессе; напиши, как передать этот объект класса в другой процесс на этой же машине и как передать по локальной сети; 5) напиши пример наиболее быстрого рисования квадратов в окне стандартными библиотеками дот нет.
@bilbosumkin2100
@bilbosumkin2100 Жыл бұрын
Фига, меддисон стал с++ программистом
@Eugenij7
@Eugenij7 11 ай бұрын
Смешные комментарии, неужели непонятно, что весь ролик это постановка с целью развести любого знакомого с С++ на комментарии? Особенно порадовал момент когда ведущий на "серьёзных щах" называет дву-связный список деревом, а другой пытается обойти его сразу в 2 стороны и при этом ведущий говорит41:32 "да, для меня тоже выглядит рабочим" я так не веселился уж давно, спасибо.
@stepan_chous
@stepan_chous 2 ай бұрын
ща подушню немного. двусвязный (без циклов) список является деревом, так как деревом называется связный ацикличный граф. а так, да, согласен, dfs неприлично много усилий потребовал
@bulbul01124
@bulbul01124 Жыл бұрын
Этот чел точно не мидл, он даже не джун
@ЮрийРепин-т4к
@ЮрийРепин-т4к Жыл бұрын
Мне кажется парень слабоват для позиции мидл?
@fein7068
@fein7068 4 ай бұрын
Ну есть такое, ничего страшного, подрастет, главное что устроился.
@romanderevyanko520
@romanderevyanko520 Жыл бұрын
касательно const_cast и "убрать модификатор const", важный момент, если убрать модификатор const у изначально константного объекта дальнейшее его использование приведёт к undefined behaviour. Это важно понимать, особенно когда зададут вопрос такой на собеседовании. ``` const char *someStr = "const_str"; char *str = const_cast(someStr ); Дальше использование приведёт к undefined behaviour ``` ну и volatile позволяет убирать еще
@bdick8136
@bdick8136 Жыл бұрын
За const_cast в коде надо выдавать леща. Как и за volatile. Проектировать надо лучше.
@romanderevyanko520
@romanderevyanko520 Жыл бұрын
@@bdick8136 если бы все было бы так просто, то все свелось бы к меньшему количеству языков и к меньшему количеству доступных синтаксических слов и конструкций. Зависит от проекта, архитектуры , code style и вообще подхода команды в целом. В одном проекте да, использование подобных вещей это плохо, в каком-то проекте есть гарантии о «exception safety» например и использование исключений приведет к получению по рукам, а другой проект , какой-нибудь embedded, в котором отключение некоторых оптимизаций необходимо , а так же если очень нужен memory mapped IO, то там volatile будет нужен. Всегда нужно понимать что пишешь, зачем и что это даст…
@bdick8136
@bdick8136 Жыл бұрын
@@romanderevyanko520 очень странно конечно пытаться отстрелить себе ногу в приведенных выше примерах. Но впрочем это ваше право :)
@sashkastepashka
@sashkastepashka Жыл бұрын
@@bdick8136 умничать - это всегда просто. До тех пор, пока в досконально продуманной и задизайненной системе, архитектор, а по-совместительству и программист, в одном из фиксов не написал const_cast. В итоге, ревьювер орёт на архитектора, архитектор орёт на ревьювера. Неделя работы, редизайн компонента и const_cast исчез. Естественно, все дураки и только какой-то челик рандомный на ютубе умный.
@ic6406
@ic6406 Жыл бұрын
@@bdick8136 const_cast можно если это либовый код и ты точно знаешь как был создан объект, в остальных случаях согласен, леща надо
@dubrovinan
@dubrovinan Жыл бұрын
Спасибо за ролик, завтра первый собес, на ваши вопросы вроде ответил)
@Iighter
@Iighter Жыл бұрын
ну и как?
@dubrovinan
@dubrovinan Жыл бұрын
@@Iighter Технический собес прошел успешно,. Пытались завалить теоретическими вопросами, думал долго, но ответил на все. На следующей неделе будет беседа с директором и hrbp, на ней решат, адекватный я или нет)
@Iighter
@Iighter Жыл бұрын
@@dubrovinan ну красавчик) а вопросы посложнее чем тут или подобные?
@dubrovinan
@dubrovinan Жыл бұрын
@@Iighter Спасибо. Вопросы были гораздо сложнее: что такое L1, L2, L3 кэш, кэш линия, как они работают, про C++ задали пару-тройку вопросов (основы), многопоточность (OpenMP), умножение матриц (Написать код на доске, скомпилировать в голове и оптимизировать через OpenMP и перемену местами пары циклов), как числа с плавающей точкой представлены в компьютере, и многое другое. Опыт бесценный, интересный
@Iighter
@Iighter Жыл бұрын
@@dubrovinan Это что на джуна???
@s.g.7213
@s.g.7213 Жыл бұрын
Override ..... И сразу такой косяк прямо со входа.... Ой ой ой. Кстати, я против всегда был такого коллапса If в одну строчку. Это красиво , это лаконично, но это сложнее отладить особенно если под рукой только консоль c gdb. Куда в таком случае поставить точку останова , чтобы быстро понять по чему функция вернула не то значение? С одной стороны, когда у нас из функции один выход, то работает return value optimization , и это надо помнить когда мы возвращаем большие объекты по значению, с другой в данном случае это 1 байт. Синглтон в принципе плохо, тем что это глобальная статическая переменная по сути , да проблема инициализации решается , но он продолжает нести все минусы глобальной переменной. Нет контроля доступа , и нет возможности его удалить и очистить память им занимаемую. Например в моей работе есть строгое требование, что после удаления объекта модуля системой, в памяти не должно оставаться ничего после него.
@s.g.7213
@s.g.7213 Жыл бұрын
​@cypherpunks01 "Всё яд ,и всё лекарство." Надо понимать для чего он хорош, а для чего плох. Например для какой-нибудь глобальной системы логирования , или единого генератора случайных чисел, подойдёт идеально.
@ic6406
@ic6406 Жыл бұрын
Синглтон легко "удаляется" через кастомный cleanup метод в конце мейна. Просто надо правильно уметь готовить эти штуки, а не сломя голову всё по солиду делать.
@addressmodel2121
@addressmodel2121 Жыл бұрын
12:40 - вот так то! Каждый плюсовик с шарпом в выходные дни балуется!
@ambushedraccoon6408
@ambushedraccoon6408 11 ай бұрын
Во современных реалиях довольно сложно не затрагивать другие языки программирования.
@addressmodel2121
@addressmodel2121 11 ай бұрын
@@ambushedraccoon6408 , представьте что появилась оконная графическая библиотека для использования в C++ проектах, со следующими характеристиками: 1) весит 100 мегабайт; 2) распространяется в виде одного или нескольких DLL модулей; 3) подключается без особых приключений к проектам буквально вручную; 4) не требует мастера создания компоновки окна элементами управления; 5) элементы на окно компонуются вручную из самого текста программы; 6) дружит с многими средами разработки. Ну станут ли после этого люди обращаться к каким то другим языкам? - Вряд ли станут. Полностью всё на С++ будут делать.
@fein7068
@fein7068 4 ай бұрын
Я с шарпа пересел когда на плюсы, обратно чет не тянет)
@PlotnikovAnd
@PlotnikovAnd 2 ай бұрын
Вопрос на миллион: а будет ли вообще такой обход по дереву работать? Проверки, что указатель влево / вправо у 1го и 2го дерева соответственно не nullptr отсутствует, т.е. если мы дошли до листа дерева, проверили, то выходим и говорим, что все ок, деревья одинаковые. Но обход должен заканчиваться самым правым элементом. Я ошибаюсь? UPD: круто решение, работает. Оказывается обход по дереву может быть очень простым и изящным. Тут можно было бы еще вспомнить о переполнении стека при рекурсивных вызовах. Обычно же поэтому рекурсию не рекомендуется использовать (что во многих кейса можно переписать через цикл, не знаю как тут).
@ambushedraccoon6408
@ambushedraccoon6408 Ай бұрын
В большинстве случаев рекурсию можно переписать в цикл. Как на мой вкус рекурсивное решение больше подходит для собеседований, потому что получается более читаемое и лаконичное.
@IgorPolozov-uu5fn
@IgorPolozov-uu5fn 2 ай бұрын
public в наследовании не написал
@Mez0ry1337
@Mez0ry1337 Жыл бұрын
с первых минут 3 кринжанул чето)
@АндрейПетров-м1б
@АндрейПетров-м1б Жыл бұрын
Честно говоря, совершенно не считаю возможным для себя подаваться даже на джуна, но с ответа на вопрос про override тоже выпал хД
@Mez0ry1337
@Mez0ry1337 Жыл бұрын
@@АндрейПетров-м1б Думаю лучше вместо этого вопроса спросили бы его про SFINAE было бы получше, просто джунский вопрос на мидловском собесе и правда кринжовато но что еще более забавно и на override он не ответил.
@mrbibis7229
@mrbibis7229 4 ай бұрын
@@Mez0ry1337 ну справедливости ради override на компиляцию и логику виртуального полиморфизма не влияет, так что это можно было бы простить, просто чел лютый жесткарь и на такую штуку времени не тратит))) Но на некст вопросы он лучше отвечать не стал
@aanoonymouss
@aanoonymouss Жыл бұрын
Проиграл в голос с обоих. Даня на миддла не тянет явно (ну тут обьективно, без обид бро) Самое смешное, автор канала тоже не тянет на миддла. От этого такие ролики вдвойне смешнее смотреть! Жду, когда он про О-сложность узнает, или начнёт работать над реальными проектами )) Требую больше собесов!!!!1
@aanoonymouss
@aanoonymouss Жыл бұрын
Забыл добавить, пока что один из моих любимых каналов :3
@arthurlouiskarl
@arthurlouiskarl Жыл бұрын
а в чём собеседующий был не прав?
@ic6406
@ic6406 Жыл бұрын
Автор канала то нормально спрашивает, а второй чисто джун это без сомнения
@yakwilik
@yakwilik Жыл бұрын
У него не будет аргументов. Напишет какую-нибудь агрессию и сольется. Мне, конечно, тоже не нравится, что автор называет автоматическую память стеком, но для собеседования Джуна это норм.
@aanoonymouss
@aanoonymouss Жыл бұрын
@@yakwilik Да изи. 1. override. Вещь из 11-го стандарта. Это вопрос для Intern уровня 2. IOManager - вопрос для джуна (это база ООП/С++) 3. терминология (GodObject, OpenClose) - для задротов и студентоты. Кроме них никто даже не вспомнит такие названия. У каждой команды будет свой набор таких определений. Нахер 4. про множество мелких файлов - вообще бред. И от Дани, и от автора 5. про возврат ссылки на локальный обьект - для интернов 6. там же про UD. "Может как отработать, так и не отработать". Тут автор тупо не понимает, ПОЧЕМУ может крашнуться, или же выполниться. Такое стыдно не знать миддлу. 7. про Singleton - сразу бред. Хочу посмотреть на лицо автора, когда он узнает, что в нормальной реализации их можно создавать и удалять по желанию. Думаю, автор еще даже не встречал проблему порядка создания/удаления глобальных обьектов, и зависимостей между такими обьектами )) Короче, такие вопросы - для джунов. Если автор их задает в теме "Middle C++" - ну о уровне автора можно сразу делать предположения. Не хейт. Здравая критика.
@ALl_ECo_SAY
@ALl_ECo_SAY Жыл бұрын
С каких пор в Unreal PlayerController это синглтон?)))) Что же интересно делает сервер, у которого сразу несколько плер контроллеров отдельных игроков....
@mrbibis7229
@mrbibis7229 4 ай бұрын
Но вообще-то PlayerController не реплецируется ни клиентом, ни сервером. Существует в виде уникального инстанса у каждого (клиента и сервера). Вам нужно почитать про SimulatedProxy, там не будет никакого PlayerController'а. Архитектурного его можно назвать синглтоном, хотя конечно никто не мешает во время игры заменить классы PlayerController'ов.
@loplop9527
@loplop9527 Жыл бұрын
5:53 "Объявим метод с такой же сигнатурой" Это про простое наследование так выразился ?
@ambushedraccoon6408
@ambushedraccoon6408 Жыл бұрын
Почему же. Наследование - это наследование. А методы мы можем перекрыть или переопределить. Тут для сохранения интриги в вопросе и сформулировал его как "Объявим метод с такой же сигнатурой". По сути именно это мы и делаем.
@IgorPolozov-uu5fn
@IgorPolozov-uu5fn 2 ай бұрын
В гетере неконст ссыль вернуть? Это не джун даже. Отписался.
@dieserpaniker
@dieserpaniker Жыл бұрын
Пацан что-то вообще плывёт. Похоже не на собес, а на лекцию ментора
@maroo2014
@maroo2014 Жыл бұрын
На 30-й минуте -- вы чего!? Констовые ссылки возвращать можно!! И объект будет жить на стеке, пока жива ссылка. Так что со ссылкой const S& cs -- всё нормально. А вот с не константной ссылкой S& s --- такой номер уже не пройдёт, и там проблема (и ТОЛЬКО там), поскольку объект разрушится при выходе из функции, и ссылка будет не валидна. И тут не надо "пробовать" (закрашится \ не закрашится) -- просто читайте стандарт!
@ambushedraccoon6408
@ambushedraccoon6408 Жыл бұрын
Не ну вот прежде чем писать сами бы и почитали. А еще лучше продебажили бы, чтобы убедиться, что прочитанное правильно поняли. вот код для проверки: class CommentAboutReferences { public: struct Inner { int _x = 5; Inner() { std::cout
@МихаилГригорян-ж9п
@МихаилГригорян-ж9п 5 ай бұрын
Не надо писать бред, maroo. Конст-референс удерживает от разрушения временный объект. Здесь его не создают. Там объект на стеке лежит, он не временный. Если написать так: class A{}; // функция возвращает объект по значению A foo() { return A(); } ... const A & aref = foo(); // временный объект создался // далее проблем с aref нет
@denys.martyniuk
@denys.martyniuk Жыл бұрын
Чувак шарпист что ли, override, abstract...
@nmg_prm
@nmg_prm Жыл бұрын
abstract можно указывать, это синоним =0, указывается конце
@shark9725
@shark9725 Жыл бұрын
чего??? что-то новенькое
@Iighter
@Iighter Жыл бұрын
ты пьяный?
@billjohnes9380
@billjohnes9380 Жыл бұрын
Вы хотя бы попробовали, прежде чем писать такое?
@nmg_prm
@nmg_prm Жыл бұрын
@@billjohnes9380 естественно
@nmg_prm
@nmg_prm Жыл бұрын
@@billjohnes9380 поправка: actually keyword abstract exists in C++ (VS2010 at least) and I found it can be used to declare a class/struct as non-instantiated.
@ic6406
@ic6406 Жыл бұрын
Походу промахнулся я когда на middle c++ шёл, надо было уже на синьора идти, раз такие мидлы щас пошли
@ic6406
@ic6406 Жыл бұрын
Честно говоря для middle уровня этот чел это просто жесть. У меня на джуна такие вопросы были несколько лет назад
@user-vladislav7
@user-vladislav7 11 ай бұрын
@@ic6406 вопрос про override даже стажеру стыдно задавать - знать должен базу по умолчанию
@mrbibis7229
@mrbibis7229 4 ай бұрын
ну без гпт и cppreference каждый 3й мидл становится джуном)))
@ic6406
@ic6406 4 ай бұрын
@@mrbibis7229 Не, не согласен. Иначе можно было бы любого человека без знаний программирования и с умением пользоваться гпт считать джуном. Но если человек не знаком с программированием, то у него даже нет в голове знаний концепций переменных или функций, следовательно базовую программу он написать не сможет в разумное время. Я лично оцениваю разработчика по знаниям концепций, а не по знанию языка
@anatoliyv5607
@anatoliyv5607 Жыл бұрын
Хз я бы не ответил вообще ни на что но программы пишу
@sashkastepashka
@sashkastepashka Жыл бұрын
Все немножко сложнее, чем "программы писать".
@vilture5706
@vilture5706 Жыл бұрын
@@sashkastepashka Смотря какие программы пишет.
@ljoikmhykh
@ljoikmhykh 5 ай бұрын
И сколько платят за этот фуфел?
@ЕвгенийГригорьев-ш9ц
@ЕвгенийГригорьев-ш9ц Жыл бұрын
Про override мне не понравились ответы ни что у первого ни что у второго гражданина. Так прозвучало, что - "что override нужен только чтобы посмотреть и убедится, что какой-то метод переопределяет какой-то другой?" Аллоуэ - Карл! Кому посмотреть куда и зачем?! Слово override придумали для того чтобы ловить непонятки во время компиляции - например так = struct someBase { virtual void foo() = 0; }; template struct extension : T { void foo() override { std::cout foo(); delete a; return 0; } и не недо никуда смотреть уже. То есть тут явно говорится о том что в базовом классе должен быть виртуальный метод с такой-же сигнатурой как и у override
@yakwilik
@yakwilik Жыл бұрын
Это и имелось в виду
@mrbibis7229
@mrbibis7229 4 ай бұрын
при этом чувак в первом ответе говорит не про override, а override final
@DadundddaD
@DadundddaD 4 ай бұрын
Я уж думал, мне одному кажется, что собеседующий сам не разбирается в виртуальных методах.
@ИгорьПорошин-л6м
@ИгорьПорошин-л6м Жыл бұрын
kzbin.info/www/bejne/r5fSd6erZ52hatE При наследовании нужно указывать модификатор public, по умолчанию для классов используется модификатор private
@addressmodel2121
@addressmodel2121 Жыл бұрын
12:40 - вот так то! Каждый плюсовик с шарпом в выходные дни балуется!
@fein7068
@fein7068 4 ай бұрын
Override это не только синтаксический сахар, так как он на уровне компилятора выдаст дополнительную ошибку в случаи не соответствия. Так же забыли сказать про такую деталь про полиморфизм в случаи с интерфейсом и удобную работу с одним типом данных интерфейса, мелочь вроде, но дает более объективный ответ как по мне.
@sdflhdsf7118
@sdflhdsf7118 Жыл бұрын
Челики все собесятся на мидла, но в норм компанию с такими ответами на столь простые вопросы они еле бы на джуна прошли.
@deuswolf9053
@deuswolf9053 Жыл бұрын
Мда, я бы ему даже jun+ не дал. Просто jun с каким-то опытом..
@alazarn7
@alazarn7 Жыл бұрын
@@deuswolf9053 трэйни
@egorlazaruk2697
@egorlazaruk2697 Жыл бұрын
Для мидла мб и слабовато но вы совмем ебанулись те же деревья я не видел ни разу в проекте своем огромном, смысл это просто отбор по зп, в реале он будет решать другие задачи лол
@user-vladislav7
@user-vladislav7 11 ай бұрын
@@alazarn7 какой трейни, ты угараешь? Override не знать, просто неуч. Даже стажером не взял бы. С первого вопроса сразу можно заканчивать собес. Щас на трейни это все знать надо идеально. ЭТО ЖЕ БАЗА
@egorlazaruk2697
@egorlazaruk2697 Жыл бұрын
Вы смешные вы говорите что джун должен знать ооп паттерны 100000 страниц теории , ничего что это начали требовать конда джунов стало дохрена и если вы прошли на джуна то скорее всего вас используют как мидла за зп джуна, а вы этим гордитесь
@egorlazaruk2697
@egorlazaruk2697 Жыл бұрын
Это слова людей кто нанимает к ним рил приходят парни на уровень выше по знаниям но думают что они проходят на позицию ниже
@DadundddaD
@DadundddaD 4 ай бұрын
11:30 - почему у методов Read нет возвращаемого значения, куда они считывают? Про виртуальные методы собеседующий сказал - override нужен если мы уберем virtual. Зачем? Если не убирать virtual override тоже полезен. В комментариях вы написали что-то про перекрытие, но в видео про это ни слова, и у меня есть сомнения, что вместо переопределения будет перекрытие. 32:32 - название метода некорректное, для проверки, что это одно и то же дерево достаточно сравнить только два указателя, если это корни, кск сказао ведущий. Хотя непонятно, что жто корни, так как имена переменных ни о яем не говорят. Поля x у TreeNode нет, есть поле val. Слабенько.
@vp_arth
@vp_arth 7 ай бұрын
Как можно решать задачу рекурсивно, не осознав. в чём собственно решение?.. Ведь достаточно просто проговорить «Деревья равны, когда значения корней равны и равны левое и правое поддеревья», чтобы сразу записать решение, вообще не ломая голову)
@TheDezmen3
@TheDezmen3 2 ай бұрын
Судя по заднему фону, Данил уже тимлид где-то в Калифорнии
@skynowa2626
@skynowa2626 Жыл бұрын
Не туда...
@kimpantnw1834
@kimpantnw1834 Жыл бұрын
тайм коды пожайлуста)
@_device
@_device Жыл бұрын
А это реальные собеседования? Или типо как пример, как они вообще проходят.
@ambushedraccoon6408
@ambushedraccoon6408 Жыл бұрын
Тренировочные. Не постановочные.
@_device
@_device Жыл бұрын
@@ambushedraccoon6408 понял
@IExSet
@IExSet Жыл бұрын
Чем больше мелких классов плодится без необходимости, а лишь ради абстрактных вещей которые они перечислили, тем больше геморроя, время сборки увеличивается, читать разбросанную по мелким файлам логику труднее. Это точно плюсовики, в не жабщики ? При модульном тестировании, разве каждый тест не отвечает за свою область, какая разница монолитный это класс или разчленёнка, тесты то не монолитные!
@ambushedraccoon6408
@ambushedraccoon6408 11 ай бұрын
Как вы будете работать в 5-10-20 рук над одни огромным файлам, не спотыкаясь все время на мерж-конфликтах и не чиня бесконечные баги на тестировании?
@fein7068
@fein7068 4 ай бұрын
CMake нам зачем?
@nnektov
@nnektov 6 ай бұрын
Спасибо. Мне понравилось, что на каждый момент дается адекватная, расширенная обратная связь - на таких уроках можно учиться.
@ambushedraccoon6408
@ambushedraccoon6408 6 ай бұрын
Спасибо за отзыв)
@alexandrgonzales6503
@alexandrgonzales6503 5 ай бұрын
С такими комментариями реально круто, спасибо
@nnektov
@nnektov 5 ай бұрын
@@alexandrgonzales6503 Данил на самом деле дает вполне позитивную и познатавтельную волну. Вот подчеркну, что позитивную. Как правило собсес - это стрессовая ситуация, с нами по разному обходятся, могут и совсем никакой обратки давать (плавали, знаем. "Вы не тянете на эту позицию" - типа норм ответ). Данила, наоборот, все точно обьясняет - подучи это или то. Кроме того. Осмелюсь сказать, как человек между миддлом и сениором - Данила если не знает что-то, то так и говорит, т.е. не пытается представить из себя того, кем он не является. Если не знает - то не знает. Если недавно узнал - то так и говорит. Если резюмировать - мне нравится _человечность подхода , без потери _точности. Так держать.
@HelloWorld-oc2eu
@HelloWorld-oc2eu Жыл бұрын
Спасибо!
@faritavtakhov5115
@faritavtakhov5115 Жыл бұрын
Пацан классно начал, но когда с кодом столкнулся поплыл. Больше практики
@neverhoodJK
@neverhoodJK Жыл бұрын
поплыл? он же всё решил без особых проблем потратив не так много времени.
@sashkastepashka
@sashkastepashka Жыл бұрын
Классно начал - это ты про оверрайд в самом начале?
@ic6406
@ic6406 Жыл бұрын
@@sashkastepashka про шарповый abstract наверное) Не знаю как такое можно было не знать на позиции мидла
Собеседование Middle C++
1:01:50
Ambushed Raccoon
Рет қаралды 31 М.
Собеседование C++
47:00
Ambushed Raccoon
Рет қаралды 27 М.
From Small To Giant Pop Corn #katebrush #funny #shorts
00:17
Kate Brush
Рет қаралды 69 МЛН
How Strong is Tin Foil? 💪
00:26
Preston
Рет қаралды 118 МЛН
规则,在门里生存,出来~死亡
00:33
落魄的王子
Рет қаралды 10 МЛН
Собеседование Middle C++
58:19
Ambushed Raccoon
Рет қаралды 140 М.
Собеседование C++. Разработчик из Яндекс
53:31
Собеседование Junior C++
54:00
Ambushed Raccoon
Рет қаралды 42 М.
Собеседование Middle C++
43:44
Ambushed Raccoon
Рет қаралды 11 М.
Программисты-самоучки... Слушайте внимательно.
22:45
Евгений Афанасьев
Рет қаралды 72 М.
СОБЕСЕДОВАНИЕ по PHP: к каким ВОПРОСАМ готовиться?
37:44
TeachMeSkills Школа программирования
Рет қаралды 36 М.
Mock-собеседование по Go от Team Lead Ozon
48:28
From Small To Giant Pop Corn #katebrush #funny #shorts
00:17
Kate Brush
Рет қаралды 69 МЛН