🍁Сделайте сентябрь месяцем новых возможностей вместе с FoxmindEd! Зарегистрируйтесь на стартовые курсы программирования по Java, Python, C#, C++, Swift или JavaScript со скидкой 50% 🎉 - go.foxminded.ua/4gpYZwP
@spjlesher759
Жыл бұрын
1. Изучить основные принципы ООП ( с помощью метонита ) 2. От какого класса неявно наследуются все классы в .Net 3. Разрешено ли множественное наследование в c#? 4. Как вы понимаете REST? 5. Что такое exception? 6. Что такое garbage collector на базовом уровне? 7. Какие типы данных вы знаете ?/ коллекции / структуры данных 8. Что такое тип значения, а что такое тип ссылки 9. Что из этого class, а что struct 10. В каком участке памяти они хранятся? 11. Что такое boxing и unboxing? 12. какие знаете коллекции ? 13. Чем отличается абстрактный класс от интерфейса ? 14. Зачем нужны интерфейсы и какие задачи они выполняют ? 15. Разница между структурой и классом 16. Привести примеры структур 17. Изучить асинхронность 18. Что такое асинхронность и чем она отличается от многопоточности? 19. Какие типы join существуют в sql? 20. Недостатки, отличая joinов и в каких случаях что используется 21. Зачем нужны unit тесты? 22. Какие преимущества и недостатки использования unit тестов? 23. Из каких трех логических блоков состоит unit тест ?
@artemky3bmu45
Жыл бұрын
Основные принципы ООП (объектно-ориентированного программирования) включают: Инкапсуляция: скрытие внутренних данных и методов объекта от прямого доступа, обеспечение доступа к ним через публичные интерфейсы. Наследование: возможность создания новых классов на основе существующих, наследование их свойств и методов. Полиморфизм: использование одного интерфейса для представления различных типов объектов, позволяет использовать объекты разных классов через общий интерфейс. Абстракция: выделение общих характеристик объектов и создание абстрактных классов или интерфейсов для их представления. В .NET все классы неявно наследуются от базового класса System.Object. В C# не разрешено множественное наследование классов (то есть класс не может наследовать от нескольких классов), однако множественное наследование интерфейсов разрешено. REST (Representational State Transfer) - это архитектурный стиль разработки программного обеспечения, который определяет набор ограничений и принципов для построения распределенных систем. RESTful веб-API обеспечивает взаимодействие между клиентом и сервером с использованием стандартных HTTP-методов, URL-адресов и представлений ресурсов. Exception (исключение) - это объект, который представляет ошибку или исключительную ситуацию, возникшую во время выполнения программы. Когда возникает исключение, выполнение текущего потока прерывается, и поиск исключения начинается в стеке вызовов, пока не будет найден обработчик исключения или программа завершится. Сборщик мусора (garbage collector) - это механизм в среде выполнения .NET, который автоматически управляет памятью, выделенной для объектов. Он отслеживает объекты, которые больше не используются в программе, и освобождает выделенную ими память, чтобы она могла быть использована для других целей. В C# известны следующие типы данных: Примитивные типы: целочисленные типы (int, long, byte и т. д.), типы с плавающей точкой (float, double), символьный тип (char), логический тип (bool). Строковый тип (string): представляет последовательность символов. Массивы (arrays): упорядоченные наборы элементов одного типа. Списки (List), множества (Set), словари (Dictionary) и другие коллекции: предоставляют удобные структуры данных для хранения и обработки групп элементов. Структуры (struct): пользовательские типы данных, которые могут содержать поля и методы, похожие на классы, но передаются по значению. Пользовательские классы (class): определенные пользователем типы данных, которые могут содержать поля, свойства и методы. Тип значения (value type) - это тип данных, который хранит свое значение непосредственно в памяти, независимо от ссылки на него. Значения типа значения хранятся в стеке памяти и копируются при присваивании или передачепараметра в методы. Тип ссылки (reference type) - это тип данных, значения которого хранятся в куче памяти, а переменная содержит ссылку на это значение. Переменная типа ссылки не содержит само значение, а лишь ссылку на него. При присваивании или передаче параметра в метод копируется только ссылка на значение, а не само значение. class и struct являются ключевыми словами в C# для определения пользовательских типов данных. ```class` используется для создания ссылочных типов. Экземпляры классов создаются в куче памяти, а переменные содержат ссылку на эти объекты. Классы поддерживают наследование, множественное вхождение в интерфейсы и динамическое связывание. ```struct` используется для создания значимых типов. Экземпляры структур создаются в стеке памяти или встроенном в другой объект, а переменные содержат само значение структуры. Структуры обычно имеют небольшой размер и передаются по значени. Объекты классов хранятся в куче памяти, в то время как значения структур хранятся в стеке памяти. Куча - это область памяти, в которой выделяются и освобождаются блоки памяти динамически во время выполнения программы. Стек - это область памяти, в которой хранятся временные данные, такие как локальные переменные и вызовы методов. Boxing и unboxing - это процессы преобразования значимых типов (типов значения) в ссылочные типы (типы ссылок) и обратно. Boxing - это процесс упаковки значения типа значения в объект типа System.Object или его производного типа. Например, когда значение типа int упаковывается в объект, оно становится ссылкой на объект, содержащего это значение. Unboxing - это процесс извлечения значения из упакованного объекта и преобразования его обратно в значение типа значения. Например, при unboxing объекта типа System.Object в значение int значение извлекается из объекта и приводится к соответствующему типу. Некоторые известные коллекции в C#: List: упорядоченная коллекция элементов с динамическим размером. Dictionary: коллекция пар "ключ-значение" с быстрым доступом к элементам по ключу. HashSet: коллекция уникальных элементов без повторений. Queue: коллекция элементов с доступом в порядке "первый пришел - первый вышел" (FIFO). Stack: коллекция элементов с доступом в порядке "последний пришел - первый вышел" (LIFO). LinkedList: двусвязный список элементов с эффективной вставкой и удалением элементов. ObservableCollection: коллекция, которая предоставляет уведомления об изменениях в своих элементах.
@artemky3bmu45
Жыл бұрын
Отличия между абстрактным классом и интерфейсом: Абстрактный класс может содержать как реализацию методов, так и абстрактные методы, в то время как интерфейс может содержать только сигнатуры методов и свойств без их реализации. Класс может наследовать только один абстрактный класс, но реализовывать несколько интерфейсов. Абстрактный класс может иметь поля и конструкторы, а интерфейс может содержать только сигнатуры методов и свойств. Абстрактный класс может предоставлять базовую реализацию методов, которую наследующие классы могут переопределить, в то время как интерфейс не предоставляет реализацию методов. Интерфейсы используются для определения контрактов, которые классы должны реализовывать. Они определяют сигнатуры методов, свойств и событий, но не предоставляют реализацию. Задачи, которые выполняют интерфейсы: Определение общих методов и свойств, которые должны быть реализованы классами, чтобы обеспечить единый интерфейс взаимодействия. Разделение поведения между несвязанными классами. Реализация множественного наследования через интерфейсы, поскольку класс может реализовывать несколько интерфейсов одновременно. Разница между структурой и классом: Структуры являются типами значений (value types), в то время как классы являются ссылочными типами (reference types). Структуры передаются по значению, а классы передаются по ссылке. Структуры обычно используются для представления простых значений, а классы - для более сложных объектов и функциональности. Структуры не могут наследоваться и не поддерживают наследование, а классы могут наследоваться и быть наследниками других классов. Примеры структур: Point: структура, представляющая точку с координатами X и Y. Rectangle: структура, представляющая прямоугольник с координатами верхнего левого и нижнего правого углов. DateTime: структура, представляющая дату и время. TimeSpan: структура, представляющая промежуток времени. Асинхронность (асинхронное программирование) в программировании относится к возможности выполнять задачи независимо от основного потока выполнения программы. Асинхронные операции позволяют продолжать выполнение других задач во время ожидания завершения операции ввода-вывода, долгих вычислений или запросов к базе данных. Асинхронность отличается от многопоточности следующим образом: В асинхронном программировании нет необходимости создавать и управлять явными потоками, что делает его более легким в использовании. В асинхронном программировании операции могут быть выполнены на одном потоке без блокировки, что позволяет более эффективно использовать ресурсы. Асинхронностьпозволяет создавать отзывчивые приложения, которые не блокируются во время выполнения длительных операций, таких как сетевые запросы или обращения к базе данных. В многопоточности операции выполняются параллельно на разных потоках, в то время как в асинхронности операции могут выполняться последовательно, но без блокировки основного потока выполнения. В SQL существуют следующие типы объединений (join): INNER JOIN: Возвращает только те строки, которые имеют совпадающие значения в обоих таблицах, участвующих в объединении. LEFT JOIN (или LEFT OUTER JOIN): Возвращает все строки из левой (первой) таблицы и соответствующие строки из правой (второй) таблицы. Если в правой таблице нет совпадающих значений, то для них будут возвращены NULL значения. RIGHT JOIN (или RIGHT OUTER JOIN): Возвращает все строки из правой (второй) таблицы и соответствующие строки из левой (первой) таблицы. Если в левой таблице нет совпадающих значений, то для них будут возвращены NULL значения. FULL JOIN (или FULL OUTER JOIN): Возвращает все строки из обеих таблиц и заполняет NULL значениями для неподходящих строк. CROSS JOIN: Производит декартово произведение двух таблиц, возвращая все возможные комбинации строк. Недостатки и отличия различных типов объединений (join) зависят от конкретной задачи и структуры данных: INNER JOIN: Возвращает только строки с совпадающими значениями в обеих таблицах. Если в таблицах отсутствуют совпадающие значения, соответствующие строки не будут возвращены. LEFT JOIN: Возвращает все строки из левой (первой) таблицы, независимо от наличия совпадающих значений в правой (второй) таблице. Если в правой таблице нет совпадающих значений, будут возвращены NULL значения. RIGHT JOIN: Аналогично LEFT JOIN, но возвращает все строки из правой (второй) таблицы, независимо от наличия совпадающих значений в левой (первой) таблице. Если в левой таблице нет совпадающих значений, будут возвращены NULL значения. FULL JOIN: Возвращает все строки из обеих таблиц, заполняя NULL значениями для неподходящих строк. Может создавать большие результаты и быть менее эффективным в использовании ресурсов. CROSS JOIN: Производит декартово произведение таблиц, возвращая все возможные комбинации строк. Результат может быть очень большим, особенно для больших таблиц. Unit-тесты используются для автоматизированной проверки отдельных частей кода (обычно отдельных методов) на корректность и соответствие ожиданиям. Они помогают обнаруживать ошибки и проблемы в коде на ранних стадиях разработки и обеспечивают уверенность в работоспособности тестируемых компонентов.
@artemky3bmu45
Жыл бұрын
Преимущества использования unit-тестов: Обеспечивают автоматическую проверку корректности кода: Unit-тесты позволяют автоматически проверить, что отдельные части кода работают правильно и соответствуют ожиданиям разработчика. Обнаруживают ошибки и проблемы на ранней стадии разработки: Unit-тесты позволяют обнаружить ошибки и проблемы в коде на ранних этапах разработки, что помогает их быстро исправить и предотвращает их распространение в другие части системы. Улучшают качество кода и его структуру: При написании unit-тестов разработчику необходимо разбить код на более маленькие тестируемые части, что способствует улучшению архитектуры и структуры кода. Облегчают рефакторинг: Наличие хорошо написанных unit-тестов позволяет уверенно проводить рефакторинг кода, так как тесты помогают обнаружить возможные нарушения функциональности после внесения изменений. Повышают надежность и поддерживаемость кода: Unit-тесты служат документацией к коду и помогают быстро проверить, что изменения в коде не сломали уже существующую функциональность. Недостатки использования unit-тестов: Требуют времени и ресурсов: Написание и поддержка unit-тестов требует времени и усилий со стороны разработчика. Необходимо обеспечить покрытие тестами всех важных частей кода, что может быть трудоемкой задачей. Могут быть сложными для написания и поддержки: Некоторые части кода могут быть сложными для тестирования, особенно в случае с взаимодействием с внешними ресурсами или зависимостями. Иногда требуется использовать моки или заглушки, чтобы изолировать код от внешних зависимостей. Не гарантируют отсутствие ошибок: Наличие unit-тестов не гарантирует полное отсутствие ошибок в коде. Тесты могут не покрывать все возможные сценарии использования или не обнаружить некоторые сложные ошибки. Могут увеличить время разработки: Написание и поддержка unit-тестов требует дополнительного времени, что может увеличить время разработки проекта. Unit-тесты обычно состоят из трех логических блоков, известных как "AAA" (Arrange, Act, Assert): Arrange (Подготовка): В этом блоке происходит подготовка окружения для тестирования. Создаются необходимые объекты, настраиваются зависимости и устанавливаются начальные условия. Act (Действие): В этом блоке выполняется тестируемое действие или вызывается метод, который должен быть протестирован. Assert (Утверждение): В этом блоке проверяются результаты выполнения теста. Сравниваются ожидаемые значения с фактическими результатами, чтобы убедиться, что код работает правильно.
@МаксимКузмин-у9б
Жыл бұрын
Привет всё есть строка string str = "Hello"; Как мне вывести еë вот так H He Hel Hell Hello
@pody8205
Жыл бұрын
@@МаксимКузмин-у9бСамое простое через for (int i до длины строки) writeline(str.substring(0,i)
@TeuvoLaaksonen
Ай бұрын
А какие курсы по C# вы бы порекомендовали для начинающих? я сам пару лет назад закончил универ, но не мог устроиться на работу, поэтому пошел на курсы Skypro и получил классный оффер в финтех компанию))
@macmyem9527
Жыл бұрын
От Object Нет, но разрешена множественная реализация интерфейсов Rest - стиль, позволяющий проще обмениваться данными между небольшими приложениями для удобства масштабирования всей структуры. Exception - предоставляет возможность отследить непредвиденные ошибки, другие наследуемые от него Исключения более конкретизирует назначение их самих в той или иной ситуации. Garbage Collector работает автоматически и выгружает из памяти уже не нужную информацию. В некоторых ситуациях необходимо ручное указание в коде для его использования или нет. shortint, int, long, float, double, emun, string (класс), DateTime и прочие Тип значение - непосредственно само значение из простых сипов данных, тип Ссылка это уже классы по типу String, где информация хранится в виде ссылки на другую ячейку памяти со значением или набором значений. NullPointer или null Коллекции List, Dictionary, разные хэш-таблицы - одна из главных особенностей имеют встроенные методы для работы с ней на максимально оптимизированном уровне. Интерфейс не имеет реализации ни одного из методов внутри, абстрактный класс может имеет хотя-бы частичную реализацию методов. Интерфейсы нужны в качестве обязательств, которые обязательно должны быть в реализующем этот интерфейс классе. Данные классов передаются по ссылке, а структуры копируются. многопоточность - одна задача выполняется как разделенная на части на процессоре, асинхронность подразумевается выполнение на нескольких процессорах разных машин. Inner Join (от же обычный Join), left join, right join, cross join - в разной степени нужны для включения результатов из дополнительной таблицы связанной по данным, которые будут или нет выводить сами данные и в зависимости от их наличия будут или нет выдавать NULL в качестве отсутствующих значений. Unit тесты нужны для больших проектов, проще говоря, где требуется быстро проверить, не отвалилось ли чего в процессе последних изменений в коде. Занимают много времени на их написание, но упрощают исправление и улучшения кода в целом. Состоит из настройки каждого конкретного теста и использования в комплекте или по одиночке, какой третий логический пункт понятия не имею либо не понял вопроса. Сергей, если прочитаете, напишите, есть ли мне смысл искать работу или все плохо?)
@west8663
Жыл бұрын
в c# 8.0 может же быть реализация в интерфейсе?
@АртемБатьков-м6ю
Жыл бұрын
По поводу join есть небольшой недочёт. Дело в том, что его функция именно в объедение двух и более таблиц. А дополнительная информация left, right и тд указывает на способ объединения. Если еще проще представить это что то типо диаграммы объединения диаграмм эйлера, в зависимости от контекста может быть разное объединение.
@jonnesfal6024
Жыл бұрын
Ну как максимально короткие ответы на вопросы - ок, как ответы на интервью слишком мало, ну и есть ошибки В Шарпее разрешено множественное наследование интерфейсов и множественная реализация интерфейсов, а множественное наследование классов не разрешено В какой-то их последних версий дали возможность писать реализацию внутри интерфейсов, но с жуткими ограничениями Многопоточность - это одновременное выполнение нескольких задач на разных потоках(тредах) процессора(ов) (или одной задачи, разбитой на несколько разных) Thread, ThreadPool, BackgroundWorker, Parallel, PLINQ, Task. Aсинхронность - выполнение нескольких задач с быстрым переключением между ними Асинхронность может быть многопоточной(параллельной) Task, async/await . Пример, есть UI и какаянить CPU Bound задача - ну пусть будет подсчет факториала и еще IO Bound задача - запрос к БД. При многопоточной реализации, мы все три задачи вешаем на три разных потока и они выполняются параллельно на них. При асинхронной - мы запускаем все три задачи на одном потоке, и поток постоянно быстро переключается между задачами, так что и UI не тормозит и факториал наш считается и запрос к БД ожидается(если конечно вычислительных мощностей хватает), при асинхронной многопоточности, задачи прыгают между потоками, например UI может всегда висеть на одном потоке, потом мы сделали IO Bound задачу (запрос к БД) тогда из тредпула выделяется еще поток, который обращается к бд и ждет ответа, пусть ответ придет через 30 секунд. Тут мы еще запускаем подсчет нашего факториала(CPU Bound). Т.к. ожидание ответа IO Bound и не требует вычислительных мощностей, то поток переключается на задачу вычисления факториала и считает его 40 секунд, за это время БД прислало ответ на запрос, и тогда выделяется третий поток и он уже принимает ответ от БД. Тем самым у нас при обычное многопоточности было 3 разных потока, каждый занимался своим делом, какие-то полезным CPU Bound: UI и факториал, а другой простаивал в спинвеит 30 секунд в IO Bound задаче, ожидая ответа от БД, а при асинхронном многопоточном сценарии у нас поток не блокировался на IO Bound задаче, а пошел выполнять CPU Bound задачу, а при получении ответа от БД, эту задачу подхватил другой поток. Все это тоже достаточно упрощено, вообще многопоточность - это огромная тема и TAP (Task Async* Pattern) сильно упростило вкатывание в неё. По тестам - состоят из трех логических блоков паттерна AAA (не посню как он расшифровывается, помню вторая A - act): этап подготовки- объявление переменных, создания классов и т.п. Этап самого тестирования (Действие) - этап где мы запускаем тестируемый код. И, наконец, третий этап - Этап проверки (Asset) где мы проверяем получили ли мы тот результат, который ждали
@darkhekromant
Жыл бұрын
Про асинхронность дичь какую-то написал. Асинхронность, это когда ты отправил, например, запрос к сетевому апи, пошел дальше что-то делать, а потом вернулся и проверил ответ. В основе обычно лежит простой цикл перебора. Это гораздо дешевле, чем создавать поток и позволяет одновременно выполнять гораздо больше задач, если их большая часть времени выполнения - просто ожидание ответа.
@darkhekromant
Жыл бұрын
Интерфейс - это контракт, который класс должен исполнять, например опредленный набор методов с заданной сигнатурой. Абстрактный класс - базовый класс, экземпляр которого нельзя создать; может не имееть реализации части методов/свойств. Какого-то прямого отношения к реализации это в общем то не имеет
@DoctorKrolic
Жыл бұрын
Не знаю, как там в Java, но в C# начинающие разработчики почти не пишут sql руками. "Стандартная" ORM для C# - Entity Framework Core, очень хорошо абстрагирует от sql и его диалекта для конкретной бд. Можно заджоинить 5 таблиц, особо не осознавая этого) Писать sql самому приходится только в специфических случаях, с которыми новички вряд ли сталкиваются. Это и хорошо и плохо одновременно. Поэтому, наверное, вопрос про то, что такое джоины и какие они бывают лучше, чем попросить написать sql самому, ибо человек просто растеряться может. С другой стороны, думаю, и то и другое встречается на реальных собесах
@donlinoleum831
Жыл бұрын
Во-во). Как я понимаю, в современном мире ведь чистым sql редко орудуют. В основном ведь все через orm идет. Конечно, полезно знать что там идет внутри, но что бы прям обязательно. Ну хз))
@dest8488
Жыл бұрын
когда пишешь учебную прогу с 3 таблицами 10 записями и без order by без проблем, а потом приходишь на "галеру" где какой нибудь очет из БД генерируется из 10 таблиц с 100 000+ записей, с кучей order by. Удачи тебе с EF и производительностью. EF инструмент хороший, но нужно уметь в базовый SQL и понимать во что генерится твой Linq в EF.
@DoctorKrolic
Жыл бұрын
@@dest8488 Ну значит вы не умеете пользоваться EF. Он отлично вам построит запрос и с ORDER BY, и с джоинами. Другой вопрос, что если программист не понимает, что там под капотом происходит и инклюднет все таблицы, заставив их заджоиниться целиком, то да, это гг. Но это уже вопрос об умении пользоваться EF, а не sql
@dest8488
Жыл бұрын
@@DoctorKrolic он то построит, но будет ли этот запрос эффективен по времени выполнения? Учить EF не зная SQL, это как считать на калькулятора не зная правил арифметики, рано или поздно наступит момент когда ты поделишь на 0 и будишь долго тупить, а если еще и на проде... Может легче все таки было бы выделить на базовый SQL неделю.
@DoctorKrolic
Жыл бұрын
@@dest8488 Ну, если составить нормальный EF-запрос, то он его нормально в Sql и перестроит. Парадокс ещё в том, что для того, чтобы понимать, что в запросе не так, нужно чуть больше уровень, чем базовый sql за неделю. В любом случае, это задача на чтение sql, а не на написание. А на собесе как раз будут долбать, мол "а напиши мне ..."
@VladislavGnatiuk
Жыл бұрын
Привет, спасибо за видео. Сделай пожалуйста так-же по С++
@Kriptio
Жыл бұрын
Теперь мы просим точно такое же видео для nodejs и фронтэнда ,не ну а че,мы же джаваскриптизеры тоже видлсика отдельного заслуживаем (двух) :)
@федов-ф4х
Жыл бұрын
по поводу join. по моему опыту не надо писать сложные запросы в коде, нужно создавать или stored procedure или views и работать уже с ними со стороны бэка. и да, я как сениор сходу не смог ответить на все вопросы))
@АндрейВарин-р4г
Жыл бұрын
Весело. И как тогда нам любителям вкатывать в IT. :)
@cliobro3890
Жыл бұрын
@@АндрейВарин-р4г А вот это уже, не их проблема...
@АндрейВарин-р4г
Жыл бұрын
@@cliobro3890 это понятно. :)
@федов-ф4х
Жыл бұрын
@@АндрейВарин-р4г да не не парься. это как зуюрежка экзамена сдал и забыл.
@nerewan
Жыл бұрын
я бы предложил тогда не разбивать логику на содержащуюся непосредственно в основной приложухе и на хранимки в субд, а перенести код хранимых процедур и вьюх в ресурсы приложения это упростит контроль версий + код будет в одном месте на текущем проекте частенько возникают сложности из-за того, что бизнес-логика вот так вот разбита на две части, намучился разбираться в хитросплетениях)
@neonsun6162
Жыл бұрын
давно не был на собеседование, но что-то вопросы странные. Это скорей вопросы на экзамен, чем на собеседование. Достаточно знание общих принципов, всё остальное можно подтянуть по мере надобности. Разработка сегодня стала слишком объемной и всё в голове не удержишь, хотя конечно если писать только в одном языке и больше ничем не заниматься, то наверное стоит знать как можно больше об этом языке. А в C# еще много всего интересного. Сколько лет в нем пишу и все равно иногда открываю что-то новое
@mitsuro3815
Жыл бұрын
а вы уже Senior С# dev? Backend?
@neonsun6162
Жыл бұрын
@@mitsuro3815 скорей Full Stack Web Developer, делаю всё что придется. Просто C# это то, с чем я работал больше всего, ну и в принципе этой мой любимый язык) Но обычно это только часть проекта и делать приходиться много чего другого, поэтому изучать полностью что-то одно, нет смысла и времени. Достаточно разобраться в том, что требуется для выполнения задачи.
@rexdraconis1703
Жыл бұрын
Дадада, я вроде не так уж мало пишу, но каково же было удивление, когда я узнал что можно функцию в методе создавать... А вроде штука базовая должна быть.
@johnsilver3804
Жыл бұрын
Entity framework, вот как мы с базами работаем)))
@Nickola_United
8 күн бұрын
Сергей: задаёт исключительно вопросы по шарпу + 1 вопрос по юнит-тестам и БД Тем временем моё же первое собеседование: Что такое SOAP, чем отличает SOA от микросервисной архитектуры, как лучше организовать взаимодействие микросервисов, чтобы запрос быстрее всего обрабатывался
@sergioramos9052
Жыл бұрын
Сергей, спасибо огромное за видео. Давно его ждал
@sahibrzayev8968
Жыл бұрын
Благодарю Сергей !!! Надеюсь сделаете в будущем вторую часть 🔥
@evgenyjagushinsky6695
Жыл бұрын
Как всегда всё понятно и достОйно рассказано, Сергей! Дай Бог здоровья тебе и твоим близким
@Vyacheslav-g7s
Жыл бұрын
Спасибо, Сергей, огромное! Вырос как разработчик на ваших видео, 3 года - полет нормальный, перехожу на C# Backend, очень в тему для кругозора :)
@slippers__
Жыл бұрын
Спасибо за видео, очень интересно было бы узнать про PHP
@БіланенкоРостислав
Жыл бұрын
Сергей, скорее всего вам придётся выпустить ряди таких видео, по всем языкам программирования :)
@sergeykolesnikov6333
8 ай бұрын
Благодарю Вас, Сергей, за Ваши видео! Очень полезно, содержательно и мотивирующе.
@mvttofficial
Жыл бұрын
Ждем по JavaScript
@jongaur8097
Жыл бұрын
спасибо за видео! давай такое же по фронтенду :)
@ІванПроценко-о8я
Жыл бұрын
Очень ждем для Python, очень благодарен вам за ваш труд.
@alexandertattoo_spb1958
Жыл бұрын
супер! сейчас, благодаря видео начал путь в изучение Java, но в универе писали на c++, но видосик по c# я сохраню! так как хочу в будущем понимать хотя бы базово java, с#, и с++
@MERKYRIY-fn5rw
Жыл бұрын
Не розпиляйся, вибери щось одне і гати)))😂
@alexandertattoo_spb1958
Жыл бұрын
@@MERKYRIY-fn5rw тоже верно)
@ЛеонидБодак
Жыл бұрын
Полезная информация, спасибо большое!)
@ShomLZ
Жыл бұрын
Отличное видео, спасибо.
@unfeastbeats986
Жыл бұрын
Спасибо за видос!
@dianashakirova2614
Жыл бұрын
Жду базу для Джава-Скриптизера!!!
@ОлексійСирота-ы6т
Жыл бұрын
гарне відео хоч і вчусь не на С# розробника)) було б круто пройтись по всім ТОП 10 мовам програмування)) дякую за відео))
@ТимофійЛозовий
Жыл бұрын
Ти ж моє сонечко❤❤❤. Більше б таких людей
@mike_gachan
Жыл бұрын
Почти всё это есть в книге шилдта под C#, можете прочитать, она даже на русском языке есть, большая часть правда из этого может вам особо никогда и не понадобится, но ради интереса почитать можно. (:
@fada9238
Жыл бұрын
Единственное, чего я не знаю - это REST и вопросы по тестированию. Слегка неуверен в работе с базами данных. То есть, на словах - я осознаю в чём разница между разными видами JION'ов, но на практике - я какие запросы не писал, разницу видел лишь между INNER и OUTER. Между LEFT и RIGHT - какую тестовую базу данных не строил(вероятно это я просто не умею их проектировать), а запросы всегда были одинаковыми по возвращаемому содержанию! Разве что имели разный порядок строк, тогда как я ожидал увидеть нечто иного содержания.
@aokijikuzan2131
Жыл бұрын
Если джун учил сразу EF Core, то рабоать с базой он в полне сможет, и не только join, а даже select не напишет
@АнтонКоваленко-ч8г
Жыл бұрын
Добрый день, понравилось это видео, можете сделать видео что должен знать junior QA и UX UI designer
@avusar2702
Жыл бұрын
Не понимаю, зачем C# разработчику знать типы джоинов, если Entity Framework уже за него делает эти самые джоины. Если знаете, скажите, с какой целью вообще писать голый SQL запрос в коде, а не использовать уже придуманные инструменты?
@torrvic1156
Ай бұрын
А Dapper? Его много где используют.
@даниилпавленко-ъ2з
Жыл бұрын
Для будущих Питонистов такое видео снимете?
@_curtman
Жыл бұрын
Ну хз. У меня ничего из этого на последнем собеседование не спрашивали. Вопросы больше были по технологиям типо Entity framework или Dependecy injection. Сейчас ведь недостаточно знать только язык, нужны фрэймворки.
@nurken2345
Жыл бұрын
Здравствуйте Сергей, можете сделать такое видео про Php. Салам из Казахстана
@Inclydi
Жыл бұрын
Супер відео ) дякую за інфу хоч і я не junior фле було декілька що не зразу відповів би )
@АлександрФилатов-е7й
Жыл бұрын
Інформативне відео, дякую за вашу працю! Зробіть, будь ласка, такий же формат по С++ 🙂
@АлександрБоровиков-ц2о
Жыл бұрын
Спасибо за Ваш труд! Сделайте пожалуйста такое же видео по ios-разработке)
@Infinity-ua
Жыл бұрын
Спасибо за видео !
@goldgold594
Жыл бұрын
Знаю все из перечисленного в видео на хорошем уровне, работу не могу найти даже Trainee уже пол года. Привет из россиюшки
@mitsuro3815
Жыл бұрын
А какие вопросы ещё задавали на собесах? Или имеется ввиду, что вакансий нет?
@folium5725
Жыл бұрын
Здравствуйте Сергей! Спасибо за видео) Ждём такое же видео, но уже по языку HTML🤡, уже очень долго учу этот язык программирования🤡🤡
@artemmm095
Жыл бұрын
К чему этот подкол? К тому что разработчик определяется не по языку, а по специализации?
@olegkovalenko2797
Жыл бұрын
HTML не мова програмування
@m_maksym
Жыл бұрын
з того що не прозвучало, були питання: SOLID, різниця stack-heap, паттерни, ну і ще всяке так з наскоку не згадаю. Але багато народу просто беруть і задають питання з ваших відосів типу "що знати джуну" і кривляться коли називаю паттерн сінглтон і повторюють Ваші слова майже дослівно)) тож піду погуглю трохи бо вже позабував дещо.
@Moonrider7777
Жыл бұрын
SOLID, різниця stack-heap, паттерни, -це ,мабуть, стосуєтся будь якої мови строгої типизації, не тільки С#
@mykola_kanyuk
Жыл бұрын
chatGPT видав ще 5-й принцип ООП - composition
@alexandrapersukova
Жыл бұрын
от вже чатик)
@Moonrider7777
Жыл бұрын
Це генератор маячні по суті
@johnsilver3804
Жыл бұрын
А wpf, asp, blazor, angular, entity можна пропустить, і одразу роботу шукати?
@ImyaNety
7 ай бұрын
А куда он смотрит?
@titanovsky
8 ай бұрын
Большое спасибо.
@rigidbody6837
Ай бұрын
Я не использую Join в запросах SQL, так как большие запросы увеличивают время работы приложения. Я даже не помню left/right для чего. У меня в голове только аналогия с кругами эйлера на пересечение множеств. А если мне надо, то вместо dapper предпочитаю entity framework. Struct не использую вообще, только классы. Интерфейсы отдельная история. ООП штука полезная, но не все используется в коммерческой разработке, а если и используется, то только при написании гигачад апишки, чтобы по канону со всей лапшой. Грабейдж коллектор(забыл как пишется, сорры) знание позелное, но бесполезное. В c# он автоматически отрабатывает и чистит память. Единственное, что мб нужно знать, это возможность отключить коллектор в течении одной сессии, чтобы ускорить приложение, но не факт, что у вас не случится out of memory. Boxing/unboxing вообще не про изменение одного поля и впоследствие другого. Он нужен для создания ссылки на значимый тип(поправьте, если не прав). Хотя мб диктор прав и я не до конца понял message. И это не юзается зачастую, так как мы отошли от ArrayList к простому List. Да и если такое происходит, то структуру новичок даже не повторит без учебника. Я сам только один пример с Object помню. Крч видос в целом информативный, но не все из этого надо при реальном программировании. Я как бы сам джун с 1,5 опытом работы и уже что-то начал понимать. Обратите внимание при подготовке к собесамна LINQ. Он гораздо более важный, чем коллектор, так как его вас заставят писать вместо if'ов и for'ов.по Rest почитайти про методы hhtp и какой где используется. Их там немного, а используется еще меньше. Главное фишечки выучить. Их там дай бог 2. Если что придумаю, то допишу еще
@errantwanderer
Жыл бұрын
Вопрос про sql странный, аля: "Вы точно разработчик C#, если не знаете JOIN", ну как бэ, я могу быть разработчиком мобильных приложений на Unity, там используется C#, но не используется sql, wtf dude
@stark1902
Жыл бұрын
Досмотрел до 1.50. не смог удержаться чтобы не написать - бегите как от огня от тех всех кто абстракцию называет мало того что именно принципом ООП, а одним из основных принципов ООП! Особенно бегите оттуда когда интервьювер на техническом собеседовании утверждает, что основных принципов ООП 4, и четвертый это абстракция. Запомните. Как было три основных принципа ООП, так и будет всегда. И по меньше читайте индусов)
@arsen_kh_8445
Жыл бұрын
Очень интересное видео Можете, пожалуйста, сделать такое же видео, но об iOS разработке
@motivator3d
Жыл бұрын
Приятного просмотра😊
@vasa7572
Жыл бұрын
Давно подписан на этот канал. Интересно. Серёж, а не мог бы ты сделать обзор от программиста принципов тестирования. Их семь. Они описывают ошибки в разработке, но как-то не очень по-разработчески. Какие-то идеи мне ясны, какие-то рассказчики не могут толком объяснить "а чё так?" В общем, рассказывают как QA2QA, а хочется лучше понять, что происходит. С уважением, QAE
@denisbragin4264
Жыл бұрын
Сергей, респект😊
@GregoryMilkshake
Жыл бұрын
Можно на c++
@tor19v
Жыл бұрын
Интересно было бы глянуть такой же видос для анрдоида, видео получилось информативное
@yuryermolov13
6 ай бұрын
По поводу JOIN не согласен. Oracle Database пишут SQL без JOIN используют плюсики (+)
@EarthCitizen124
Жыл бұрын
Про JOIN-ы и работу с базой в C# ... знать надо 100% Но Вы, Сергей, в Java вообще ORM используете?)) Некоторые фигачат простые CRUD сервисы даже не зная как Entity Framework запрос транслирует и во что)) И прекрасно живут... и получают свои ЗПшки на галлерах))
@ПыыфПыыфов
Жыл бұрын
На каком языке можно писать и сайты и моб приложения и дескотные приложения?
@ДаниилТемный-ю4ь
Жыл бұрын
Как раз таки c# себя и позиционирует, насколько я знаю, как язык-универсал. Хоть игры в unity на нём пишутся
@yari_la
5 ай бұрын
А чё делать, если меня даже до собеса не берут, постоянно тестовые задания какие-то
@pavlu4o695
Жыл бұрын
Щас бы курс купить, от такого крутого мужика. «Мы не сотрудничаем с резидентами РФ и РБ» серьезно??? Я думал вы выше такого.
@Xtemple135
Жыл бұрын
Ахаха, а чего ты ожидал от подобных личностей, как программист он крут, но политика это точно не его)
@arekusei9580
Жыл бұрын
Мой тебе совет - не стоит обманываться умными словами, которые раскидывает этот мужчина. Любому программисту сразу понятно, что он про реальную разработку и реальный код ничего полезного для джунов не говорит, только какие-то общие абстракции. Собственно поэтому чему-то полезному научить людей он не способен, у него деятельность информатора, а не учителя.
@sansskelet860
Жыл бұрын
Им просто лень е*аться с системой платежей, для обхода санкций РФ и РБ, поэтому проще написать так.
@ОлександрІжболдін
Жыл бұрын
@@Xtemple135 даун? Он из України, хули он должен связь поддерживать, с жителями страны которая на него напала?
@torrvic1156
Ай бұрын
Выше чего? Раша вторглась в его страну и убивает людей. С чего бы он должен бы хотеть обучать студентов оттуда? Да и деньги из рф никак не перевести кроме как криптой, с которой нормальные люди дел иметь не желают.
@austinpowers8850
Жыл бұрын
А можно такое же для Python?... Очень просим ) (я и жена )))))
@rexdraconis1703
Жыл бұрын
Как то легко... Я что зря асп нет и ангуляр учил, со всякими библиотеками по типу SignalR... Короче надо будет реально работу начать искать, обнадеживающие видео.
@yabarm
Жыл бұрын
Давай по питону такое же видео))
@NickOlifirovych
Жыл бұрын
Привет, спасибо за видео. Сделайте пожалуйста так-же по Python
@Zaenaks
Жыл бұрын
Давайте відео "Що потрібно знати Python Junior"!
@notdeadyet6512
Жыл бұрын
Действительно если знать это все можно искать работу? Мне кажется этого мало
@fficktiff
Жыл бұрын
Куда-то стримы пропали(
@deprussian
Жыл бұрын
Теперь давайте о Golang'е
@qrthack
9 ай бұрын
Привет, у меня такой вопрос, коммерческого опыта нет, знаю C, Python, люблю Computer Science. Хочу в backend, выбираю между Java, C#, Golang что посоветуешь, и почему? интересно твое мнение.
@nomugop8017
Жыл бұрын
а чистой архитектуры к них нет ? или solid для всех един ?
@tututu6425
8 ай бұрын
А как же умение пользоваться GitHub
@siberiancoder9327
Жыл бұрын
С ооп скользкая тема. Можно ударится в софистику вспомнить про посылку сообщений и подвести к тому, что все популярные языки (C++ java) не ооп, так как они вызывают методы и используют переменные другого класса напрямую.
@viktorpravdin1596
Жыл бұрын
А чего не на мове? Не осилил?
@dandanil-x8w
Жыл бұрын
Что по python ?
@dolbolesya
Жыл бұрын
1. Принципы ООП Наследование - у нас есть базовый класс (например юзер) и от него наследуются ещё два класс,, например админ и модератор. Они имеют такие же свойства как юзер, но в отличии от него, могут иметь свои поля/методы Инкапсуляция - инструмент защиты класса от маслят Полиморфизм - создание одноименных методов см разным функционалом Абстракция - почти тот же класс, но уже не с полным функционалом. 2. Object 3. Нет 4. Rest
@dolbolesya
Жыл бұрын
Rest - это взаимодействие с апи через юзер интерфейс
@dolbolesya
Жыл бұрын
5. Понимаю для чего нужен эксепшен, но нормально объяснить не могу. Видимо плохо это понимаю😅
@dolbolesya
Жыл бұрын
Сборщик имеет 3 поколения, у третьего есть ещё loh и poh Используется он сам и удаляет из памяти то, уже не будет использоваться. Запускается он раз в тик или когда уже нет памяти
@dolbolesya
Жыл бұрын
7. Тут лёгко, даже перечисливать не буду
@maxhumenn
Жыл бұрын
А python было🤔
@ei2292
Жыл бұрын
Посоветуйте книгу по sql для чайника под c#
@GonzaVladimir
7 ай бұрын
блин, меня по фронтовым вопросам как джуна помню так е..ли на собесах. ts js react вопросов по 15-20 плюс задача и практика. на бэке чё реально такие вопросики?
@РоманПисаревский-т6э
Жыл бұрын
А по Scala сделайте)
@garkin4339
Жыл бұрын
Дякую. А чому нема посила на відео "Що треба знати Java розробнику-початківцю"? Про всяк випадок - ось воно kzitem.info/news/bejne/w4Kw24h_gIqHf5w .
@alexandrapersukova
Жыл бұрын
додала в опис)
@КириллТарасенко-ь4ъ
Жыл бұрын
Сергей, давайте про пхп
@yehortverytinov5478
Жыл бұрын
Ждем по Golang
@newm_2002
Жыл бұрын
Давай про Go junior
@igorab1
4 ай бұрын
как по мне, лишнего снобизма много: "точно ли человек разработчик, елси он не пишет joinы в sql запросах". вообще в C# технология Linq родная для языка, с двумя типами синтаксиса, т.е. человек может просто не помнить синтаксис стандартного SQL.. Хотя Linq может уже уровень мидла или сеньора? .. да и в целом вопросы по алгоритмам должны быть и они важнее для понимания - джун, понимающий работу алгоритмов на графах в 10^6 раз ценнее знающего синтаксис SQL
@vova9962
Жыл бұрын
Давайте таке ж про react, php, node...
@SugarDaddy-k7t
Жыл бұрын
А какие обязательные требования знания фреймворка, чтобы искать работу?
@федов-ф4х
Жыл бұрын
учи angular
@WorldAwesomeShorts
Жыл бұрын
@@федов-ф4х фронт и js не интересны
@РоманГолдун-й3и
Жыл бұрын
Вопрос немного не по теме, но думаю здесь есть люди, которые разбираются: почему в игровых движках в основном используют С++, а на Юнити С#? Это из-за открытого исходного кода или есть ещё какие-то причины?
@riyazvagapov1449
Жыл бұрын
По-моему юнити это часть дотнет, поэтому само собой на ней МС сделала упор на Шарп. Имхо
@RodshotOfficial
Жыл бұрын
C++ быстрее C#
@Moonrider7777
Жыл бұрын
Потому что у производителей движков есть свобода выбора) Если бы я был разработчиком игр, я бы вообще выбрал CryEngine. Там скрипты на Lua и искусственный интеллект , а не только С++, P.S. Последняя версия CryEngine V поддерживает скрипты на С# )
@exactly4234
10 ай бұрын
В C++ можно напрямую глубже работать с памятью, а также делать вставки из С и Ассемблера, шарп рядом не стоял по возможностям и требованиям к знаниям.
@fromua2918
Жыл бұрын
От би ще точно таке відео, тільки про Junior Python розробника 😇
@Dima-fr8cw
Жыл бұрын
Можно такое же видео но о Rust?)
@файнаФокс
2 ай бұрын
Зачем мне изучать программирование или нанимать специалиста? Если можно в том же чате GPT описать задачу программы и он выдаст исходный готовый код.
@drshadowich
13 күн бұрын
Откуда ты знаешь, что там твой гпт написал? А если ошибка? А если такой технологии нету? Да и гпт что-то сложное написать не сможет.
@yataghan21
Жыл бұрын
Супер! Дякую за С# )) Слава Україні!
@Zaenaks
Жыл бұрын
Героям Слава!
@санитарпсихбольницы
Жыл бұрын
я думал что требования для junior разработчика будет куда больше и сложнее
@pintokawai2278
Жыл бұрын
Зависит от вакансии скорее .
@ktotakoi6037
Жыл бұрын
До диез не поддерживает множественное наследование - кричат с каждого утюга. А как же интерфейсы?
@vatican8153
Жыл бұрын
А можно под Rust?))
@doshik6591
Жыл бұрын
Не скромный вопрос : а что случилось с глазом?
@SergeyNemchinskiy
Жыл бұрын
возрастное, косоглазие
@sergei1412
Жыл бұрын
Ребята, может кто-то посоветовать с чего лучше начать основы безопасности??
@user-skrivosein
Жыл бұрын
Null reference называется. Но можно и null pointer
@azalothe3150
Жыл бұрын
Я, думал это что-то типо урока, что идти учить, а тут, пускай и схожий посыл, но иной:/
Пікірлер: 303