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

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

Все IT вакансии - @frontview_all_vacancies
Download Telegram
▶️Указатель в C++ — это переменная, которая хранит адрес другой переменной в памяти. Он позволяет напрямую работать с памятью, что полезно для динамического выделения памяти, передачи больших данных в функции и работы с массивами.


int x = 10;
int* ptr = &x; // ptr хранит адрес переменной x


Указатели могут быть использованы для доступа к значению по адресу с помощью оператора разыменования *. Например, *ptr вернёт значение переменной x.

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

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


CREATE TABLE Users (
id INT PRIMARY KEY,
username VARCHAR(50) NOT NULL
);


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

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

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Boxing — это процесс преобразования значимого типа (value type) в ссылочный тип (object), что позволяет хранить его в куче. Unboxing — обратный процесс, при котором значение из ссылочного типа извлекается обратно в значимый тип.


int x = 42;
object obj = x; // Boxing
int y = (int)obj; // Unboxing


Boxing требует выделения памяти в куче, что может повлиять на производительность. Unboxing требует явного приведения типов и может вызвать исключение, если типы не совпадают.

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

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Логические операторы and, or и not работают с булевыми значениями, но поддерживают short-circuit evaluation (ленивое вычисление).

result = x and y  # Возвращает x, если оно ложно, иначе y  
result = x or y # Возвращает x, если оно истинно, иначе y
result = not x # Инвертирует булево значение


Операторы and/or возвращают последнее вычисленное значение, а не обязательно True/False.

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

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Делегирует создание объектов подклассам, позволяя изменять тип создаваемых экземпляров без модификации основного кода.


abstract class Creator {
abstract Product factoryMethod();
}

class ConcreteCreator extends Creator {
Product factoryMethod() {
return new ConcreteProduct();
}
}


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

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

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