Пробное Junior C# собеседование (мок-интервью)

Поделиться
HTML-код
  • Опубликовано: 30 сен 2024

Комментарии • 80

  • @raqiw2145
    @raqiw2145 4 месяца назад +7

    Я, который перечитал десятки статей и пару книг, что бы вкурить что такое ассинхронность и как устроены метод-заглушка и стэйт машина и не могу устроиться, а чел делает приватным конструктор и почти взяли на работу😢

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation  3 месяца назад

      К сожалению, чтение статей и книг не гарантирует трудоустройства, это правда. Ну и да, с приватным конструктором тут промашка небольшая вышла, но у кого их не бывает? ;-)

  • @shatalinator
    @shatalinator 10 месяцев назад +8

    PublicationTear - прямо опечатка по Фрейду😂

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation  9 месяцев назад +1

      Ха ха) Какой вы замечательный человек - всё замечаете 😉

  • @АндрейСиманов-л3я
    @АндрейСиманов-л3я Месяц назад +3

    56:48 небольшое уточнение, строки хоть и ссылочный тип, но оператор "==" для строк переопределен:
    public static bool operator == (String a, String b) {
    return String.Equals(a, b);
    }
    т.е. сравнение будет через Equals и в случае когда ссылки не равны, результат сравнения будет определен по данным в строках.
    Чтобы сравнить строки только через ссылки, используется static метод Object.ReferenceEquals(string1, string2);

  • @XAH20
    @XAH20 10 месяцев назад +7

    Насчёт сравнения строк не совсем верно. "==" не сравнивает ссылки объектов, это компилируется в метод string.op_Equality(str1, str2), который сравнивает по содержанию. А ссылки сравнивает ReferenceEquals(s1, s2) (это уже компилируется в (object) str1 == (object) str2).

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation  10 месяцев назад +1

      Интересно, что в исходниках языка (referencesource.microsoft.com/#mscorlib/system/string.cs,705) указано, что == вызывает Equals напрямую и ни слова про string.op_Equality(str1, str2). Подскажите, пожалуйста, где вы это смотрели?
      А то, про что я говорил в видео можно выразить вот в этом примере:
      object a = 10;
      object b = 10;
      Console.WriteLine(a == b); // False
      Console.WriteLine(a.Equals(b)); // True

    • @XAH20
      @XAH20 10 месяцев назад +3

      Да, действительно, я не совсем корректно написал. Перемешал разные уровни. На этапе компиляции так и остаётся ==. Это уже в IL получается string.op_Equality. Но суть всё равно остаётся, == для string сравнивает по значению. А для остальных объектов всё верно, по ссылке.

    • @aleksey6639
      @aleksey6639 10 месяцев назад +2

      В итоге получается, что == в string внутри вызывает статический Equals, котороый сначала сравнивает по ссылке (это дает буст если сравниваются интернированные строки), а в конечном итоге (если до этого дойдет) вызывает EqualsHelper, который сравнивает по значению (посимвольно)
      Метод Equals, который наследуется от объекта работает почти также, как и статический Equals, который вызывается в ==.

  • @ТатьянаЛаптева-е1д
    @ТатьянаЛаптева-е1д 10 месяцев назад +7

    Молодцы ребята, сделали свой канал и помогают советами , рассказывают и передают свой опыт в работе по программированию.

  • @HeIvis
    @HeIvis 11 месяцев назад +8

    Хорошее собеседование, но неплохо было бы еще спросить про бд и orm, ну и мб про какие-нибудь солидные принципы))

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation  11 месяцев назад

      Спасибо большое, в одном из следующих видео как раз будет вопрос про DI ;-)

    • @lonelypaul69
      @lonelypaul69 8 месяцев назад +2

      @@DotNetInterviewPreparation ждем! ждем! ждем!))

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation  8 месяцев назад +1

      А оно уже появилось. Вот здесь на 13 минуте можете посмотреть 😉
      ruclips.net/video/DjWqlyyP4pc/видео.html

  • @bloodborn9632
    @bloodborn9632 7 месяцев назад +3

    4 года работаю разрабом. Успел поработать на с# 9 месяцев потом на котлине и джава бэк. 8 месяцев . И все остальное время на с# + ангуляр. До сих пор закрадыаются мысли что я не рыба не мясо, потому что пишу и бэк и фронт. Но посмотрев это интервю. Я прям повысил свою самооценку. :))) я давно оказывается не джун :)) если чесно хорошее видео. Скажу чесно 90 % своих знаний я получил просто анализируя чужой код еа, смотря кто как пишет на проекте так как прект большой многие задачи уже решались кем либо , и 10% гуглеж и видосики на ютубе. Так я изучил ангуряр.

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation  7 месяцев назад +1

      Да, уже (почти) всё решено до нас. Что ещё интереснее, можно попросить нейронку, обученную на существующем коде, написать новый код и она напишет. Мгновенно и почти без косяков. Так что вполне себе хороший инструмент, чтобы пользоваться ;-)

  • @Diomsp
    @Diomsp 10 месяцев назад +4

    Как-то долго возился с такой простенькой программкой.

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation  10 месяцев назад +2

      У всех свой путь. Как говориться, "всегда есть азиат, который делает это лучше тебя". Давайте жить дружно :-)

  • @pavlikt.2281
    @pavlikt.2281 10 месяцев назад +4

    Серьёзный мастер решил пособеседоваться. Брать не глядя!

  • @whisper399
    @whisper399 3 месяца назад +2

    Все встроенные структуры в C# неизменяемые. И так же в Рихтере напрямую написано, что желательно их всегда делать неизменяемыми и на примерах показано почему.(не из-за скорости как он несет точно)

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation  3 месяца назад

      Не уверен, что до конца понимаю про что вы. Если про встроенные структуры, то мы их итак не можем изменить. И в части ситуаций структуры вполне себе работают быстрее, чем классы из-за накладных расходов на указатель и боксинг/анбоксинг.

    • @whisper399
      @whisper399 3 месяца назад +1

      @@DotNetInterviewPreparation эм, вы прочитали мое сообщение в отрыве от контекста того, что говорилось в видео. Он говорил, что все структуры неизменяемые, я просто указал из-за чего он так подумал и перепутал. Так же он сказал, что они неизмяемые из-за скорости, я указал, что это не так и что в рихтере есть примеры почему их надо делать неизменяемыми. Я нигде тут не сравнивал скорость структур и классов

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation  3 месяца назад

      @@whisper399 теперь понял, спасибо большое за уточнение 👍

  • @yourownazog8069
    @yourownazog8069 5 месяцев назад +1

    Люблю собесы по дотнету смотреть на Ютубе. Но тут как по мне задачи были очень простые. Я даже не знаю какие тогда требования к трейни. Создать класс?😅

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation  5 месяцев назад +1

      Простые и сложные - субъективные суждения. Но, в целом, соглашусь, что это не многочасовое собеседование, где из тебя всю душу вынимают))

  • @DotNetInterviewPreparation
    @DotNetInterviewPreparation  11 месяцев назад +2

    Ссылка для участия в тренировочных собеседованиях: dotnet-interview-preparation.com/mock-interview-youtube

    • @sdkrus-e1e
      @sdkrus-e1e 10 месяцев назад +1

      Спасибо за труды. Ссылка не работает

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation  10 месяцев назад

      Попробуйте полный вариант ссылки: dotnet-interview-preparation.com/mock-interview-youtube

    • @lonelypaul69
      @lonelypaul69 8 месяцев назад +1

      @@DotNetInterviewPreparation видео изображение обязательное условие интервью) Я бы тоже хотел пройти, только без камер)

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation  8 месяцев назад +1

      В теории можно попробовать подставить ИИ бота. Если хотите попробовать, то подключайтесь в телеграмм канал (ссылка в описании канала) и напишите мне, поэкспериментируем 😉

  • @scc-6
    @scc-6 10 месяцев назад +1

    Вот он написал интернет-магазин на АСП. Это веб-сайт или веб-приложение? Если веб-приложение, то он и реактивность какую-то реализовал на блейзере или реакте?

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation  10 месяцев назад +1

      Это было веб-апи приложение, 1:15 . Думаю, что фронтовой части не было.

  • @ЕвгенийПашин-ш7д
    @ЕвгенийПашин-ш7д 9 месяцев назад +1

    +

  • @IlyaArlenka
    @IlyaArlenka 7 месяцев назад +1

    Зачем??? Зачем спрашивать про сборщик мусора?? Тем более на позицию джуна

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation  7 месяцев назад

      Чтобы человек писал код, который не генерирует OutOfMemoryException при складывании 2+2.

    • @IlyaArlenka
      @IlyaArlenka 7 месяцев назад

      @@DotNetInterviewPreparation часто сталкивались с OutOfMemoryException? Это ж надо постараться

  • @Юрчик-л8у
    @Юрчик-л8у 10 месяцев назад +1

    Учусь неспеша, пробовал на собесы. В итоге не тяну по требованиям, в итоге пилю соло проекты. Может просто соло разрабом имеет тоже место быть? А то все ролики про работу, работу 😁

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation  10 месяцев назад

      Тоже, конечно, вариант. Однако, как показывает практика, в большинстве случаев работа в команде приносит больше денег и удовольствия. Хотя в команде можно и над опенсорс проектами работать, как у нас на курсах ;-)

  • @johngurevich9959
    @johngurevich9959 10 месяцев назад +2

    Алексей, обратная связь на высоте!

  • @ПероЖок-й9б
    @ПероЖок-й9б 7 месяцев назад +1

    А "прочитано" почему пропустили, не поработали с "MarkAsRead"

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation  7 месяцев назад

      Вам именно причина нужна? Или хотели бы увидеть как это могло бы быть реализовано? Если второе, то можете прислать как бы вы это реализовали и я дам вам обратную связь 😉

    • @ПероЖок-й9б
      @ПероЖок-й9б 7 месяцев назад

      @@DotNetInterviewPreparation Я просто не знаю как это реалезовать, есть идеи, но программа раздуется в моём случае, мне интересно как было бы правильно )

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation  7 месяцев назад

      Боюсь, что без написания дополнительного кода (раздутия программы) здесь никак, да.

    • @ПероЖок-й9б
      @ПероЖок-й9б 7 месяцев назад

      @@DotNetInterviewPreparation Понял, спасибо

    • @СерхиоБускетс-ф7я
      @СерхиоБускетс-ф7я 5 месяцев назад +1

      @@DotNetInterviewPreparation он же вроде просто процедуру там сделал? А надо функцию ,чтобы передать название книги, автора, год и по сформированной строке уже понять какая книга была прочитана, чтобы пометить. Другой вариант ,как понимаю, использовать this, не уверен, просто прочитал про него только сегодня в книге, пока учу язык. Но по идее изнутри класса можно обратиться и тогда именно функция не нужна.

  • @evilQuister
    @evilQuister 9 месяцев назад +4

    Серьезно? Как работает сборка мусора? Junior? ее и синьор не каждый расскажет, это такой тупой вопрос с учетом того что в 90% девелопер не будет реализовывать свой диспоуз и тем более форсить сборку

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation  9 месяцев назад +2

      На один и тот же вопрос можно ответить по-разному. От джунов, естественно, никто глубоких познаний не ждёт, однако, хотя бы примерное представление о том, как работает память в C# должно быть.

    • @evilQuister
      @evilQuister 9 месяцев назад +1

      @@DotNetInterviewPreparation Почему?Зачем? Для каких процессов это нужно джуну?
      Это просто "модный" и тупой вопрос, и все, а обосновать можно все что угодно

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation  9 месяцев назад +5

      Вот представьте себе найм человека на позицию инструктора в тир. Кого бы взяли на работу: того, кто хотя бы базово понимает как устроено оружие или того, кто считает, что это "модный" и тупой вопрос? Стреляет же "как-то само". А то, что если не думать про память ("работает же как-то само") и программа потом отожрёт всю доступную память, зависнет сама и повесит вместе с собой весь сервер, это уже джуна волновать не должно, так получается?

  • @TinzZz94
    @TinzZz94 10 месяцев назад +1

    Разве внутри класса стринг метод сравнения уже не переопеределен, и он не сравнивает именно значения строк?

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation  9 месяцев назад

      Вы абсолютно правы, переопределен: referencesource.microsoft.com/#mscorlib/system/string.cs,705
      А вы это к чему?)

    • @TinzZz94
      @TinzZz94 9 месяцев назад +1

      @@DotNetInterviewPreparation На 56:56 я видимо упустил суть, и решил, что строки сравниваются именно по ссылке.

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation  9 месяцев назад

      @@TinzZz94 , да, вы правы, чего-то я погорячился там)) Спасибо, что заметили 👍

    • @yuryermolov13
      @yuryermolov13 6 месяцев назад

      @@DotNetInterviewPreparation Что по вашему вернет вот такой код
      string a1 = "aaa";
      string b1 = "aa";
      b1 += "a";
      bool c1 = (object)a1 == (object)b1;
      Console.WriteLine(c1);

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation  6 месяцев назад

      @@yuryermolov13 False, объекты же разные получатся. Если бы строка b1 изначально была "ааа", то тогда было бы True, так как строка была бы интернирована и всего одна, хотя ссылки на неё было бы две. А к чему вопрос?

  • @pulsar1934
    @pulsar1934 2 месяца назад +2

    Верный путь к разработчику, это очень хорошая база, по шарпу обязательно прочитать рихтера, не обязательно всю книгу. И пилить много много кода на гитхаб, придумать свой проект он должен быть сложным и шаг за шагом спотыкаясь решая те или иные задачи его реализовывать, каждый день желательно писать и тогда где-то через год с готовым проектом, а может и не одним идити на собесы. И да английский очень важен про него нес тоит забывать.

  • @МихаилВаньков-у1и
    @МихаилВаньков-у1и 10 месяцев назад +1

    Где найти ментора?

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation  10 месяцев назад

      Здравствуйте, что вы понимаете под ментором?

    • @МихаилВаньков-у1и
      @МихаилВаньков-у1и 10 месяцев назад +1

      @@DotNetInterviewPreparation человека который может помочь в подготовке к интервью) раскроет слабые стороны, даст советы)

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation  10 месяцев назад

      Организовал форму для поиска Ментора bit.ly/find-csharp-mentor ;-)

    • @sdkrus-e1e
      @sdkrus-e1e 10 месяцев назад +1

      и тут не работает ссылка)
      @@DotNetInterviewPreparation

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation  10 месяцев назад

      @user-zk6uw1bj8v, да, похоже, что bit.ly не работает у части интернет провайдеров. Вот полная ссылка: docs.google.com/forms/d/e/1FAIpQLSeKBD-KaerXvzruUjQr2zZB--ogSjDtMRnx4K0QYapEoOXt5Q/viewform?usp=sf_link

  • @dimitryselin4225
    @dimitryselin4225 10 месяцев назад +2

    Спасибо за интервью. Очень понравилась ваше позитивное отношение и общая подача материала. Скажите можно ли тоже записаться на интервью?

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation  10 месяцев назад +1

      Здравствуйте, да, можно по ссылке dotnet-interview-preparation.com/mock-interview-youtube. Ближайшее будет 22.11.2023 в 20:00 по Москве

    • @ТатьянаЛаптева-е1д
      @ТатьянаЛаптева-е1д 10 месяцев назад +1

      Хочу сказать сыну, что есть такой канал.

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation  10 месяцев назад

      @@ТатьянаЛаптева-е1д, рекомендую посмотреть интервью с Ахматом, который из руководителя стал джуниор разработчиком. Возможно, канал будет полезен не только сыну ;-)