Backend собеседования
464 subscribers
104 photos
104 links
Подготовка к собеседованиям на позицию Backend-разработчик

Еще больше разобранных вопросов для подготовки на сайте https://frontview-it.ru

Все IT вакансии - @frontview_all_vacancies
Download Telegram
Оператор using в C# используется для управления ресурсами, которые требуют освобождения после использования, например, файловые потоки или соединения с базой данных. Он гарантирует, что метод Dispose() будет вызван автоматически, когда объект больше не нужен, даже если произойдет исключение. Это помогает избежать утечек памяти и других проблем, связанных с ресурсами.

Синтаксис using позволяет сократить код и улучшить его читаемость, обеспечивая безопасное использование ресурсов в блоке кода.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍62
Объектно-ориентированное программирование (ООП) — это парадигма программирования, основанная на концепции "объектов", которые могут содержать данные и код для обработки этих данных. Основные принципы ООП включают:

1️⃣ Инкапсуляция: скрытие внутренней реализации объекта и предоставление доступа к данным только через методы.

2️⃣ Наследование: создание новых классов на основе существующих, что позволяет повторно использовать код.

3️⃣ Полиморфизм: способность объектов разных классов обрабатывать вызовы методов с одинаковым именем.

4️⃣ Абстракция: выделение общих характеристик объектов и создание абстрактных классов, которые определяют интерфейсы для их реализации.

ООП способствует модульности и повторному использованию кода.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍82
🛑JVM (Java Virtual Machine) — это виртуальная машина, которая исполняет Java байт-код. Она обеспечивает платформонезависимость, позволяя Java-программам выполняться на любом устройстве с установленной JVM.

🛑JRE (Java Runtime Environment) включает JVM и библиотеки, необходимые для выполнения Java-программ. Это среда выполнения, но не включает инструменты для разработки.

🛑JDK (Java Development Kit) — это набор инструментов для разработки Java-приложений, включающий JRE, компилятор javac и другие утилиты.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤‍🔥2
JOIN-операторы используются для объединения строк из двух или более таблиц на основе связанного столбца между ними. Основные типы JOIN-операторов:

⏯️ INNER JOIN: Возвращает только те строки, которые имеют совпадения в обеих таблицах. Это наиболее часто используемый тип JOIN.

2️⃣ LEFT JOIN: Возвращает все строки из левой таблицы и совпадающие строки из правой. Если совпадений нет, возвращаются NULL для правой таблицы.

3️⃣ RIGHT JOIN: Аналогично LEFT JOIN, но возвращает все строки из правой таблицы и совпадающие строки из левой.

4️⃣ FULL JOIN : Возвращает строки, когда есть совпадения в одной из таблиц. Если совпадений нет, возвращаются NULL для отсутствующих данных.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍81
Новая ветка позволяет изолировать изменения и работать над новыми фичами или фиксами без влияния на основную кодовую базу. Новая ветка с помощью команды:

git branch имя_ветки


🔘Затем переключение на новую ветку выполняется командой:

git checkout имя_ветки


🔘Начиная с версии Git 2.23, можно использовать команду git switch:

git switch -c имя_ветки


Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍82
🔴 Наиболее распространенный способ — использовать оператор +. Например: result = "Hello, " + "world!" создаст строку "Hello, world!".

🔴 Метод join() позволяет объединять элементы списка в одну строку. Например: result = ", ".join(["apple", "banana", "cherry"]) создаст строку "apple, banana, cherry".

🔴 Форматирование строк с помощью f-строк также возможно: name = "Alice"; result = f"Hello, {name}!" создаст строку "Hello, Alice!".

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥1
var используется для явного объявления переменной с указанием типа. Это позволяет задать начальное значение или оставить его по умолчанию. Например:

var x int = 10


:= — это короткая форма объявления и инициализации переменной без явного указания типа. Тип выводится автоматически на основе присваиваемого значения. Этот способ можно использовать только внутри функций. Пример:

x := 10


Основное отличие в том, что var можно использовать в любом месте, а := — только внутри функций.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8💯1
🔥 Паттерн Singleton гарантирует, что у класса есть только один экземпляр, и предоставляет глобальную точку доступа к нему. Это полезно, когда требуется контролировать доступ к какому-либо ресурсу, например, к базе данных или файлу конфигурации.

Реализация Singleton включает в себя закрытый конструктор, статический метод для получения экземпляра и статическое поле для хранения этого экземпляра. Это предотвращает создание новых экземпляров извне и обеспечивает доступ к единственному экземпляру через статический метод.


Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥2
Подзапрос в SQL — это запрос, вложенный внутри другого запроса. Он используется для выполнения операций, которые требуют промежуточных результатов. Подзапросы могут находиться в различных частях основного запроса, таких как SELECT, FROM, WHERE, или HAVING.

Пример использования подзапроса в секции WHERE:

SELECT name 
FROM employees
WHERE department_id = (
SELECT id
FROM departments
WHERE name = 'Sales'
);


Подзапрос возвращает идентификатор отдела, который затем используется для фильтрации сотрудников. Подзапросы могут быть скалярными, возвращающими одно значение, или табличными, возвращающими набор строк.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍81
➡️ C++ и C — это два языка программирования, которые имеют общие корни, но различаются по функциональности и применению.

➡️ C++ является расширением C и поддерживает объектно-ориентированное программирование (ООП), что позволяет создавать классы и объекты. Это упрощает разработку сложных программ и улучшает их поддержку.

➡️ C++ поддерживает перегрузку функций и операторов, что позволяет создавать более гибкие и читаемые интерфейсы.

➡️ C++ имеет стандартную библиотеку, которая включает контейнеры, алгоритмы и функции для работы с потоками ввода-вывода, что упрощает разработку.

➡️ C++ поддерживает шаблоны, позволяющие создавать обобщённые функции и классы, что повышает гибкость и повторное использование кода.

➡️ C++ включает обработку исключений, что позволяет более эффективно управлять ошибками в программе.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥3
Область видимости переменной в Python определяет, где в коде переменная может быть доступна. Существует четыре типа областей видимости:

1️⃣ Локальная: Переменные, объявленные внутри функции, доступны только в этой функции.

2️⃣ Глобальная: Переменные, объявленные на уровне модуля, доступны во всём модуле.

3️⃣ Встроенная: Переменные, определённые во встроенных модулях Python.

4️⃣ Область видимости замыканий: Переменные, объявленные в объемлющей функции, доступны во вложенных функциях.

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍62
🔴Создание коммита в Git включает несколько шагов. Сначала необходимо добавить изменения в индекс с помощью команды git add <файл> или git add . для добавления всех изменений.

🔴После этого создается коммит с описанием изменений с помощью команды git commit -m "сообщение коммита". Сообщение коммита должно быть информативным, чтобы четко описывать внесенные изменения.

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥1
🛑Паттерны проектирования — это проверенные решения общих проблем, возникающих при разработке программного обеспечения. Они представляют собой шаблоны, которые можно использовать для решения типичных задач в проектировании архитектуры приложений.

🛑Паттерны помогают улучшить читаемость и поддержку кода, способствуют повторному использованию решений и упрощают процесс разработки. Они делятся на три основные категории: порождающие, структурные и поведенческие.

🛑Использование паттернов позволяет создавать более надежные и масштабируемые системы, избегая распространенных ошибок.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥1
📍 Цикл for в Java используется для многократного выполнения блока кода. Он состоит из трех частей: инициализация, условие и итерация.


for (int i = 0; i < 5; i++) {
System.out.println(i); // Выводит числа от 0 до 4
}


Инициализация выполняется один раз в начале. Условие проверяется перед каждой итерацией, и если оно истинно, выполняется тело цикла. После каждой итерации выполняется шаг итерации. Цикл завершает работу, когда условие становится ложным.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍81
JIT-компиляция (Just-In-Time) — это технология, используемая в средах выполнения, таких как .NET, для динамической компиляции байт-кода в машинный код непосредственно перед его выполнением, что позволяет оптимизировать производительность приложения. Она сочетает в себе преимущества интерпретации и статической компиляции, обеспечивая более быструю работу программ за счет оптимизации кода в момент его выполнения.

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥3
🪅 Для создания таблицы в SQL используется оператор CREATE TABLE. Он позволяет определить структуру таблицы, включая имена и типы данных столбцов.


-- Создание таблицы пользователей
CREATE TABLE Users (
UserID INT PRIMARY KEY, -- Идентификатор пользователя
UserName VARCHAR(50), -- Имя пользователя
Email VARCHAR(100), -- Электронная почта
CreatedAt DATE -- Дата создания
);


🪅 В этом примере создается таблица Users с четырьмя столбцами: UserID, UserName, Email и CreatedAt. Столбец UserID является первичным ключом.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍101
📌 Горутины — это легковесные потоки, которые позволяют выполнять функции параллельно, эффективно используя ресурсы системы. Они запускаются с помощью ключевого слова go и управляются планировщиком Go, что позволяет создавать тысячи горутин без значительных накладных расходов.


// Функция, которая будет выполняться в горутине
func sayHello() {
fmt.Println("Hello, World!")
}

// Запуск функции sayHello в горутине
go sayHello()


Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7💯1
Команда git checkout -b создает новую ветку от текущей и сразу переключается на нее.

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🤩2
C++ поддерживает несколько основных типов данных, которые можно использовать для хранения различных значений в программе.

1️⃣ Целочисленные типы: int, short, long, long long, unsigned int и другие. Они используются для хранения целых чисел.

2️⃣ Типы с плавающей точкой: float, double, long double. Эти типы предназначены для хранения чисел с дробной частью.

3️⃣ Символьный тип: char. Используется для хранения символов.

4️⃣ Логический тип: bool. Хранит значения true или false.

5️⃣ Тип void: Используется для указания отсутствия типа, например, в функциях, которые ничего не возвращают.

6️⃣ Типы данных, определяемые пользователем: struct, class, enum. Позволяют создавать сложные структуры данных.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍81
🛑Паттерн Singleton — это порождающий паттерн проектирования, который гарантирует, что у класса есть только один экземпляр, и предоставляет глобальную точку доступа к этому экземпляру. Это полезно, когда требуется контролировать доступ к какому-либо общему ресурсу, например, к базе данных или файлу конфигурации.

Основная идея заключается в том, чтобы скрыть конструктор класса и предоставить метод, который будет создавать новый экземпляр только при его отсутствии. При повторных вызовах метод возвращает уже созданный экземпляр. Это позволяет избежать создания нескольких объектов, что может быть критично для ресурсов, которые должны быть уникальными в системе.

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍71